Commit Graph

70 Commits

Author SHA1 Message Date
Martin Baulig
1520ee7083 Make the return value a char *' instead of a const char *'.
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 *'.
1998-12-09 11:38:49 +00:00
Martin Baulig
a637c8b406 Don't define this any longer, we now use the port the daemon is listening
1998-11-11  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/gnuserv.h (MCOOKIE_SCREEN): Don't define this
	any longer, we now use the port the daemon is listening on instead
	of a fixed screen.
1998-11-11 20:56:09 +00:00
Martin Baulig
b3262820c5 Added `GLIBTOP_PARAM_REQUIRED'.
1998-11-02  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/parameter.h: Added `GLIBTOP_PARAM_REQUIRED'.

	* lib/parameter.c (glibtop_set_parameter_l): It's no longer
	allowed to set GLIBTOP_PARAM_FEATURES.
	(glibtop_get_parameter_l): You can use `GLIBTOP_PARAM_REQUIRED'
	to read server->required and ...
	(glibtop_set_parameter_l): ... set it here.
1998-11-02 21:19:56 +00:00
Martin Baulig
b70d0570c7 More network load stuff. 1998-10-26 12:21:28 +00:00
Martin Baulig
13d9120f93 Some systems may not distinguish between input and output bytes/pkts/errs
so we add `_total' fields:

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	*/
		packets_total,		/* GLIBTOP_NETLOAD_PACKETS_TOTAL*/
		bytes_in,		/* GLIBTOP_NETLOAD_BYTES_IN	*/
		bytes_out,		/* GLIBTOP_NETLOAD_BYTES_OUT	*/
		bytes_total,		/* GLIBTOP_NETLOAD_BYTES_TOTAL	*/
		errors_in,		/* GLIBTOP_NETLOAD_ERRORS_IN	*/
		errors_out,		/* GLIBTOP_NETLOAD_ERRORS_OUT	*/
		errors_total,		/* GLIBTOP_NETLOAD_ERRORS_TOTAL	*/
		collisions;		/* GLIBTOP_NETLOAD_COLLISIONS	*/
};
1998-10-26 10:44:16 +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
afe57f9ee9 Use a 2-element-array of type `u_int64_t' for all signal masks instead of
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.
1998-10-20 20:08:49 +00:00
Martin Baulig
63e37821f3 Removed external delarations of all `glibtop_guile_*' functions that were
1998-10-11  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/*.h: Removed external delarations of all
	`glibtop_guile_*' functions that were formerly defined in
	sysdeps/guile/guile.c and sysdeps/guile/names/guile-names.c.
1998-10-11 18:14:17 +00:00
Martin Baulig
06d907146d Only include system header files if we are `_IN_LIBGTOP'.
1998-10-03  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/global.h: Only include system header files
	if we are `_IN_LIBGTOP'.
	(G_GNUC_NORETURN, G_GNUC_CONST, G_GNUC_UNUSED): Added those
	definitions if we are `_IN_LIBGTOP'.
1998-10-03 03:00:13 +00:00
Martin Baulig
7cadf4450c New file. This is used in guname to fetch as many information about the
1998-09-12  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/sysinfo.h: New file. This is used in guname to
	fetch as many information about the system as possible like detailed
	information about hardware etc.
1998-09-12 17:55:52 +00:00
Martin Baulig
0d3113e6b9 Added xcpu_utime' and xcpu_stime'.
1998-09-09  Martin Baulig <baulig@Stud.Informatik.uni-trier.de>

	* include/glibtop/proctime.h (glibtop_proc_time): Added `xcpu_utime' and
	`xcpu_stime'.
1998-09-09 16:51:12 +00:00
Martin Baulig
a331fb8e03 Added `ncpu'. This is zero for single processor systems and the number of
1998-09-09  Martin Baulig <baulig@Stud.Informatik.uni-trier.de>

	* glibtop.h (glibtop): Added `ncpu'. This is zero for single processor
	systems and the number of CPUs otherwise.

	* include/glibtop/cpu.h (glibtop_cpu): Added `xcpu_total', `xcpu_user',
	`xcpu_nice', `xcpu_sys' and `xcpu_idle'.
	(GLIBTOP_NCPU): #define this to 4.
1998-09-09 15:19:24 +00:00
Martin Baulig
0ea8e591f4 Third argument is now `const void *'.
1998-08-25  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/command.h (glibtop_call): Third argument is
	now `const void *'.

	* include/glibtop/xmalloc.h (glibtop_free): Now taking a
	`const void *'.
1998-08-25 08:41:02 +00:00
Martin Baulig
db3d7adbaa New file.
1998-08-25  Martin Baulig  <martin@home-of-linux.org>

	* src/daemon/ChangeLog: New file.

	* sysdeps/sun4/ChangeLog: New file.

	* sysdeps/stub/ChangeLog: New file.

	* configure.in: Added check for `-lsocket'.
	(LIBGTOP_INCS): Added $(SUPPORTINCS).
	(INCLUDES): Added $(SUPPORTINCS).
	(LIBGTOP_EXTRA_LIBS): Added $(LIBSUPPORT).

	* acconfig.h: Added `NEED_DECLARATION_GETHOSTNAME',
	`NEED_DECLARATION_SETREUID', `NEED_DECLARATION_SETREGID'
	and `NEED_DECLARATION_GETPAGESIZE'.

	* includue/glibtop/global.h (<gnomesupport.h>): Include this.

	* lib/init.c (_init_server): Declared `static'.

	* lib/read_data.c: Added cast to `const void *' in calls to
	`recv' and `read' to avoid compiler warnings.
1998-08-25 08:39:14 +00:00
Martin Baulig
97902ce2dd Set version number to 0.25.0. There is now really a feature freeze until
1998-08-18  Martin Baulig  <martin@home-of-linux.org>

	* LIBGTOP-VERSION: Set version number to 0.25.0. There is now really
	a feature freeze until it's released, bug fixes only ...

	* include/glibtop/procmap (glibtop_map_entry): Added `flags' and
	`filename' fields.
1998-08-18 13:42:16 +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
561becc92e `make distcheck' cleanups - Hey, it really works, guys ! 1998-08-16 20:14:27 +00:00
Martin Baulig
b40e08fb74 Added new fields nr_running', nr_tasks', `last_pid'. Added new fields
1998-08-16  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/loadavg.h (glibtop_loadavg): Added new
	fields `nr_running', `nr_tasks', `last_pid'.
	* features.def (loadavg): Added new fields `nr_running',
	`nr_tasks', `last_pid'.
1998-08-16 13:40:01 +00:00
Martin Baulig
486cc220c4 *** empty log message *** 1998-08-14 16:41:56 +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
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
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
59f5f092fb Fixed typo. 1998-08-10 00:57:31 +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
c0641998cf Minor server/daemon cleanups; reading sysdeps from server now working. 1998-08-08 20:04:43 +00:00
Martin Baulig
2d1d157fc4 *** empty log message *** 1998-08-08 16:34: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
3b4e0378f9 Removed `output.h'. 1998-08-07 12:42:08 +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
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
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
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
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
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
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
9532dadc2e No longer use `glibtop_machine.h' for Linux.
1998-07-03  Martin baulig  <martin@home-of-linux.org>

	* macros/gnome-libgtop-sysdeps.m4: No longer use
	`glibtop_machine.h' for Linux.

	* sysdeps/linux/glibtop_machine.h: Removed.

	* sysdeps/guile/guile.awk: Using `scm_append'
	instead of `gh_append'.

	* sysdeps/guile/names/guile-names.awk: dito.

	* sysdeps/linux/*.c: Using code from stable branch again.

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

	* lib/parameter.c: New file.

	* lib/{open, init}.c: Done some more work on server
	initialization
1998-07-03 17:19:25 +00:00
Martin Baulig
a76522a990 Added perl interface.
1998-06-21  Martin Baulig  <martin@home-of-linux.org>

	* perl/*: Added perl interface.

	* sysdeps/linux/cpu.c: Bug fix.

	* include/glibtop/global.h: Only including guile header files
	within libgtop.

	* configure.in (LIGBTOP_LIBS): Added `-lgtop'.

	* Makefile.am: Creating `perl/Makefile.PL' from `perl/Makefile.PL.in'
	and `perl/Libgtop.xs' using `perl/perl.awk'.
1998-06-21 22:24:18 +00:00
Martin Baulig
71187a5e51 Some more daemon stuff. 1998-06-18 19:06:55 +00:00
Martin Baulig
81c75477f4 New function.
1998-06-18  Martin Baulig  <baulig@taurus.uni-trier.de>

	* lib/xmalloc.c (glibtop_strdup_r): New function.
1998-06-18 13:06:40 +00:00
Martin Baulig
2de9ea5c7d Changed client <-> server interface to make less system calls.
1998-06-18  Martin Baulig  <baulig@taurus.uni-trier.de>

	* lib/{command, write, read}.c: Changed client <-> server
	interface to make less system calls.

	* src/daemon/main.c: Changed server side of interface.

	* include/glibtop/command.h (struct _glibtop_response): New
	structure to return data from the server to the client.
1998-06-18 10:22:39 +00:00
Martin Baulig
28dfff5752 New file. Imported from xemacs 20.3.
1998-06-14  Martin Baulig  <martin@home-of-linux.org>

	* include/glibtop/gnuserv.h: New file. Imported from xemacs 20.3.

	* sysdeps/common/gnuslib.c: New file. Imported from xemacs 20.3

	* lib/gnuclient.c: New file. Imported from xemacs 20.3

	* sysdeps/daemon/gnuserv.c: New file. Imported from xemacs 20.3

	* sysdeps/daemon: New directory.

	* configure.in (LIBGTOP_LIBS, LIBGTOP_GUILE_LIBS): Added
	`$X_LIBS -lXau' when we have xauth.
1998-06-14 19:04:44 +00:00