Commit Graph

35 Commits

Author SHA1 Message Date
Robert Roth
1bf16bfffd Renamed procdiskio to procio 2017-05-12 05:08:41 +03:00
Benoit Dejean
c29d7de9a0 Add dummy proc_diskio implementation for FreeBSD. 2017-02-25 16:30:18 +01:00
Benoit Dejean
4e57a6222d Don't install glibtop_private.h. 2015-07-18 22:07:59 +02:00
Benoit Dejean
119049b8c0 Fix autotools deprecation warning with s/INCLUDES/AM_CPPFLAGS/g. 2015-07-15 18:24:29 +02:00
Ryan Lortie
2e861977a6 freebsd: don't link to libgeom
libgeom declares several symbols in GLib's namespace, including
g_close() and it therefore cannot be used from any program that also
uses GLib.

For now, disable the parts of the FreeBSD sysdep that use libgeom.
Hopefully the libgeom API will be changed soon.

https://bugzilla.gnome.org/show_bug.cgi?id=723685
2014-02-20 20:56:57 -05:00
Joe Marcus Clarke
08fd95d253 Fix numerous bigs in the FreeBSD backend
* Correct calculation of CPU time.
* Fix a bug on newer versions of FreeBSD where computing the process map leads
to a tight error loop.
* Add support for the new procstat API to obtain the list of open files and
cwd.
* Use kvm_openfiles instead of kvm_open to better handle error messages.
* Split some modules out into non-suid modules.
* Properly determine the number of CPUs.

https://bugzilla.gnome.org/show_bug.cgi?id=605431
2011-06-27 16:32:20 +02:00
Benoît Dejean
10a04fc9c7 Improved freebsd port.
Patch by Joe Marcus Clarke <marcus@freebsd.org>.
Closes #548184.

svn path=/trunk/; revision=2767
2008-08-18 16:11:07 +00:00
Benoît Dejean
0285e018f4 Fixe some problems as well as implements procwd and procopenfiles for
2007-07-01  Benoît Dejean  <benoit@placenet.org>

	Fixe some problems as well as implements procwd and procopenfiles
	for FreeBSD using a wrapper around lsof. This same backend should
	also work on kFreeBSD.

	Patch by Joe Marcus Clarke <marcus@freebsd.org>

svn path=/trunk/; revision=2617
2007-07-01 13:21:07 +00:00
Benoît Dejean
5a15e409cf Huge (k)FreeBSD update. (k)FreeBSD support is freebsd/ Other BSD are in
2007-02-18  Benoît Dejean  <benoit@placenet.org>

	* configure.in:
	* libgtop-sysdeps.m4:
	* sysdeps/Makefile.am:
	
	Huge (k)FreeBSD update.
	(k)FreeBSD support is freebsd/
	Other BSD are in bsd/
	
	Patch by Joe Marcus Clarke  <marcus@freebsd.org>
	Alexander Nedotsukov  <bland@FreeBSD.org>
	
	Closes #407693.

svn path=/trunk/; revision=2557
2007-02-18 01:10:53 +00:00
Julio M. Merino Vidal
9e6115f322 Check for the kvm library and use it to link the suid freebsd sysdeps code
2006-04-04  Julio M. Merino Vidal  <jmmv@NetBSD.org>

	* libgtop-sysdeps.m4:
	* sysdeps/freebsd/Makefile.am:

	Check for the kvm library and use it to link the suid freebsd
	sysdeps code (only if available).  This library provides all the
	kvm_* functions used in it and is needed, at least, under NetBSD.

	Fixes bug #337247.
2006-04-09 10:12:17 +00:00
Julio M. Merino Vidal
80855eabe2 Bring back to life (from the 1.x versions) the sysinfo.c file for the
2006-04-04  Julio M. Merino Vidal  <jmmv@NetBSD.org>

	* sysdeps/freebsd/Makefile.am:
	* sysdeps/freebsd/sysinfo.c:

	Bring back to life (from the 1.x versions) the sysinfo.c file for
	the freebsd sysdeps.  The new file comes from the FreeBSD ports
	repository and has some minor style changes by me.  This is required
	to get the glibtop_get_sysinfo_s function used by the sysdeps common
	code.

	Fixes bug #337251.
2006-04-04 20:36:43 +00:00
Benoît Dejean
2c0f291b3c Fix a bug in netlist where glibtop_netlist.number was never initialized to
* Makefile.am:
	* cpu.c: (glibtop_get_cpu_p):
	* netlist.c: (glibtop_get_netlist_s):
	* netload.c: (glibtop_get_netload_p):
	* procmem.c: (glibtop_get_proc_mem_p):

	Fix a bug in netlist where glibtop_netlist.number was never initialized to 0
	(this resulted in a NULL pointer dereference in the network load feature
	of the multiload applet)

	* Add support for getting interface flags and packet counts even on interfaces
	without IP addresses (needed for the network load feature of the multiload applet)

	* Restore per-process limits in the !FreeBSD or __FreeBSD_version < 500013
	case

	* Add CPU interrupt time as IOWAIT to get support for the cpu load feature of
	the multiload applet.

	Patch from marcus@freebsd.org (Joe Marcus Clarke).
	Closes #168704.
