Commit Graph

126 Commits

Author SHA1 Message Date
Martin Baulig
d59234afc2 Fix a compiler warning. 1998-11-11 20:53:38 +00:00
Martin Baulig
f24a4d9d22 Set `server->features' directly rather than calling
1998-11-11  Martin Baulig  <martin@home-of-linux.org>

	* gnuserv.c (main): Set `server->features' directly rather than
	calling glibtop_set_parameter_l () since this function no longer
	allows to modify the features.

	* gnuserv.c, main.c: Use LIBGTOP_ENABLE_DEBUG rather than DEBUG.
1998-11-11 19:59:38 +00:00
Martin Baulig
4371bc81c9 `sysdeps.flags' should be a mask telling which fields are valid,
so we set it to `(sysdeps.features | (1 << GLIBTOP_SYSDEPS_FEATURES))'.
1998-11-02 21:09:11 +00:00
Marc Ewing
44ca3f22f3 Added $(GLIB_LIBS) to libs. Not sure how it ever built without it.
1998-11-01  Marc Ewing  <marc@tasmanian.redhat.com>

        * Makefile.am: Added $(GLIB_LIBS) to libs.  Not sure
        how it ever built without it.
1998-11-02 03:20:14 +00:00
Martin Baulig
1289b92d06 Added new features to get network load:
typedef struct _glibtop_netload	glibtop_netload;

struct _glibtop_netload
{
	u_int64_t	flags,
		mtu,			/* GLIBTOP_NETLOAD_MTU		*/
		address,		/* GLIBTOP_NETLOAD_ADDRESS	*/
		packets_in,		/* GLIBTOP_NETLOAD_PACKETS_IN	*/
		packets_out,		/* GLIBTOP_NETLOAD_PACKETS_OUT	*/
		bytes_in,		/* GLIBTOP_NETLOAD_BYTES_IN	*/
		bytes_out,		/* GLIBTOP_NETLOAD_BYTES_OUT	*/
		errors_in,		/* GLIBTOP_NETLOAD_ERRORS_IN	*/
		errors_out,		/* GLIBTOP_NETLOAD_ERRORS_OUT	*/
		collisions;		/* GLIBTOP_NETLOAD_COLLISIONS	*/
};

Returns network load of the given interface, it is specified as string
like `isppp' or `ippp0':

extern void glibtop_get_netload_l __P((glibtop *, glibtop_netload *, const char *));
1998-10-26 10:39:14 +00:00
Martin Baulig
bdc4e08454 Added new feature (proc_args) to get command line arguments:
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));
1998-10-26 09:53:08 +00:00
Martin Baulig
9114af9fdf Added new feature to get PPP/ISDN support:
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-25 17:07:16 +00:00
Martin Baulig
38b00dfae0 Added a notice that this file *requires* libtool 1.2. It may work with 1.1
1998-10-20  Martin Baulig  <martin@home-of-linux.org>

	* Makefile.am: Added a notice that this file *requires*
 	libtool 1.2. It may work with 1.1 as well, but that's untested.
1998-10-20 19:16:10 +00:00
Martin Baulig
92a4453165 Added `@libs_xauth@'.
* Makefile.am (libgtop_daemon_LDADD): Added `@libs_xauth@'.
1998-10-12 10:03:32 +00:00
Martin Baulig
27a961b25d Always run libgtop_postinstall', it's :' if there's nothing to do since
1998-10-11  Martin Baulig  <martin@home-of-linux.org>

	* Makefile.am (install-exec-hook): Always run `libgtop_postinstall',
	it's `:' if there's nothing to do since the empty string is no
	valid shell syntax here.
1998-10-11 19:50:33 +00:00
Martin Baulig
754a69a79a Removed @libs_xauth@ and -lgdbm from the _LDADD variables since libtool
1998-10-11  Martin Baulig  <martin@home-of-linux.org>

	* src/inodedb/Makefile.am: Removed @libs_xauth@ and -lgdbm
	from the _LDADD variables since libtool automatically gets
	the dependencies.
	* src/daemon/Makefile.am: Likewise.
	* examples/Makefile.am: Likewise.
1998-10-10 23:18:40 +00:00
Martin Baulig
2af3fb1c03 Reverted last change from Federico here. 1998-10-10 18:17:48 +00:00
Federico Mena Quintero
8014f2590b Add $(GLIB_LIBS) so that it will link.
1998-10-08  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* Makefile.am (libgtop_daemon_LDADD): Add $(GLIB_LIBS) so that it
	will link.

1998-10-01  Martin Baulig  <martin@home-of-linux.org>
1998-10-08 20:03:16 +00:00
Martin Baulig
cf0e724f7d Removed G_GNUC_UNUSED. 1998-10-06 09:04:27 +00:00
Martin Baulig
afb07a1f8b More G_GNUC_UNUSED fun. 1998-10-04 13:27:51 +00:00
Martin Baulig
dfda639756 G_GNUC_UNUSED fun and other compiler warnings ... 1998-10-03 03:19:09 +00:00
Martin Baulig
be63bf2d42 Enclosed some debugging statements in `#ifdef DEBUG'. 1998-10-03 03:01:22 +00:00
Martin Baulig
0289863af0 Don't link it static. 1998-10-02 22:39:29 +00:00
Martin Baulig
23cdbd5336 Use `libgtop_postinstall' here to make the server suid root or sgid kmem
1998-10-01  Martin Baulig  <martin@home-of-linux.org>

	* Makefile.am (install-exec-hook): Use `libgtop_postinstall'
	here to make the server suid root or sgid kmem if required.
1998-10-01 08:58:55 +00:00
Martin Baulig
b85a419f28 No longer link libgtop_daemon' and libgtop_server' statically. 1998-09-10 12:54:10 +00:00
Martin Baulig
f66f7fde8c Added prototype. Added cast to const void *' in calls to write' and
1998-08-25  Martin Baulig  <martin@home-of-linux.org>

	* daemon.h (handle_parent_connection): Added prototype.
	* write.c, io.c: Added cast to `const void *' in calls to
	`write' and `send' to avoid compiler warnings.
	* gnuserv.c (handle_signal): Declared static.
	(main): Casting return value of `getuid' to `int' in
	debugging statement.

	* ChangeLog: New file.
1998-08-25 08:20:04 +00:00
Martin Baulig
7902405bd8 Renamed README' -> README.inodedb' and added to EXTRA_DIST. 1998-08-19 08:45:06 +00:00
Martin Baulig
7ad67781ef Added offset' and perm' fields.
1998-08-17  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/procmap (glibtop_map_entry): Added `offset' and
	`perm' fields.

	* src/inodedb: New directory.
	* src/inodedb/README: New file - read it to know what this is about.

	* configure.in (--with-libgtop-inodedb): New `configure' parameter.
	* include/glibtop/inodedb.h: New file.
	* sysdeps/common/inodedb.c: New file.
1998-08-17 21:11:46 +00:00
Martin Baulig
1dd5bf2568 Removed localhost from list of permitted host and added
`server_config.h' again - we need to have this file to make
a distribution.
1998-08-16 19:41:32 +00:00
Martin Baulig
e7b174f995 I think I removed this directory long time ago ... 1998-08-12 23:05:08 +00:00
Martin Baulig
2356852a8c Fixed typo. 1998-08-11 19:56:42 +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
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
b4038c9828 *** empty log message *** 1998-08-09 17:06:25 +00:00
Martin Baulig
c0641998cf Minor server/daemon cleanups; reading sysdeps from server now working. 1998-08-08 20:04:43 +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
bfcc8c3944 Enabled slave-server again. 1998-08-06 22:55:02 +00:00
Martin Baulig
bf19661382 Added 2 seconds delay to give child time to start up. 1998-08-06 22:54:46 +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
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
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
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
a584809b1c Really removing this stuff. 1998-07-22 17:15:22 +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
0e086aef25 Added `GLIBTOP_METHOD_PIPE' again.
1998-07-18  Martin Baulig  <martin@home-of-linux.org>

	* lib/{init, open}.c: Added `GLIBTOP_METHOD_PIPE' again.

	* src/server/main.c: Removed gettext stuff.
1998-07-18 16:09:42 +00:00
Martin Baulig
f8bdfa9a43 Fixed wrong type which caused a core dump. 1998-07-14 20:24:55 +00:00
Martin Baulig
61f887fc67 Added some comments.
1998-07-14  Martin Baulig  <baulig@Stud.Informatik.uni-trier.de>

	* src/daemon/server_config.h.in: Added some comments.

	* src/daemon/server_config.pl: New file. This is a script you can use
	to create `server_config.h'. It will query you for some configuration
	options.
1998-07-14 20:06:37 +00:00
Martin Baulig
ef693a93bc Doing correct server initialization using `glibtop_set_parameter_l' and
1998-07-14  Martin Baulig  <martin@home-of-linux.org>

	* src/daemon/gnuserv.c: Doing correct server initialization
	using `glibtop_set_parameter_l' and `glibtop_init_r'.

	* src/daemon/main.c: Removed call to `glibtop_init_r'.

	* lib/open.c (glibtop_open_l): We now call the open function
	of the sysdeps directory (glibtop_open_r) for server method
	`GLIBTOP_METHOD_DIRECT'.

	* sysdeps/{linux, sun4, stub}/open.c: No longer `memset'
	server to zero.
1998-07-14 08:36:23 +00:00
Martin Baulig
345a657d2c New file.
1998-07-14  Martin Baulig  <martin@home-of-linux.org>

	* src/daemon/slave.c: New file.

	* src/daemon/*.c: Done some more work on the daemon.

	* sysdeps/common/gnuslib.c: Removed IPC stuff.

	* include/glibtop/gnuserv.h: Removed IPC stuff.

	* include/glibtop/command.h (glibtop_response_unit): Added
	typedef for `struct _glibtop_response_unit'.

	* lib/Makefile.am: Using `$(top_srcdir)/features.def'
	instead of `$(top_builddir)/features.def'.

	* sysdeps/guile/Makefile.am: Using `$(top_srcdir)/features.def'
	instead of `$(top_builddir)/features.def'.

	* sysdeps/guile/names/Makefile.am: Dito.

	* sysdeps/stub/*.c: changed suffix of all functions
	from '_s' to '_r'; see also ChangeLog entry from Jun 6.
1998-07-13 23:27:10 +00:00
Martin Baulig
2c8ae09776 Added `server_config.h'. 1998-07-13 15:04:40 +00:00
Martin Baulig
8ecb7f296e Removed from CVS. This is a config file which needs to be edited.
1998-07-13  Martin Baulig  <baulig@merkur.uni-trier.de>

	* src/daemon/server_config.h: Removed from CVS.
	This is a config file which needs to be edited.

	* src/daemon/server_config.h.in: Added. This is just
	an example for `server_config.h'.
1998-07-13 15:02:20 +00:00
Martin Baulig
3477d30dc5 Basically did some work on the new daemon. Things are still unstable.
1998-07-13  Martin Baulig  <martin@home-of-linux.org>

	* glibtop.h: Fixed invocation of `glibtop_close_r'.

	* sysdeps/linux/procstate.c: Added missing `fclose'.

	* include/glibtop/gnuserv.h (UNIX_DOMAIN_SOCKETS): Defining.

	* include/glibtop/open.h (GLIBTOP_METHOD_UNIX): Added.

	* lib/init.c: Added new method `GLIBTOP_METHOD_UNIX'.

	* lib/open.c: Added support for Unix Domain Sockets.

	* lib/close.c: Now closing inet and unix connections.

	* lib/parameter.c (glibtop_set_parameter_l): You can now
	set the `method' and `features' fields.

	* src/daemon/server_config.h: New file.

	* src/daemon/{gnuserv.c, main.c}: More work on the server.
1998-07-13 00:39:46 +00:00
Martin Baulig
8a666eb5a4 Fixed unbalanced '#endif'. 1998-07-12 14:29:30 +00:00
Martin Baulig
b177c3930d Changed indentation using
'indent -br -ce -sc -pcs -cs -bs -i8 -bad -bap -fca'
1998-07-12 14:22:45 +00:00