Drop unecessary checks and bring glibtop_get_proc_segment from FreeBSD.
This commit is contained in:
parent
72d7c489b2
commit
d1dc35750e
@ -1,11 +1,11 @@
|
||||
# $OpenBSD: Makefile,v 1.114 2014/02/03 13:46:19 ajacoutot Exp $
|
||||
# $OpenBSD: Makefile,v 1.115 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
|
||||
COMMENT= portable library for obtaining system information
|
||||
|
||||
GNOME_VERSION= 2.28.5
|
||||
GNOME_PROJECT= libgtop
|
||||
PKGNAME= libgtop2-${VERSION}
|
||||
REVISION= 10
|
||||
REVISION= 11
|
||||
|
||||
SHARED_LIBS= gtop-2.0 9.0 # .9.0
|
||||
|
||||
|
@ -1,16 +0,0 @@
|
||||
$OpenBSD: patch-src_daemon_gnuserv_c,v 1.4 2009/10/16 10:56:04 jasper Exp $
|
||||
--- src/daemon/gnuserv.c.orig Sun Apr 19 01:29:49 2009
|
||||
+++ src/daemon/gnuserv.c Fri Oct 16 02:28:09 2009
|
||||
@@ -203,6 +203,12 @@ permitted (u_long host_addr, int fd)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
+ if (auth_data_len < 1 || auth_data_len > sizeof(buf)) {
|
||||
+ syslog_message(LOG_WARNING,
|
||||
+ "Invalid data length supplied by client");
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
if (timed_read (fd, buf, auth_data_len, AUTH_TIMEOUT, 0) != auth_data_len)
|
||||
return FALSE;
|
||||
|
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procargs_c
Normal file
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procargs_c
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procargs_c,v 1.8 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
--- sysdeps/openbsd/procargs.c.orig Sat Feb 8 11:23:14 2014
|
||||
+++ sysdeps/openbsd/procargs.c Sat Feb 8 11:25:28 2014
|
||||
@@ -69,7 +69,7 @@ glibtop_get_proc_args_p (glibtop *server, glibtop_proc
|
||||
/* Get the process data */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof (*pinfo), &count);
|
||||
- if ((pinfo == NULL) || (count < 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_suid_leave (server);
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return NULL;
|
@ -1,9 +1,9 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_prockernel_c,v 1.13 2014/02/03 13:50:32 ajacoutot Exp $
|
||||
$OpenBSD: patch-sysdeps_openbsd_prockernel_c,v 1.14 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
|
||||
RM at next release.
|
||||
|
||||
--- sysdeps/openbsd/prockernel.c.orig Sat Jul 27 14:40:23 2013
|
||||
+++ sysdeps/openbsd/prockernel.c Sun Feb 2 14:07:50 2014
|
||||
+++ sysdeps/openbsd/prockernel.c Sat Feb 8 11:25:40 2014
|
||||
@@ -36,12 +36,13 @@
|
||||
#include <fcntl.h>
|
||||
|
||||
@ -29,7 +29,8 @@ RM at next release.
|
||||
/* Get the process information */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof(*pinfo), &count);
|
||||
if ((pinfo == NULL) || (count != 1)) {
|
||||
- if ((pinfo == NULL) || (count != 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
+ glibtop_suid_leave (server);
|
||||
return;
|
||||
|
@ -1,9 +1,18 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procmap_c,v 1.14 2014/02/03 13:50:32 ajacoutot Exp $
|
||||
$OpenBSD: patch-sysdeps_openbsd_procmap_c,v 1.15 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
|
||||
RM at next release.
|
||||
|
||||
--- sysdeps/openbsd/procmap.c.orig Sat Jul 27 14:40:23 2013
|
||||
+++ sysdeps/openbsd/procmap.c Mon Feb 3 10:41:54 2014
|
||||
+++ sysdeps/openbsd/procmap.c Sat Feb 8 11:25:52 2014
|
||||
@@ -184,7 +184,7 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_
|
||||
|
||||
/* Get the process data */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, sizeof(struct kinfo_proc), &count);
|
||||
- if ((pinfo == NULL) || (count < 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return (glibtop_map_entry*) g_array_free(maps, TRUE);
|
||||
}
|
||||
@@ -193,8 +193,11 @@ glibtop_get_proc_map_p (glibtop *server, glibtop_proc_
|
||||
|
||||
if (kvm_read (server->machine.kd,
|
||||
|
73
devel/libgtop2/patches/patch-sysdeps_openbsd_procsegment_c
Normal file
73
devel/libgtop2/patches/patch-sysdeps_openbsd_procsegment_c
Normal file
@ -0,0 +1,73 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procsegment_c,v 1.4 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
--- sysdeps/openbsd/procsegment.c.orig Sat Jul 27 14:40:23 2013
|
||||
+++ sysdeps/openbsd/procsegment.c Sat Feb 8 11:36:45 2014
|
||||
@@ -32,13 +32,18 @@
|
||||
#include <sys/param.h>
|
||||
#include <sys/sysctl.h>
|
||||
|
||||
-static const unsigned long _glibtop_sysdeps_proc_segment = 0;
|
||||
+static const unsigned long _glibtop_sysdeps_proc_segment =
|
||||
+(1L << GLIBTOP_PROC_SEGMENT_TEXT_RSS) +
|
||||
+(1L << GLIBTOP_PROC_SEGMENT_DATA_RSS);
|
||||
|
||||
+static int pagesize;
|
||||
+
|
||||
/* Init function. */
|
||||
|
||||
void
|
||||
_glibtop_init_proc_segment_p (glibtop *server)
|
||||
{
|
||||
+ pagesize = getpagesize ();
|
||||
server->sysdeps.proc_segment = _glibtop_sysdeps_proc_segment;
|
||||
}
|
||||
|
||||
@@ -49,35 +54,26 @@ glibtop_get_proc_segment_p (glibtop *server,
|
||||
glibtop_proc_segment *buf,
|
||||
pid_t pid)
|
||||
{
|
||||
+ struct kinfo_proc *pinfo;
|
||||
+ int count = 0;
|
||||
+
|
||||
glibtop_init_p (server, (1L << GLIBTOP_SYSDEPS_PROC_SEGMENT), 0);
|
||||
|
||||
memset (buf, 0, sizeof (glibtop_proc_segment));
|
||||
|
||||
-#if 0
|
||||
+ /* It does not work for the swapper task. */
|
||||
+ if (pid == 0) return;
|
||||
+
|
||||
/* Get the process info from the kernel */
|
||||
- kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, count);
|
||||
- if (*count != 1) {
|
||||
- return; /* the zeroed-out buffer indicating no data */
|
||||
+ pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
+ sizeof (*pinfo), &count);
|
||||
+ if (pinfo == NULL) {
|
||||
+ glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
+ return;
|
||||
}
|
||||
|
||||
- /* trs: text resident set size
|
||||
- pinfo[0]->kp_eproc.e_xrssize;
|
||||
- */
|
||||
- /* buf->trs = pinfo[0]->kp_eproc.e_xrssize; */
|
||||
- /* lrs: shared-lib resident set size
|
||||
- ? */
|
||||
- /* drs: data resident set size
|
||||
- pinfo[0]->kp_eproc.e_vm.vm_map.vm_dsize;
|
||||
- */
|
||||
- /* dt: dirty pages
|
||||
- */
|
||||
- /* start_code: address of beginning of code segment
|
||||
+ buf->text_rss = pinfo[0].p_vm_tsize * pagesize;
|
||||
+ buf->data_rss = pinfo[0].p_vm_dsize * pagesize;
|
||||
|
||||
- */
|
||||
- /* end_code: address of end of code segment
|
||||
- */
|
||||
- /* start_stack: address of the bottom of stack segment
|
||||
- */
|
||||
-#endif
|
||||
+ buf->flags = _glibtop_sysdeps_proc_segment;
|
||||
}
|
||||
-
|
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procsignal_c
Normal file
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procsignal_c
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procsignal_c,v 1.6 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
--- sysdeps/openbsd/procsignal.c.orig Sat Feb 8 11:23:36 2014
|
||||
+++ sysdeps/openbsd/procsignal.c Sat Feb 8 11:26:10 2014
|
||||
@@ -62,7 +62,7 @@ glibtop_get_proc_signal_p (glibtop *server,
|
||||
/* Get the process information */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof (*pinfo), &count);
|
||||
- if ((pinfo == NULL) || (count != 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return;
|
||||
}
|
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procstate_c
Normal file
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procstate_c
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procstate_c,v 1.6 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
--- sysdeps/openbsd/procstate.c.orig Sat Feb 8 11:23:40 2014
|
||||
+++ sysdeps/openbsd/procstate.c Sat Feb 8 11:26:20 2014
|
||||
@@ -64,7 +64,7 @@ glibtop_get_proc_state_p (glibtop *server,
|
||||
/* Get the process information */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof (*pinfo), &count);
|
||||
- if ((pinfo == NULL) || (count != 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return;
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_proctime_c,v 1.9 2014/02/03 13:50:32 ajacoutot Exp $
|
||||
$OpenBSD: patch-sysdeps_openbsd_proctime_c,v 1.10 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
|
||||
RM at next release.
|
||||
|
||||
--- sysdeps/openbsd/proctime.c.orig Sat Jul 27 14:40:23 2013
|
||||
+++ sysdeps/openbsd/proctime.c Sun Feb 2 14:50:40 2014
|
||||
+++ sysdeps/openbsd/proctime.c Sat Feb 8 11:26:32 2014
|
||||
@@ -58,59 +58,6 @@ _glibtop_init_proc_time_p (glibtop *server)
|
||||
_glibtop_sysdeps_proc_time_user;
|
||||
}
|
||||
@ -64,3 +64,12 @@ RM at next release.
|
||||
/* Provides detailed information about a process. */
|
||||
|
||||
void
|
||||
@@ -131,7 +78,7 @@ glibtop_get_proc_time_p (glibtop *server, glibtop_proc
|
||||
/* Get the process information */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof (*pinfo), &count);
|
||||
- if ((pinfo == NULL) || (count != 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return;
|
||||
}
|
||||
|
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procuid_c
Normal file
12
devel/libgtop2/patches/patch-sysdeps_openbsd_procuid_c
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-sysdeps_openbsd_procuid_c,v 1.6 2014/02/08 10:55:31 ajacoutot Exp $
|
||||
--- sysdeps/openbsd/procuid.c.orig Sat Feb 8 11:23:48 2014
|
||||
+++ sysdeps/openbsd/procuid.c Sat Feb 8 11:26:45 2014
|
||||
@@ -67,7 +67,7 @@ glibtop_get_proc_uid_p (glibtop *server, glibtop_proc_
|
||||
/* Get the process information */
|
||||
pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid,
|
||||
sizeof (*pinfo), &count);
|
||||
- if ((pinfo == NULL) || (count != 1)) {
|
||||
+ if (pinfo == NULL) {
|
||||
glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid);
|
||||
return;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user