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
* 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
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-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
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-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.
* 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.
* 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.
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-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.
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.
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@'.
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));
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-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-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-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.