mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
Update to the latest version 22.9.
This commit is contained in:
parent
a718302dd5
commit
4b18243f1f
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=247006
6 changed files with 156 additions and 189 deletions
|
@ -6,9 +6,10 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
PORTNAME= psmisc
|
PORTNAME= psmisc
|
||||||
PORTVERSION= 21.9
|
PORTVERSION= 22.9
|
||||||
CATEGORIES= sysutils
|
CATEGORIES= sysutils
|
||||||
MASTER_SITES= SF
|
MASTER_SITES= SF
|
||||||
|
MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTNAME}
|
||||||
|
|
||||||
MAINTAINER= ports@FreeBSD.org
|
MAINTAINER= ports@FreeBSD.org
|
||||||
COMMENT= A port of the Linux pstree, killall and pidof commands
|
COMMENT= A port of the Linux pstree, killall and pidof commands
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
MD5 (psmisc-21.9.tar.gz) = 7b21b6bb1e35e7e68b952e86f85c0a1c
|
MD5 (psmisc-22.9.tar.gz) = c242530de46b951ab10a2237a6048a9c
|
||||||
SHA256 (psmisc-21.9.tar.gz) = 90fd6844a4a527021d2ef3efada0fc5384d0778a09dce91ab11effed4ce34a44
|
SHA256 (psmisc-22.9.tar.gz) = c98aef4bc379790229c54c8e7d97b1d1ab898346bfffcde54fcf585a3e353edd
|
||||||
SIZE (psmisc-21.9.tar.gz) = 232172
|
SIZE (psmisc-22.9.tar.gz) = 316530
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
--- doc/Makefile.in.orig Tue May 25 02:55:07 2004
|
--- doc/Makefile.in.orig 2009-12-27 16:19:06.000000000 +0900
|
||||||
+++ doc/Makefile.in Sat Sep 10 04:02:32 2005
|
+++ doc/Makefile.in 2010-01-03 00:15:19.879070557 +0900
|
||||||
@@ -159,7 +159,7 @@
|
@@ -187,7 +187,7 @@
|
||||||
sharedstatedir = @sharedstatedir@
|
top_build_prefix = @top_build_prefix@
|
||||||
sysconfdir = @sysconfdir@
|
top_builddir = @top_builddir@
|
||||||
target_alias = @target_alias@
|
top_srcdir = @top_srcdir@
|
||||||
-man_MANS = fuser.1 killall.1 pstree.1
|
-man_MANS = fuser.1 killall.1 peekfd.1 prtstat.1 pstree.1
|
||||||
+man_MANS = killall.1 pstree.1
|
+man_MANS = killall.1 pstree.1
|
||||||
EXTRA_DIST = $(man_MANS)
|
EXTRA_DIST = $(man_MANS)
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
|
@ -1,62 +1,69 @@
|
||||||
--- src/Makefile.in.orig Sat Nov 5 05:18:47 2005
|
--- src/Makefile.in.orig 2009-12-27 16:19:06.000000000 +0900
|
||||||
+++ src/Makefile.in Wed Nov 16 17:34:55 2005
|
+++ src/Makefile.in 2010-01-03 00:25:56.093987293 +0900
|
||||||
@@ -14,7 +14,7 @@
|
@@ -34,8 +34,8 @@
|
||||||
|
|
||||||
@SET_MAKE@
|
|
||||||
|
|
||||||
-SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(oldfuser_SOURCES) $(pstree_SOURCES)
|
|
||||||
+SOURCES = $(killall_SOURCES) $(pstree_SOURCES)
|
|
||||||
|
|
||||||
srcdir = @srcdir@
|
|
||||||
top_srcdir = @top_srcdir@
|
|
||||||
@@ -38,8 +38,7 @@
|
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
build_triplet = @build@
|
build_triplet = @build@
|
||||||
host_triplet = @host@
|
host_triplet = @host@
|
||||||
-bin_PROGRAMS = fuser$(EXEEXT) killall$(EXEEXT) pstree$(EXEEXT) \
|
-bin_PROGRAMS = fuser$(EXEEXT) killall$(EXEEXT) pstree$(EXEEXT) \
|
||||||
- oldfuser$(EXEEXT)
|
- prtstat$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
|
||||||
+bin_PROGRAMS = killall$(EXEEXT) pstree$(EXEEXT)
|
+bin_PROGRAMS = killall$(EXEEXT) pstree$(EXEEXT) \
|
||||||
subdir = src
|
+ $(am__EXEEXT_1) $(am__EXEEXT_2) \
|
||||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
$(am__EXEEXT_3)
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
@WANT_PEEKFD_I386_TRUE@am__append_1 = peekfd
|
||||||
@@ -75,10 +74,8 @@
|
@WANT_PEEKFD_I386_TRUE@am__append_2 = -DI386
|
||||||
|
@@ -81,10 +81,10 @@
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
CCLD = $(CC)
|
CCLD = $(CC)
|
||||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
-SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(oldfuser_SOURCES) \
|
-SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(peekfd_SOURCES) \
|
||||||
- $(pstree_SOURCES)
|
- $(prtstat_SOURCES) $(pstree_SOURCES)
|
||||||
-DIST_SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(oldfuser_SOURCES) \
|
-DIST_SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(peekfd_SOURCES) \
|
||||||
- $(pstree_SOURCES)
|
- $(prtstat_SOURCES) $(pstree_SOURCES)
|
||||||
+SOURCES = $(killall_SOURCES) $(pstree_SOURCES)
|
+SOURCES = $(killall_SOURCES) \
|
||||||
+DIST_SOURCES = $(killall_SOURCES) $(pstree_SOURCES)
|
+ $(pstree_SOURCES)
|
||||||
|
+DIST_SOURCES = $(killall_SOURCES) \
|
||||||
|
+ $(pstree_SOURCES)
|
||||||
ETAGS = etags
|
ETAGS = etags
|
||||||
CTAGS = ctags
|
CTAGS = ctags
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
@@ -181,9 +178,8 @@
|
@@ -208,10 +208,10 @@
|
||||||
oldfuser_SOURCES = oldfuser.c comm.h signals.c signals.h loop.h i18n.h
|
$(am__append_4) $(am__append_6)
|
||||||
fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h
|
fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h
|
||||||
killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h
|
killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h
|
||||||
-killall_LDADD = @SELINUX_LIB@
|
-killall_LDADD = @SELINUX_LIB@
|
||||||
|
+killall_LDADD =
|
||||||
|
peekfd_SOURCES = peekfd.c
|
||||||
pstree_SOURCES = pstree.c comm.h i18n.h
|
pstree_SOURCES = pstree.c comm.h i18n.h
|
||||||
-pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@
|
-pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@
|
||||||
+pstree_LDADD = @TERMCAP_LIB@
|
+pstree_LDADD = @TERMCAP_LIB@
|
||||||
|
prtstat_SOURCES = prtstat.c prtstat.h
|
||||||
BUILT_SOURCES = signames.h
|
BUILT_SOURCES = signames.h
|
||||||
EXTRA_DIST = signames.c
|
EXTRA_DIST = signames.c
|
||||||
CLEANFILES = signames.h
|
@@ -537,13 +537,20 @@
|
||||||
@@ -460,12 +456,11 @@
|
|
||||||
|
|
||||||
signames.h: signames.c Makefile
|
signames.h: signames.c Makefile
|
||||||
@CPP@ -dM $< |\
|
export LC_ALL=C ; \
|
||||||
|
- @CPP@ -dM $< |\
|
||||||
- tr -s '\t ' ' ' | sort -n -k 3 | sed \
|
- tr -s '\t ' ' ' | sort -n -k 3 | sed \
|
||||||
- 's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\
|
- 's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\ \2,"\1" },:p;d' | \
|
||||||
-\2,"\1" },:p;d' | \
|
|
||||||
- grep -v '[0-9][0-9][0-9]' >signames.h || \
|
- grep -v '[0-9][0-9][0-9]' >signames.h || \
|
||||||
+ sed 's|\t | |g; s| $$||' | sort -n -k 3 |\
|
- { rm -f signames.h; exit 1; }
|
||||||
+ grep '^#define SIG[A-Z0-9]* [0-9]*$$'|sed 's|#define SIG||'|\
|
|
||||||
+ awk '{print "{" $$2 ",\"" $$1 "\" },"}' >signames.h || \
|
|
||||||
{ rm -f signames.h; exit 1; }
|
|
||||||
- grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
|
- grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
|
||||||
+ grep '^{1,"HUP" },$$' signames.h >/dev/null || \
|
- { rm -f signames.h; exit 1; }
|
||||||
{ rm -f signames.h; exit 1; }
|
+ @CPP@ -dM $< | {\
|
||||||
|
+ signames=`kill -l | tr a-z A-Z`; \
|
||||||
|
+ while read define name value; do \
|
||||||
|
+ [ "$$define" = '#define' ] || continue; \
|
||||||
|
+ case "$$value" in \
|
||||||
|
+ *[!0-9]*) continue; \
|
||||||
|
+ esac; \
|
||||||
|
+ for signame in $$signames; do \
|
||||||
|
+ if [ "$$name" = "SIG$$signame" ]; then \
|
||||||
|
+ echo "{ $$value, \"$$signame\" },"; \
|
||||||
|
+ fi; \
|
||||||
|
+ done; \
|
||||||
|
+ done; \
|
||||||
|
+ } | sort -n -k 2 > signames.h
|
||||||
|
|
||||||
install-exec-hook:
|
install-exec-hook:
|
||||||
|
cd $(DESTDIR)$(bindir) && \
|
||||||
|
|
|
@ -1,15 +1,24 @@
|
||||||
--- src/killall.c.orig Thu Dec 1 22:32:19 2005
|
--- src/killall.c.orig 2009-12-18 21:45:36.000000000 +0900
|
||||||
+++ src/killall.c Thu Jan 5 23:32:33 2006
|
+++ src/killall.c 2010-01-03 00:37:34.818411284 +0900
|
||||||
@@ -59,35 +59,31 @@
|
@@ -36,6 +36,8 @@
|
||||||
quiet = 0, wait_until_dead = 0, process_group = 0,
|
#include <dirent.h>
|
||||||
|
#include <signal.h>
|
||||||
|
#include <errno.h>
|
||||||
|
+#include <limits.h>
|
||||||
|
+#include <locale.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <getopt.h>
|
||||||
|
@@ -83,40 +85,35 @@
|
||||||
ignore_case = 0, pidof;
|
ignore_case = 0, pidof;
|
||||||
|
static long younger_than = 0, older_than = 0;
|
||||||
|
|
||||||
+/*
|
+ /*
|
||||||
+ * This is the implementation from 21.5, as the one in 21.6 and newer uses
|
+ * This is based on the implementation from 21.5, as the one in 21.6
|
||||||
+ * Linux specific functions getline() and rpmatch()
|
+ * and newer uses Linux specific functions getline() and rpmatch()
|
||||||
+ */
|
+ */
|
||||||
static int
|
static int
|
||||||
ask (char *name, pid_t pid)
|
ask (char *name, pid_t pid, const int signal)
|
||||||
{
|
{
|
||||||
- int res;
|
- int res;
|
||||||
- size_t len;
|
- size_t len;
|
||||||
|
@ -19,8 +28,14 @@
|
||||||
- len = 0;
|
- len = 0;
|
||||||
-
|
-
|
||||||
- do {
|
- do {
|
||||||
- printf (_("Kill %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
|
- if (signal == SIGTERM)
|
||||||
- pid);
|
- printf (_("Kill %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
|
||||||
|
- pid);
|
||||||
|
- else
|
||||||
|
- printf (_("Signal %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
|
||||||
|
- pid);
|
||||||
|
+ int ch, c;
|
||||||
|
|
||||||
- fflush (stdout);
|
- fflush (stdout);
|
||||||
-
|
-
|
||||||
- if (getline (&line, &len, stdin) < 0)
|
- if (getline (&line, &len, stdin) < 0)
|
||||||
|
@ -34,12 +49,14 @@
|
||||||
- if (res >= 0) {
|
- if (res >= 0) {
|
||||||
- free(line);
|
- free(line);
|
||||||
- return res;
|
- return res;
|
||||||
+ int ch, c;
|
|
||||||
+
|
|
||||||
+ do
|
+ do
|
||||||
+ {
|
+ {
|
||||||
+ printf (_("Kill %s(%s%d) ? (y/n) "), name, process_group ? "pgid " : "",
|
+ if (signal == SIGTERM)
|
||||||
+ pid);
|
+ printf (_("Kill %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
|
||||||
|
+ pid);
|
||||||
|
+ else
|
||||||
|
+ printf (_("Signal %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
|
||||||
|
+ pid);
|
||||||
+ fflush (stdout);
|
+ fflush (stdout);
|
||||||
+ do
|
+ do
|
||||||
+ if ((ch = getchar ()) == EOF)
|
+ if ((ch = getchar ()) == EOF)
|
||||||
|
@ -56,8 +73,8 @@
|
||||||
+ return ch == 'y' || ch == 'Y';
|
+ return ch == 'y' || ch == 'Y';
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static double
|
||||||
@@ -267,7 +263,7 @@
|
@@ -356,7 +353,7 @@
|
||||||
}
|
}
|
||||||
#endif /*WITH_SELINUX*/
|
#endif /*WITH_SELINUX*/
|
||||||
/* load process name */
|
/* load process name */
|
||||||
|
@ -66,15 +83,16 @@
|
||||||
continue;
|
continue;
|
||||||
if (!(file = fopen (path, "r")))
|
if (!(file = fopen (path, "r")))
|
||||||
{
|
{
|
||||||
@@ -275,72 +271,13 @@
|
@@ -364,7 +361,7 @@
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
free (path);
|
free (path);
|
||||||
- okay = fscanf (file, "%*d (%15[^)]", comm) == 1;
|
- okay = fscanf (file, "%*d (%15[^)]", comm) == 1;
|
||||||
+ okay = fscanf (file, "%s", comm) == 1;
|
+ okay = fscanf (file, "%s", comm) == 1;
|
||||||
(void) fclose (file);
|
if (!okay) {
|
||||||
if (!okay)
|
fclose(file);
|
||||||
continue;
|
continue;
|
||||||
|
@@ -386,65 +383,6 @@
|
||||||
got_long = 0;
|
got_long = 0;
|
||||||
command = NULL; /* make gcc happy */
|
command = NULL; /* make gcc happy */
|
||||||
length = strlen (comm);
|
length = strlen (comm);
|
||||||
|
@ -140,21 +158,21 @@
|
||||||
/* mach by process name */
|
/* mach by process name */
|
||||||
for (j = 0; j < names; j++)
|
for (j = 0; j < names; j++)
|
||||||
{
|
{
|
||||||
@@ -372,7 +309,7 @@
|
@@ -495,7 +433,7 @@
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
|
int ok = 1;
|
||||||
|
|
||||||
- if (asprintf (&path, PROC_BASE "/%d/exe", pid_table[i]) < 0)
|
- if (asprintf (&path, PROC_BASE "/%d/exe", pid_table[i]) < 0)
|
||||||
+ if (asprintf (&path, PROC_BASE "/%d/file", pid_table[i]) < 0)
|
+ if (asprintf (&path, PROC_BASE "/%d/file", pid_table[i]) < 0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (stat (path, &st) < 0)
|
if (stat (path, &st) < 0)
|
||||||
@@ -697,7 +634,7 @@
|
@@ -842,7 +780,7 @@
|
||||||
fprintf (stderr, _("Maximum number of names is %d\n"), MAX_NAMES);
|
fprintf (stderr, _("Maximum number of names is %d\n"), MAX_NAMES);
|
||||||
exit (1);
|
exit (1);
|
||||||
}
|
}
|
||||||
- if (stat("/proc/self/stat", &isproc)==-1)
|
- if (stat("/proc/self/stat", &isproc)==-1) {
|
||||||
+ if (stat("/proc/curproc/status", &isproc)==-1)
|
+ if (stat("/proc/curproc/status", &isproc)==-1) {
|
||||||
{
|
fprintf (stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE);
|
||||||
fprintf (stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE);
|
exit (1);
|
||||||
exit (1);
|
}
|
||||||
|
|
|
@ -1,109 +1,50 @@
|
||||||
--- src/pstree.c.orig Fri Nov 25 23:14:48 2005
|
--- src/pstree.c.orig 2009-12-27 15:46:47.000000000 +0900
|
||||||
+++ src/pstree.c Thu Jan 5 23:34:36 2006
|
+++ src/pstree.c 2010-01-03 00:52:21.437862505 +0900
|
||||||
@@ -590,7 +590,7 @@
|
@@ -37,6 +37,7 @@
|
||||||
{
|
#include <term.h>
|
||||||
if (!(path = malloc (strlen (PROC_BASE) + strlen (de->d_name) + 10)))
|
#include <termios.h>
|
||||||
exit (2);
|
#include <langinfo.h>
|
||||||
- sprintf (path, "%s/%d/stat", PROC_BASE, pid);
|
+#include <limits.h>
|
||||||
+ sprintf (path, "%s/%d/status", PROC_BASE, pid);
|
#include <assert.h>
|
||||||
if ((file = fopen (path, "r")) != NULL)
|
#include <sys/types.h>
|
||||||
{
|
#include <sys/stat.h>
|
||||||
empty = 0;
|
@@ -590,7 +591,11 @@
|
||||||
@@ -608,95 +608,8 @@
|
struct dirent *de;
|
||||||
perror (path);
|
FILE *file;
|
||||||
exit (1);
|
struct stat st;
|
||||||
}
|
+#ifdef __FreeBSD__
|
||||||
- fread(readbuf, BUFSIZ, 1, file) ;
|
+ char *path, comm[COMM_LEN + 1];
|
||||||
- if (ferror(file) == 0)
|
+#else
|
||||||
- {
|
char *path, *comm;
|
||||||
- memset(comm, '\0', COMM_LEN+1);
|
+#endif
|
||||||
- tmpptr = strrchr(readbuf, ')'); /* find last ) */
|
char *buffer;
|
||||||
- /* We now have readbuf with pid and cmd, and tmpptr+2
|
size_t buffer_size;
|
||||||
- * with the rest */
|
char readbuf[BUFSIZ + 1];
|
||||||
- /*printf("readbuf: %s\n", readbuf);*/
|
@@ -623,7 +628,7 @@
|
||||||
- if (sscanf(readbuf, "%*d (%15[^)]", comm) == 1)
|
if ((pid = (pid_t) atoi(de->d_name)) != 0) {
|
||||||
- {
|
if (! (path = malloc(strlen(PROC_BASE) + strlen(de->d_name) + 10)))
|
||||||
- /*printf("tmpptr: %s\n", tmpptr+2);*/
|
exit(2);
|
||||||
- if (sscanf(tmpptr+2, "%*c %d", &ppid) == 1)
|
- sprintf(path, "%s/%d/stat", PROC_BASE, pid);
|
||||||
- {
|
+ sprintf (path, "%s/%d/status", PROC_BASE, pid);
|
||||||
-/*
|
if ((file = fopen(path, "r")) != NULL) {
|
||||||
- if (fscanf
|
empty = 0;
|
||||||
- (file, "%d (%s) %c %d", &dummy, comm, (char *) &dummy,
|
sprintf(path, "%s/%d", PROC_BASE, pid);
|
||||||
- &ppid) == 4)
|
@@ -638,6 +643,10 @@
|
||||||
- */
|
perror(path);
|
||||||
- {
|
exit(1);
|
||||||
- DIR *taskdir;
|
}
|
||||||
- struct dirent *dt;
|
+#ifdef __FreeBSD__
|
||||||
- char *taskpath;
|
+ if (fscanf(file, "%s %*d %d", comm, &ppid) == 2)
|
||||||
- char *threadname;
|
+ add_proc(comm, pid, ppid, st.st_uid, NULL, 0, 0);
|
||||||
- int thread;
|
+#else
|
||||||
-
|
size = fread(readbuf, 1, BUFSIZ, file);
|
||||||
- if (!(taskpath = malloc(strlen(path) + 10))) {
|
if (ferror(file) == 0) {
|
||||||
- exit (2);
|
readbuf[size] = 0;
|
||||||
- }
|
@@ -725,6 +734,7 @@
|
||||||
- sprintf (taskpath, "%s/task", path);
|
}
|
||||||
-
|
}
|
||||||
- if ((taskdir=opendir(taskpath))!=0) {
|
}
|
||||||
- /* if we have this dir, we're on 2.6 */
|
+#endif /*__FreeBSD__*/
|
||||||
- if (!(threadname = malloc(strlen(comm) + 3))) {
|
(void) fclose(file);
|
||||||
- exit (2);
|
}
|
||||||
- }
|
free(path);
|
||||||
- sprintf(threadname,"{%s}",comm);
|
|
||||||
- while ((dt = readdir(taskdir)) != NULL) {
|
|
||||||
- if ((thread=atoi(dt->d_name)) !=0) {
|
|
||||||
- if (thread != pid) {
|
|
||||||
-#ifdef WITH_SELINUX
|
|
||||||
- if (print_args)
|
|
||||||
- add_proc(threadname, thread, pid, st.st_uid, threadname, strlen(threadname)+1, scontext);
|
|
||||||
- else
|
|
||||||
- add_proc(threadname, thread, pid, st.st_uid, NULL, 0, scontext);
|
|
||||||
-#else /*WITH_SELINUX*/
|
|
||||||
- if (print_args)
|
|
||||||
- add_proc(threadname, thread, pid, st.st_uid, threadname, strlen(threadname)+1);
|
|
||||||
- else
|
|
||||||
- add_proc(threadname, thread, pid, st.st_uid, NULL, 0);
|
|
||||||
-#endif /*WITH_SELINUX*/
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- free(threadname);
|
|
||||||
- (void) closedir(taskdir);
|
|
||||||
- }
|
|
||||||
- free(taskpath);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- if (!print_args)
|
|
||||||
-#ifdef WITH_SELINUX
|
|
||||||
- add_proc(comm, pid, ppid, st.st_uid, NULL, 0, scontext);
|
|
||||||
-#else /*WITH_SELINUX*/
|
|
||||||
- add_proc (comm, pid, ppid, st.st_uid, NULL, 0);
|
|
||||||
-#endif /*WITH_SELINUX*/
|
|
||||||
- else
|
|
||||||
- {
|
|
||||||
- sprintf (path, "%s/%d/cmdline", PROC_BASE, pid);
|
|
||||||
- if ((fd = open (path, O_RDONLY)) < 0)
|
|
||||||
- {
|
|
||||||
- perror (path);
|
|
||||||
- exit (1);
|
|
||||||
- }
|
|
||||||
- if ((size = read (fd, buffer, (size_t) output_width)) < 0)
|
|
||||||
- {
|
|
||||||
- perror (path);
|
|
||||||
- exit (1);
|
|
||||||
- }
|
|
||||||
- (void) close (fd);
|
|
||||||
- if (size)
|
|
||||||
- buffer[size++] = 0;
|
|
||||||
-#ifdef WITH_SELINUX
|
|
||||||
- add_proc(comm, pid, ppid, st.st_uid, buffer, size, scontext);
|
|
||||||
-#else /*WITH_SELINUX*/
|
|
||||||
- add_proc (comm, pid, ppid, st.st_uid, buffer, size);
|
|
||||||
-#endif /*WITH_SELINUX*/
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
+ if (fscanf(file, "%s %*d %d", comm, &ppid) == 2) {
|
|
||||||
+ add_proc(comm,pid,ppid,st.st_uid,NULL,0);
|
|
||||||
}
|
|
||||||
(void) fclose (file);
|
|
||||||
}
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue