Commit Graph

312 Commits

Author SHA1 Message Date
Martin Baulig
36657db940 Major code cleanups, we now use open () and read (). 1998-08-16 13:37:14 +00:00
Martin Baulig
486cc220c4 *** empty log message *** 1998-08-14 16:41:56 +00:00
Martin Baulig
baea8b9603 Minor cleanups. 1998-08-12 23:05:36 +00:00
Martin Baulig
0f62dc7e3b Added rusage' and frequency' fields. 1998-08-12 22:38:11 +00:00
Martin Baulig
9248d72018 Using text_rss', shlib_rss', data_rss' and dirty_size' instead of
1998-08-12  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/procsegment.h (glibtop_proc_segment): Using
	`text_rss', `shlib_rss', `data_rss' and `dirty_size' instead of
	`tsr', `lrs', `drs' and `dt'. New field `stack_rss'.

	* sysdeps/linux/procmem.c: Memory sizes now correctly in bytes.
	* sysdeps/linux/procsegment.c: Dito.

	* sysdeps/kernel/procsegment.c: Stack pages are reported via
	`stack_rss' and no longer count towards `data_rss'
	* kernel/table.h (table_proc_segment): Added `srs' field.
	* kernel/table21/module.c (TBL_PROC_SEGMENT): Added kernel support
	for this.

	* sysdeps/{linux, kernel, stub}/procmap.c: New files.
1998-08-12 20:16:24 +00:00
Martin Baulig
a0cb2b913d *** empty log message *** 1998-08-12 16:41:07 +00:00
Martin Baulig
d9361d388c New file. Added definition of `proc_map'.
1998-08-10  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/procmap.h (glibtop_proc_map): New file.
	* features.def: Added definition of `proc_map'.
1998-08-10 16:57:44 +00:00
Martin Baulig
b6885555c1 Now using correct number of parameters in `gh_new_procedure'. 1998-08-10 16:55:19 +00:00
Martin Baulig
d44df22180 Getting shared memory size seems to work now. 1998-08-10 12:27:43 +00:00
Martin Baulig
2e4ec2a85c Some more work here. 1998-08-10 08:09:37 +00:00
Martin Baulig
8b8ceec1bf Added new fields rtime' and frequency'.
1998-08-10  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/proctime.h (glibtop_proc_time): Added new
	fields `rtime' and `frequency'.
1998-08-10 08:08:51 +00:00
Martin Baulig
0bb5215f84 Added implementation. 1998-08-10 00:58:00 +00:00
Martin Baulig
32c0ced22a Renamed wchan' field to nwchan'; added wchan' which is of type char
1998-08-09  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/prockernel.h (glibtop_proc_kernel): Renamed
	`wchan' field to `nwchan'; added `wchan' which is of type `char [40]'.
1998-08-09 21:11:18 +00:00
Martin Baulig
fd95ab60a4 Changed format of this file to support multiple arguments to be passed to
1998-08-09  Martin Baulig  <martin@home-of-linux.org>

	* features.def: Changed format of this file to support multiple
	arguments to be passed to a function.

	* include/glibtop/proclist.h: `glibtop_get_proclist' now takes two
	more arguments `method' and `param'.
1998-08-09 17:08:59 +00:00
Martin Baulig
e64dc16608 Some more FreeBSD stuff. 1998-08-09 17:05:11 +00:00
Martin Baulig
9cf583b2fa Done some more work on the FreeBSD port. 1998-08-08 20:04:07 +00:00
Martin Baulig
6d8c10d4ae kvm_read () returns the number of bytes read and not zero on success. 1998-08-08 16:05:21 +00:00
Martin Baulig
13cf3ae4d0 Added swap usage based upton the source code of `pinfo'.
1998-08-08  Martin Baulig  <martin@home-of-linux.org>

	* swap.c: Added swap usage based upton the source code
	of `pinfo'.
1998-08-08 16:04:02 +00:00
Martin Baulig
6893d89fd8 Merged code from Josh Sled. 1998-08-07 15:12:04 +00:00
Martin Baulig
35e900692a Merged some stuff from `stub_suid'. 1998-08-07 13:14:17 +00:00
Martin Baulig
8e8cb05168 New file.
1998-08-07  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/freebsd/ChangeLog: New file.
1998-08-07 13:10:47 +00:00
Martin Baulig
a510ed1271 Removed. New files. Added `libgtop_server'; this has been moved here from
1998-08-07  Martin Baulig  <martin@home-of-linux.org>

	* src/server: Removed.
	* src/daemon/{server, version}.c: New files.
	* src/daemon/Makefile.am: Added `libgtop_server'; this has been
	moved here from `src/server' since it shares some source code files
	with the `libgtop_daemon'.

	* LIBGTOP-VERSION: Added `LIBGTOP_SERVER_VERSION'.
	* src/daemon/gnuserv.c, lib/open.c: Improved version check between
	client and server.

	* include/glibtop/output.h: Removed.

	* sysdeps/stub_suid: New directory. This is mainly used as example
	for people porting libgtop to other systems.

	* sysdeps/common/sysdeps_suid.c: New file.
	Defines `glibtop_init_hook_p'.

	* sysdeps/osf1/*.c (glibtop_init_<no-suid-feature>_s): New functions.
	(glibtop_init_<suid-feature>_p): New functions.
1998-08-07 12:59:00 +00:00
Martin Baulig
e7c77a85e9 Now using correct features' parameter in call to glibtop_init_s'. 1998-08-07 12:38:40 +00:00
Martin Baulig
d72da1bb2f New directory. This is mainly used as example for people porting libgtop
1998-08-07  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/stub_suid: New directory. This is mainly used as example
	for people porting libgtop to other systems.
1998-08-07 12:35:20 +00:00
Martin Baulig
4b3fcf149a New fields error_method', sysdeps' and `required'. I added an improved
1998-08-07  Martin Baulig  <martin@home-of-linux.org>

	* glibtop.h (_glibtop): New fields `error_method', `sysdeps' and
	`required'. I added an improved error handling: the client can tell
	the libraries which fields are absolutely required for each features
	and if it fails to set one of them, this will create an error which
	is handled depending upon the `error_method'.

	* include/glibtop/open.h: Define some constants for `error_method'.

	* lib/sysdeps.c (glibtop_get_sysdeps_r): No longer actually call any
	sysdeps function, it now simply copies `server->sysdeps'.
	(_glibtop_init_hook_s): Added. List of functions to be called during
	`glibtop_init_s' set to `glibtop_init_<no-suid-feature>_s'.

	* include/glibtop/sysdeps.h (<glibtop/union.h>): Removed.
	(glibtop_init_func_t): New typedef.
	(_glibtop_init_hook_s): Added.

	* sysdeps/linux/*.c (glibtop_init_<feature>_s): New functions.
	(glibtop_get_proc_*): Zero is now a valid pid.

	* sysdeps/kernel/*.c (glibtop_init_<feature>_s): New functions.
	(glibtop_get_proc_*): Zero is now a valid pid.

1998-08-06  Martin Baulig  <martin@home-of-linux.org>
1998-08-07 10:01:55 +00:00
Martin Baulig
09e1353d0d Added Josh to the AUTHORS file. 1998-08-06 23:37:35 +00:00
Martin Baulig
79f5a9c667 Importing FreeBSD port of libgtop from Josh Sled. 1998-08-06 23:34:50 +00:00
Martin Baulig
864867aeeb Initial revision 1998-08-06 23:34:50 +00:00
Martin Baulig
8750ff351e Bug fixes. 1998-08-06 22:55:22 +00:00
Martin Baulig
0a7bd78704 Using GLIBTOP_GUILE' instead of HAVE_GUILE' so one should be able to use
1998-08-06  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/*.h: Using `GLIBTOP_GUILE' instead of `HAVE_GUILE'
	so one should be able to use libgtop without guile in an application
	even if guile is installed.

	* sysdeps/common/mountlist.c: Fixed some `xstrdup' problems.

	* lib/open.c: Now correctly reading server features for
	`GLIBTOP_METHOD_PIPE'.

	* sysdeps/freebsd: New directory.
1998-08-06 21:57:45 +00:00
Martin Baulig
2e454140f1 Added pagein' and pageout'.
1998-08-01  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/swap.h (glibtop_swap): Added `pagein' and `pageout'.

	* kernel/table20/table.h: Removed.
	* kernel/table21/table.h: Removed.
	* kernel/table.h: Added. Things are now binary compatible between
	both kernel versions.
1998-08-01 22:03:11 +00:00
Martin Baulig
902b6a8f16 Using u_int64_t' instead of unsigned long' and `long' to avoid problems
1998-07-30  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/*.h: Using `u_int64_t' instead of `unsigned long'
	and `long' to avoid problems when client is on a 32bit system and
	the server on a 64bit system.
1998-07-30 14:24:19 +00:00
Martin Baulig
d18a6cf2ce Removed debugging instruction. 1998-07-30 14:03:13 +00:00
Martin Baulig
8ced0f5889 Using `0xffffffff' instead of -1 as error code for inet_addr () since on
1998-07-30  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/common/gnuslib.c: Using `0xffffffff' instead of -1
	as error code for inet_addr () since on 64bit systems,
	`inet_addr (some_error) != (INET_ADDR) -1'.
1998-07-30 12:54:00 +00:00
Martin Baulig
f07551a43d New file.
1998-07-29  Martin Baulig  <martin@home-of-linux.org>

	* guile/ChangeLog: New file.

	* features.def: New format - now includes type of return value
	and parameters.

	* lib/lib.awk: Changed to use new `features.def'.
	* sysdeps/guile/guile.awk: Dito;
	* sysdeps/guile/names/guile-names.awk: Dito.

	* libgtopConf.sh.in: Added
	`LIBGTOP_NAMES_LIBS', `LIBGTOP_NAMES_INCS',
	`LIBGTOP_GUILE_NAMES_LIBS', `LIBGTOP_GUILE_NAMES_INCS',
	`LIBGTOP_MAJOR_VERSION', `LIBGTOP_MINOR_VERSION'
	`LIBGTOP_VERSION', `libgtop_sysdeps_dir'.

	* acinclude.m4 (AC_LC_SYSDEPS): Removed since this has been
	replaced with `GNOME_LIBGTOP_SYSDEPS' long ago.

	* LIBGTOP-VERSION: New file.

	* */Makefile.am (INCLUDES): Removed; now defined in `configure.in'.

	* sysdeps/names/mountlist.c: New file.

	* lib/{init, open}.c (GTOP_SERVER): Renamed to `LIBGTOP_SERVER'.

	* configure.in (INCLUDES): Added definition.
	(libgtop_want_names): Always true; `libgtop_names.la' is now
	always created since some other programs rely upon it - but
	have to use `LIBGTOP_NAMES_LIBS' and `LIBGTOP_NAMES_INCS' to
	use it in your application.
	(libgtop_want_guile_names): Always true; but you have to use
	`LIBGTOP_GUILE_NAMES_LIBS' and `LIBGTOP_GUILE_NAMES_INCS' to
	use it in your application.
	(LIBGTOP_LIBS): Removed `-lgtop_names' and `-lgtop_guile_names'.
	(LIBGTOP_NAMES_LIBS): New variable. Use it to link your
	application with the names interface.
	(LIBGTOP_NAMES_INCS): New variable. Also #defines `GLIBTOP_NAMES'
	which is now required if your application wants to use the names
	interface.
	(LIBGTOP_GUILE_NAMES_LIBS): New variable. Use it to link your
	application with the guile names interface.
	(LIBGTOP_GUILE_NAMES_INCS): New variable. Also #defines
	`GLIBTOP_NAMES' and `GLIBTOP_GUILE_NAMES' which are now required
	if your application wants to use the guile names interface.
1998-07-29 22:01:31 +00:00
Martin Baulig
aa6d16e47b Added `all_fs' parameter.
1998-07-24  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/common/mountlist.c (glibtop_get_mountlist_s):
	Added `all_fs' parameter.
1998-07-24 14:43:16 +00:00
Martin Baulig
f3f051ecba Replaced glibtop_init_r' with glibtop_init_s'.
1998-07-24  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/{kernel, linux}/*.c: Replaced `glibtop_init_r' with
	`glibtop_init_s'.

	* sysdeps/sun4/open.c (glibtop_init_p): Removed `program_name'
	parameter.

	* sysdeps/osf1/glibtop_suid.h: New file.

	* sysdeps/osf1/glibtop_server.h: Now correctly using
	`(1 << GLIBTOP_SYSDEPS_*)' instead of `GLIBTOP_SYSDEPS_*'.

	* sysdeps/osf1/open_suid.c (glibtop_init_p): New function.

	* sysdeps/osf1/proc*.c: Done some more work here.
1998-07-24 10:26:42 +00:00
Manish Vachharajani
51c5c3ac22 Remove init.c from libgtop_sysdeps_la_SOURCES 1998-07-24 07:46:10 +00:00
Martin Baulig
61c262dd7e Changed type for signal', blocked', sigignore' and sigcatch' to
1998-07-23  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/procsignal.h (glibtop_proc_signal):
	Changed type for `signal', `blocked', `sigignore' and
	`sigcatch' to `unsigned long long'.
1998-07-23 18:12:04 +00:00
Martin Baulig
954a78f200 New file.
1998-07-22  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/fsusage.h: New file.

	* features.def: Added new feature `fsusage'.

	* sysdeps/common/fsusage.c (glibtop_get_fsusage_s): New function.
	(get_fs_usage): Declared as `static'.

	* sysdeps/names/fsusage.c: New file.
1998-07-22 22:56:09 +00:00
Martin Baulig
a90bffbbf6 *** empty log message *** 1998-07-22 20:59:17 +00:00
Martin Baulig
6bf243c901 New file.
1998-07-22  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/mountlist.h: New file.

	* features.def: Added new feature `mountlist'.

	* sysdeps/common/mountlist.c (glibtop_get_mountlist_s): New function.
	(read_filesystem_list): Declared as `static'.
1998-07-22 20:52:42 +00:00
Martin Baulig
0dc0c2d7f0 Added fsusage.[ch]' and mountlist.[ch]'.
1998-07-22  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/common/Makefile.am (libgtop_common_la_SOURCES):
	Added `fsusage.[ch]' and `mountlist.[ch]'.

	* include/glibtop/signal.h: New file.

	* sysdeps/{kernel, linux, osf1, sun4, stub}/siglist.c: New files.
1998-07-22 17:21:59 +00:00
Martin Baulig
5e97af535f Summary of this long ChangeLog:
* Splitted `libgtop_sysdeps.la' into `libgtop_sysdeps.la' and
   `libgtop_sysdeps_suid.la'.

   Everything that needs to be suid/sgid is in `libgtop_sysdeps_suid.la'
   and the rest in `libgtop_sysdeps.la'.

   The functions from `libgtop_sysdeps_suid.la' have the `_p' prefix and
   the ones from `libgtop_sysdeps.la' the `_s' prefix.

   The suid library uses `glibtop_open_p' and `glibtop_close_p', the
   normal one `glibtop_init_s' (found in lib/init.c), `glibtop_open_s'
   and `glibtop_close_s'.

 * Added `libgtop_suid_common.la' containing stuff from sysdeps/common
   that is required from the suid server (currently everything from
   error.c and xmalloc.c).

   This means, we can add some more stuff to `libgtop_common.la' without
   the risk that it may be dangerous in the suid server.

 * The ``library order'' is much clearer now:

   -> `libgtop.la' (from lib/) contains user-level stuff;
      all functions except `glibtop_init_r' have the `_l'
      suffix.

   -> `libgtop_common.la' (from sysdeps/common/) contains stuff
      that is common among the sysdeps directories.
      use anything from `libgtop_sysdeps.la' and
      `libgtop_sysdeps_suid.la'.

   -> `libgtop_sysdeps.la' (from sysdeps/<sysdeps_dir>/) contains
      everything from the sysdeps directory that doesn't need to
      be suid/sgid.

   -> `libgtop_suid_common.la' (from sysdeps/common/) is used from
      the suid server instead of `libgtop_common.la'.

   -> `libgtop_sysdeps_suid.la' (from sysdeps/<sysdeps_dir>/) contains
      everything from the sysdeps directory that needs to be in the
      suid server.

 * To summarize: the server is linked only with functions that need
   to be suid and everything else is linked only with functions that
   do not need to be suid.

Martin

1998-07-22  Martin Baulig  <martin@home-of-linux.org>

	* lib/init.c (glibtop_init_s): Added this init function of
	the sysdeps directory `libgtop_sysdeps.la'.

	* lib/open.c (glibtop_open_l): Unconditionally calling
	`glibtop_init_s' after server initialization.

	* lib/lib.awk: Removed references to functions from
	`libgtop_sysdeps_suid.la' to avoid undefined symbols.

	* sysdeps/stub/open.c (glibtop_open_s): Renamed this
	function from `glibtop_open_r'.

	* sysdeps/stub/close.c (glibtop_close_s): Renamed this
	function from `glibtop_close_l'.

	* sysdeps/kernel/open.c (glibtop_open_s): Renamed this
	function from `glibtop_open_r'.

	* sysdeps/kernel/close.c (glibtop_close_s): Renamed this
	function from `glibtop_close_l'.

	* sysdeps/linux/open.c (glibtop_open_s): Renamed this
	function from `glibtop_open_r'.

	* sysdeps/linux/close.c (glibtop_close_s): Renamed this
	function from `glibtop_close_l'.

	* sysdeps/osf1/Makefile.am (lib_LTLIBRARIES): Added
	`libgtop_sysdeps_suid.la' for the suid server.

	* sysdeps/osf1/open_suid.c (glibtop_open_p): New file.
	Contains all stuff that was formerly in `open.c'.

	* sysdeps/osf1/open.c: Moved everything from here into
	the new file `open_suid.c'.

	* sysdeps/osf1/open.c (glibtop_open_s): New function.

	* sysdeps/osf1/close_suid.c (glibtop_close_p): New file.

	* sysdeps/osf1/close.c (glibtop_close_s): New function.

	* sysdeps/osf1/*.c: Using the new init, open and close
	functions.

	* sysdeps/sun4/Makefile.am (lib_LTLIBRARIES): Added
	`libgtop_sysdeps_suid.la' for the suid server.

	* sysdeps/sun4/nosuid.c (glibtop_open_s, glibtop_close_s): New file

	* sysdeps/sun4/*.c: All functions now have the `_p' suffix.

	* sysdeps/common/Makefile.am (lib_LTLIBRARIES): Added
	`libgtop_suid_common.la' which only contains stuff that is
	needed in the suid parts.

	* sysdeps/common/xmalloc.c: Using `glibtop_error_io_r' instead
	of `glibtop_error_r'.

	* sysdeps/{kernel, linux, osf1, sun4, stub}/init.c: Removed.
	`glibtop_init_s' has been moved into `lib/init.c' since it's the
	same in all the sysdeps directories.

	* src/server/main.c: It is now an error to request a feature that
	does not need the suid server.

	* src/proxy: Removed.
1998-07-22 09:26:43 +00:00
Martin Baulig
7efcda3082 New file.
1998-07-21  Martin Baulig  <martin@home-of-linux.org>

	* doc/ChangeLog: New file.

	* sysdeps/kernel/*.c: Using `glibtop_error_io_r' instead
	of `glibtop_error_r'.

	* sysdeps/kernel/proclist.c: Now using the table () function, too.
	This means that currently the table () function can fetch all
	information for libgtop and you can even unmount /proc !
1998-07-21 21:13:13 +00:00
Martin Baulig
540385da7e Using library functions with '_l' prefix instead of directly calling
1998-07-17  Martin Baulig  <baulig@Stud.Informatik.uni-trier.de>

	* sysdeps/common/sysdeps.c (glibtop_get_sysdeps_r): Using
	library functions with '_l' prefix instead of directly calling
	sysdeps code with '_r' prefix. This is necessary for client/server
	mode.
1998-07-17 17:26:22 +00:00
Martin Baulig
c41d6e5a77 Added implementation of that feature.
1998-07-17  Martin Baulig  <baulig@Stud.Informatik.uni-trier.de>

	* sysdeps/sun4/proclist.c (glibtop_get_proclist_p): Added
	implementation of that feature.

	* sysdeps/sun4/proc_{uid,state}.c: Now working quite well.

	* sysdeps/sun4/proc_{mem,time,signal,kernel,segment}.c: Added
	some basic implementation; this isn't really working yet.
1998-07-17 16:40:02 +00:00
Martin Baulig
74ca45f795 Applied patch from Albert K T Hui <avatar@deva.net> for glibc 2.1.
1998-07-17  Martin Baulig  <baulig@Stud.Informatik.uni-trier.de>

	* sysdeps/linux/sem_limits.c: Applied patch from Albert K T Hui
	<avatar@deva.net> for glibc 2.1.
1998-07-17 13:56:37 +00:00
Martin Baulig
5f4131f248 New file. Imported from top 3.4.
1998-07-15  Martin Baulig  <martin@home-of-linux.org>

	* sysdeps/sun4/loadavg.h: New file. Imported from top 3.4.

	* sysdeps/sun4/uptime.c (glibtop_get_uptime_p): Added
	implementation of that function using glibtop_get_cpu ().

	* sysdeps/sun4/loadavg.c (glibtop_get_loadavg_p): Added
	implementation of that feature.

	* sysdeps/sun4/{shm_limits.c, msg_limits.c, shm_limits.c}:
	Added implementation of this features.
1998-07-14 23:30:36 +00:00
Martin Baulig
4bfef8c254 Imported the wrong file, so removing it again. 1998-07-14 23:19:19 +00:00