2005-02-28 08:15:59 +00:00
Benoît Dejean
717ee1c88f Add support for FreeBSD 6-CURRENT. Use the more portable getrlimit to
* Makefile.am:
	* netlist.c: (glibtop_get_netlist_s):
	* procmap.c: (glibtop_get_proc_map_p):
	* procmem.c: (glibtop_get_proc_mem_p):
	* procopenfiles.c: (glibtop_init_proc_open_files_s),
	(glibtop_get_proc_open_files_s):
	* proctime.c:

	Add support for FreeBSD 6-CURRENT.
	Use the more portable getrlimit to obtain process memory limits.
	Correctly determine process time.
	Stub out the procopenfiles() function (this is not yet implemented, however).
	Fix a nasty infinite loop and memory leak due to a forgot pointer increment.

	Patch from marcus@freebsd.org (Joe Marcus Clarke).
	Closes #168232.
2005-02-23 08:20:45 +00:00
Benoît Dejean
fe5bb1c39c Added glibtop_get_netlist. Patch from marcus@freebsd.org (Joe Marcus
* Makefile.am:
	* netlist.c: (glibtop_init_netlist_s), (glibtop_get_netlist_s):
	Added glibtop_get_netlist. Patch from marcus@freebsd.org (Joe Marcus Clarke).
2004-12-05 12:01:43 +00:00
Bastien Nocera
4bd9752d52 implement NetBSD support, and some build problems on FreeBSD (Closes:
2004-03-09  Bastien Nocera  <hadess@hadess.net>

	* Makefile.am:
	* cpu.c: (glibtop_init_cpu_p), (glibtop_get_cpu_p):
	* glibtop_machine.h:
	* mem.c:
	* netload.c: (glibtop_get_netload_p):
	* prockernel.c: (glibtop_get_proc_kernel_p):
	* proclist.c: (glibtop_get_proclist_p):
	* procmap.c: (glibtop_get_proc_map_p):
	* procmem.c: (glibtop_get_proc_mem_p):
	* procsignal.c: (glibtop_get_proc_signal_p):
	* procstate.c: (glibtop_get_proc_state_p):
	* proctime.c:
	* procuid.c: (glibtop_get_proc_uid_p):
	* uptime.c: (glibtop_get_uptime_p): implement NetBSD support, and
	some build problems on FreeBSD (Closes: #135674)
2004-03-09 23:13:31 +00:00
Bastien Nocera
31133cc3dc install only one library, libgtop-2.0 Fix build-time warnings due to the
2003-10-21  Bastien Nocera  <hadess@hadess.net>

	* Makefile.am:
	* configure.in:
	* src/inodedb/.cvsignore:
	* sysdeps/names/Makefile.am:
	install only one library, libgtop-2.0
	Fix build-time warnings due to the redefinition of guint64
2003-10-21 21:21:28 +00:00
Carlos Perelló Marín
4c8ae9e25c Reverted libgtop changes. It's a common module and I should not modify it.
2003-10-19  Carlos Perelló Marín <carlos@gnome.org>

	* support/*: Reverted libgtop changes. It's a common module
	and I should not modify it.
	* Added/removed files. Now the move should be done.
2003-10-19 16:55:56 +00:00
Martin Baulig
7a7c6baf55 Moved all sysdeps code to the new libgtop-backends module.
2001-04-20  Martin Baulig  <baulig@suse.de>

	Moved all sysdeps code to the new libgtop-backends module.

	* sysdeps/freesd/*: Removed.
	* sysdeps/kernel/*: Removed.
	* sysdeps/linux/*: Removed.
	* sysdeps/osf1/*: Removed.
	* sysdeps/solaris/*: Removed.
	* sysdeps/stub/*: Removed.
	* sysdeps/stub_suid/*: Removed.
	* sysdeps/sun4/*: Removed.
2001-04-20 21:06:35 +00:00
Martin Baulig
47d4322965 Removed siglist.c. 2000-02-13 15:27:36 +00:00
Martin Baulig
b124998639 Removed the non-suid `libgtop-sysdeps.la'. Removed.
2000-02-06  Martin Baulig  <martin@home-of-linux.org>

	* Makefile.am: Removed the non-suid `libgtop-sysdeps.la'.
	* nosuid.c: Removed.
2000-02-06 18:24:39 +00:00
Martin Baulig
0f3babc8e9 Moved here from the sysdeps directories.
2000-02-06  Martin Baulig  <martin@home-of-linux.org>

	* lib/sysdeps-init-*.c (glibtop_sys_siglist): Moved here from
	the sysdeps directories.

	* sysdeps/*/siglist.c: Removed.
2000-02-06 18:20:20 +00:00
Martin Baulig
1a25c3ade9 New file.
1999-12-12  Martin Baulig  <martin@home-of-linux.org>

	* netinfo.c: New file.

	* interfaces.c: Reflect latest interface changes.
	* netload.c: Likewise.
1999-12-12 16:09:03 +00:00
Martin Baulig
6380440c00 Reflect latest interface changes. 1999-11-21 19:03:12 +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
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
bd4cd7b570 Removed.
* Makefile.am (INCLUDES): Removed.
1998-10-03 02:48:40 +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
5a7f1d7621 Merged from LIBGTOP_0_25_PATCHES. 1998-08-22 17:26:50 +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
e64dc16608 Some more FreeBSD stuff. 1998-08-09 17:05:11 +00:00
Martin Baulig
6893d89fd8 Merged code from Josh Sled. 1998-08-07 15:12:04 +00:00
Martin Baulig
79f5a9c667 Importing FreeBSD port of libgtop from Josh Sled. 1998-08-06 23:34:50 +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