Commit Graph

34 Commits

Author SHA1 Message Date
Martin Baulig
6120c5e4a8 Use (1L << feature)' instead of (1 << feature)' to avoid problems
with integer overflows when we add more fields.
1999-05-06 21:35:36 +00:00
Martin Baulig
cf611f9157 Set the copyright of LibGTop to the GNU General Public License.
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-23 11:47:35 +00:00
Martin Baulig
ce4f660965 Include a copy of the GNU Library General Public License here.
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-22 16:19:36 +00:00
Martin Baulig
1272d38f72 Replace all __BEGIN_DELCS with LIBGTOP_BEGIN_DECLS and all __END_DECLS
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-19 09:54:18 +00:00
Martin Baulig
1ea58b48ff Initialize INCLUDES to `@INCLUDES@' to make it clear that it is set in
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-02-16 15:13:26 +00:00
Jeff Garzik
cd7cd23403 Removed hardcoded gcc arguments. Converted remaining CFLAGS settings to
1999-02-15  Jeff Garzik  <jgarzik@pobox.com>

        * 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:
        Removed hardcoded gcc arguments.
        Converted remaining CFLAGS settings to use correct INCLUDES.

        * include/glibtop/error.h:
        Added FIXME comment about varargs macros breaking Sun cc
        compilation.
1999-02-15 21:23:07 +00:00
Martin Baulig
17962b4548 Minor `make distcheck' fixes. 1999-01-03 19:17:39 +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
af50e25023 Added. AC_SUBST. (LT_RELEASE, LT_CURRENT, LT_REVISION, LT_AGE): AC_SUBST.
1998-08-29  Martin Baulig  <martin@home-of-linux.org>

	* LIBGTOP-VERSION (LIBGTOP_INTERFACE_AGE, LIBGTOP_BINARY_AGE): Added.
	* configure.in (LIBGTOP_INTERFACE_AGE, LIBGTOP_BINARY_AGE): AC_SUBST.
	(LT_RELEASE, LT_CURRENT, LT_REVISION, LT_AGE): AC_SUBST.
	(LT_VERSION_INFO): Sets `-version-info' for libtool.

	* */Makefile.am: We now use the correct `-version-info' parameter
	for libtool.
1998-08-29 21:08:52 +00:00
Martin Baulig
9049a19434 Using correct `(1 << GLIBTOP_SYSDPES_*)'. (<glibtop_suid.h>): Include.
1998-08-25  Martin Baulig  <martin@home-of-linux.org>

	* *.c (glibtop_init_p): Using correct `(1 << GLIBTOP_SYSDPES_*)'.
	(<glibtop_suid.h>): Include.

	* glibtop_suid.h: New file.

	* ChangeLog: New file.
1998-08-25 08:10:05 +00:00
Martin Baulig
561becc92e `make distcheck' cleanups - Hey, it really works, guys ! 1998-08-16 20:14:27 +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
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
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
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
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
Martin Baulig
f18952a9d8 Initial revision 1998-07-14 22:57:20 +00:00
Martin Baulig
16cb163bb0 Importing from top 3.4 1998-07-14 22:42:16 +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
49adb94af0 Only changed indentation. 1998-07-13 22:34:23 +00:00
Martin Baulig
9ce768bc4b Forgot to checkin. 1998-06-08 00:43:32 +00:00
Martin Baulig
33eefd46c7 Minor fixes for SunOS. 1998-06-08 00:25:47 +00:00
Martin Baulig
c84923132a Using single underscore instead of two underscores for function prefixes
1998-06-07  Martin Baulig  <martin@home-of-linux.org>

	* *.[ch]: Using single underscore instead of two underscores
	for function prefixes (regexp: ``s,__([rspl])\b,_$1,g'') to
	avoid ambiguity with mangled C++ names.
1998-06-07 13:57:45 +00:00
Martin Baulig
3728e4c34e renamed all functions implementing features to '__p' (since they need to
*  sysdeps/sun4/*.c: renamed all functions implementing
   features to '__p' (since they need to be SGID kmem on SunOS).
1998-06-02 22:23:45 +00:00
Martin Baulig
15caaaf34f added memory statistics.
* sysdeps/sun4/{open.c, mem.c, glibtop_machine.h}: added
memory statistics.
1998-05-24 16:16:59 +00:00
Martin Baulig
109f8dc608 Started porting. Getting CPU usage now working. Took a lot of code from
* sysdeps/sun4/{open.c, cpu.c}: Started porting.
Getting CPU usage now working. Took a lot of code
from top-3.4.
1998-05-23 23:05:08 +00:00
Martin Baulig
37e161bcec New file. System dependend header file for SunOS.
* sysdeps/sun4/glibtop_machine.h: New file.
System dependend header file for SunOS.
1998-05-23 23:03:59 +00:00
Martin Baulig
977a3695f6 removed -I$(includedir).
* */Makefile.am (INCLUDES): removed -I$(includedir).
1998-05-23 13:50:46 +00:00
Martin Baulig
dec10a8221 INCLUDES no longer uses @GTOP_INCS@ which now points to where the
stuff gets installed and now longer to the build directories.

Added '-D_GNU_SOURCE' to INCLUDES.
1998-05-21 17:37:51 +00:00
Martin Baulig
2ece5e5f8e forgot to checkin
* sysdeps/sun4/uptime.c: forgot to checkin

* sysdeps/sun4/loadavg.c: forgot to checkin
1998-05-19 23:03:48 +00:00
Martin Baulig
33cdc01c1d Initial revision 1998-05-19 18:19:50 +00:00