1999-12-11 Martin Baulig <martin@home-of-linux.org>
This is a larger source-incompatible commit, but it'll make it
easier to write automatically generated code (for instance for
scripting languages).
Renamed all constants for the flags field to match the field names
from the features.def and structures.def where this was not already
the case.
* include/glibtop/cpu.h: s/GLIBTOP_XCPU_/GLIBTOP_CPU_XCPU_/g.
* include/glibtop/shm_limits.h: s/GLIBTOP_IPC_/GLIBTOP_SHM_LIMITS_/g.
* include/glibtop/sem_limits.h: s/GLIBTOP_IPC_/GLIBTOP_SEM_LIMITS_/g.
* include/glibtop/msg_limits.h: s/GLIBTOP_IPC_/GLIBTOP_MSG_LIMITS_/g.
1999-11-28 Martin Baulig <martin@home-of-linux.org>
* include/glibtop/netload.h (glibtop_get_netload): Added
`transport' and `protocol' argument to specify transport method
and protocol.
* include/glibtop/netinfo.h (glibtop_get_netinfo): Added
`transport' argument to specify the transport method.
1999-11-28 Martin Baulig <martin@home-of-linux.org>
Split netload into netload and netinfo.
* include/glibtop/netinfo.h: New file.
* include/glibtop/netload.h (glibtop_netload): Moved `if_flags',
`mtu', `subnet' and `address' into the new `glibtop_netinfo'.
* include/glibtop/sysdeps.h (GLIBTOP_SYSDEPS_NETINFO): Added.
(glibtop_sysdeps): Added `netinfo.
* include/glibtop/union.h (glibtop_union): Added `netinfo.
* include/glibtop/command.h (GLIBTOP_CMND_NETINFO): Added.
1999-11-28 Martin Baulig <martin@home-of-linux.org>
* procstate.c (glibtop_get_procstate_s): Stat "/proc/<pid>" instead
of "/proc/<pid>/state" to get `uid' and `gid'. Thanks to Jason Becker
for pointing out that GTop reported wrong uid's.
1999-11-21 Martin Baulig <martin@home-of-linux.org>
* interfaces.c: New file.
(glibtop_init_interface_names_s): New function.
(glibtop_get_interface_names_s): New function.
It changes the return values of all sysdeps functions which were
previosly returning void to int.
This is the first step to implement better error handling in LibGTop.
Martin
1999-10-24 Martin Baulig <martin@home-of-linux.org>
* include/glibtop/*.h (glibtop_get_*, glibtop_init*): Changed
the return value of all `glibtop_get_<feature>_* ()' and all
`glibtop_init_<feature>_* ()' functions from void to int.
* features.def: Reflect changes of the return values.
* sysdeps/*/*.c: Reflect changes of the return values.
1999-10-19 Martin Baulig <martin@home-of-linux.org>
* uptime.c (glibtop_get_uptime_s): Don't cast uptime and idletime
to float as suggested by John Kodis.
Please make sure your changes at least compile without warnings;
it should be clear that comparing an `unsigned' structure field with
a character constant is wrong.
1999-07-29 Martin Baulig <martin@home-of-linux.org>
* proctime.c (glibtop_get_proctime_s): Don't provide `rtime'
any longer since we must not use `rtime = utime + stime'.
1999-02-22 Martin Baulig <martin@home-of-linux.org>
Set the copyright of LibGTop to the GNU General Public License.
* copyright.txt: Set the year to 1998-99 and pretty-format it a
little bit. Same in all C source and header files.
1999-02-22 Martin Baulig <martin@home-of-linux.org>
* COPYING.LIB: Include a copy of the GNU Library General
Public License here.
* copyright.txt: Set the year to 1998-99 and pretty-format it a
little bit. Same in all C source and header files.
1999-02-20 Martin Baulig <martin@home-of-linux.org>
* netload.c: Don't include <linux/ip_fw.h> for libc5 systems
since it is no longer required and makes trouble on Slakware.
1999-02-19 Martin Baulig <martin@home-of-linux.org>
* Replace all __BEGIN_DELCS with LIBGTOP_BEGIN_DECLS and all
__END_DECLS with LIBGTOP_END_DECLS; remove all __P macros and
use real function prototypes.
1999-02-16 Martin Baulig <martin@home-of-linux.org>
* examples/Makefile.am, lib/Makefile.am, src/daemon/Makefile.am,
sysdeps/common/Makefile.am, sysdeps/guile/Makefile.am,
sysdeps/guile/names/Makefile.am, sysdeps/kernel/Makefile.am,
sysdeps/linux/Makefile.am, sysdeps/names/Makefile.am,
sysdeps/osf1/Makefile.am, sysdeps/stub/Makefile.am,
sysdeps/stub_suid/Makefile.am, sysdeps/sun4/Makefile.am:
Initialize INCLUDES to `@INCLUDES@' to make it clear that it is
set in configure.in. It is ok to add things there, but you must
not remove the `@INCLUDES@'.
1999-01-06 Martin Baulig <martin@home-of-linux.org>
* netload.c (glibtop_get_netload_s): Use `server->os_version_code'
instead of GLIBTOP_LINUX_VERSION_CODE.
1999-01-06 Martin Baulig <martin@home-of-linux.org>
Unconditionally enable SMP support for linux.
* open.c (_glibtop_open_s): Always determine the number of CPUs
we have here, not only when SMP support was enabled.
* cpu.c, proctime.c: Use `server->ncpu' to determine whether to
enable SMP support.
1998-12-28 Martin Baulig <martin@home-of-linux.org>
* netload.c: When using glibc, don't include <netinet/ip_fw.h>
any longer but all headers that were included there; we only
needed this file to get those headers.
1998-12-09 Martin Baulig <martin@home-of-linux.org>
* include/glibtop/procargs.h (glibtop_get_proc_args): Make the
return value a `char *' instead of a `const char *'.
installs any necessary files that are required in a GNU-standard
install, such as COPYING, INSTALL, mkinstalldirs, etc.
So begone, automake-installed files.
1998-12-03 Martin Baulig <martin@home-of-linux.org>
* netload.c: No longer include <linux/version.h>, but use
GLIBTOP_LINUX_VERSION_CODE which is set by configure instead.
Define _GLIBTOP_IP_FW_ACCTIN and _GLIBTOP_IP_FW_ACCTOUT here
and use them instead of IP_FW_F_ACCTIN and IP_FW_F_ACCTOUT.
1998-11-30 Martin Baulig <martin@home-of-linux.org>
* netload.c: Use correct header files both for libc5 and glibc.
With Linux >= 2.1.114 we no longer use IP accounting since it
already has byte counts in /proc/net/dev.
1998-11-22 Martin Baulig <baulig@merkur.uni-trier.de>
* netload.c (glibtop_get_netload_s): Added implementation
for this function.
The code here is smart enough to use /proc/net/ip_acct if
IP accounting is enabled in the kernel and activated on the
requested device and /proc/net/dev if not.
To get separate statistics for received and transmitted
packets you need to use two accounting rules:
ipfwadm -A in -a -P all -W eth0
ipfwadm -A out -a -P all -W eth0
But before you activate IP accounting, please have a look
at /proc/net/dev - if if already contains byte counters,
then don't use IP accounting.
typedef struct _glibtop_proc_args glibtop_proc_args;
struct _glibtop_proc_args
{
u_int64_t flags,
size; /* GLIBTOP_PROC_ARGS_SIZE */
};
Returns a string containing all command line arguments of the process,
the `unsigned' parameter is the maximum length of this string; if it
is zero then no limit will be set.
extern const char *glibtop_get_proc_args_l __P((glibtop *, glibtop_proc_args *, pid_t, unsigned));
enum {
GLIBTOP_PPP_STATE_UNKNOWN = 0,
GLIBTOP_PPP_STATE_HANGUP,
GLIBTOP_PPP_STATE_ONLINE
};
struct _glibtop_ppp
{
u_int64_t flags,
state, /* GLIBTOP_PPP_STATE */
bytes_in, /* GLIBTOP_PPP_BYTES_IN */
bytes_out; /* GLIBTOP_PPP_BYTES_OUT */
};
Currently only implemented in the FreeBSD port with ISDN via I4B. - Martin
1998-10-20 Martin Baulig <martin@home-of-linux.org>
* include/glibtop/proc_signal.h: Use a 2-element-array of
type `u_int64_t' for all signal masks instead of just
scalar numbers. This avoids problems on systems with more
than 64 signals.
If there is any operating system out there with even more than
128 signals, we can simply increase the number of array elements
here.
[NOTE for people porting libgtop:
Please use all 64 bits of the `u_int64_t' and not just 32 - the
signal number (as it is used in calls to kill () ...) should be
a bit-index into this field; if a process ignores for instance
signal 64, it has the 0-bit of sigcatch[1] set, if it ignores 63,
this is the 63-bit of sigcatch[0] and so on ...
The mapping between signal numbers and their names is done via the
glibtop_sys_siglist [] field which should be declared in
sysdeps/@sysdeps_dir@/siglist.c - see linux for an example.
]
* features.def: It's now safe to put things like `loadavg[3]'
here - the awk skripts should correctly threat this as an array.