diff options
author | Fabian Groffen <grobian@gentoo.org> | 2017-06-12 15:06:47 +0200 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2017-06-12 15:06:47 +0200 |
commit | 1c3bc9d89b1103c242f9f77dc58930461f001de1 (patch) | |
tree | 7d23d6fd066884b0fd2804d76587020616fbfeab | |
parent | sys-process/lsof: migrated to gx86 (diff) | |
download | prefix-1c3bc9d89b1103c242f9f77dc58930461f001de1.tar.gz prefix-1c3bc9d89b1103c242f9f77dc58930461f001de1.tar.bz2 prefix-1c3bc9d89b1103c242f9f77dc58930461f001de1.zip |
sys-process/pidof-bsd: drop darwin/netbsd port, unlikely it's necessary
-rw-r--r-- | sys-process/pidof-bsd/Manifest | 1 | ||||
-rw-r--r-- | sys-process/pidof-bsd/files/pidof-bsd-20050501-darwin.patch | 200 | ||||
-rw-r--r-- | sys-process/pidof-bsd/files/pidof-bsd-20050501-firstarg.patch | 13 | ||||
-rw-r--r-- | sys-process/pidof-bsd/files/pidof-bsd-20050501-gfbsd.patch | 128 | ||||
-rw-r--r-- | sys-process/pidof-bsd/files/pidof-bsd-20050501-netbsd.patch | 43 | ||||
-rw-r--r-- | sys-process/pidof-bsd/files/pidof-bsd-20050501-pname.patch | 46 | ||||
-rw-r--r-- | sys-process/pidof-bsd/metadata.xml | 8 | ||||
-rw-r--r-- | sys-process/pidof-bsd/pidof-bsd-20050501-r4.ebuild | 39 |
8 files changed, 0 insertions, 478 deletions
diff --git a/sys-process/pidof-bsd/Manifest b/sys-process/pidof-bsd/Manifest deleted file mode 100644 index 88a2d22735..0000000000 --- a/sys-process/pidof-bsd/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST pidof-bsd-20050501.tar.gz 1769 SHA256 c3ed8826178debe872f7717b8810d477d4611ab19af73bed97c5af1c552d20e6 SHA512 27691305165848363415a7d487b36a87db0750a9c08e6327eef05f5e87326c91fbf46c415673f83268981a22bbfcfaaf5ef280c06c24b3ebb50d1483527f9c94 WHIRLPOOL cd8c2264f6286b0988385defa14e528f8c9f8f1018ece69f6bd9e8784f259c491b923d0ad70a10fbbcf132dcef8ef98c96049968a888a4bed6d09dbac83ac94e diff --git a/sys-process/pidof-bsd/files/pidof-bsd-20050501-darwin.patch b/sys-process/pidof-bsd/files/pidof-bsd-20050501-darwin.patch deleted file mode 100644 index ea330434bc..0000000000 --- a/sys-process/pidof-bsd/files/pidof-bsd-20050501-darwin.patch +++ /dev/null @@ -1,200 +0,0 @@ ---- pidof.c.orig 2007-04-20 10:08:53 +0200 -+++ pidof.c 2007-04-23 11:41:29 +0200 -@@ -27,10 +27,10 @@ - */ - - #include <unistd.h> -+#include <ctype.h> - #include <stdio.h> - #include <string.h> - #include <err.h> --#include <kvm.h> - #include <sys/param.h> - #include <sys/sysctl.h> - #include <sys/user.h> -@@ -49,46 +50,146 @@ - static int - get_pid_of_process(const char *process_name) - { -- static kvm_t *kd = NULL; -- struct kinfo_proc *p; -- int i, n_processes, -- processes_found = 0; -- char *pname = NULL; -+ int argc, argmax, i, j; -+ int processes_found = 0; -+ char *p_args, *p_pname, *s; -+ char *args = NULL, *pname = NULL; -+ struct kinfo_proc *p; -+ size_t len, n_processes; -+ int mib[4]; -+ -+ if (process_name == NULL) -+ return (processes_found); -+ -+ pname = strdup(basename(process_name)); -+ if (pname == NULL) -+ return (processes_found); -+ -+ /* Determine the size of the available data and allocate a buffer -+ * to hold it. Then fill the buffer using a second sysctl(3) -+ * call. -+ */ -+ mib[0] = CTL_KERN; -+ mib[1] = KERN_PROC; -+ mib[2] = KERN_PROC_ALL; -+ mib[3] = 0; -+ -+ if (sysctl(mib, 4, NULL, &len, NULL, 0) < 0) { -+ free(pname); -+ return (processes_found); -+ } -+ -+ p = (struct kinfo_proc *)malloc(len); -+ if (p == NULL) { -+ free(pname); -+ return (processes_found); -+ } -+ -+ if (sysctl(mib, 4, p, &len, NULL, 0) < 0) { -+ free(pname); -+ free(p); -+ return (processes_found); -+ } -+ -+ n_processes = len / sizeof(struct kinfo_proc); -+ -+ /* Get the maximum process arguments size and allocate a buffer to -+ * hold them. This buffer is needed only if arguments are to be -+ * checked. -+ */ -+ if (match_argv == 1) { -+ len = sizeof(argmax); -+ mib[0] = CTL_KERN; -+ mib[1] = KERN_ARGMAX; -+ if (sysctl(mib, 2, &argmax, &len, NULL, 0) < 0) { -+ free(pname); -+ free(p); -+ return (processes_found); -+ } -+ -+ args = (char *)malloc(sizeof(char) * argmax); -+ if (args == NULL) { -+ free(pname); -+ free(p); -+ return (processes_found); -+ } -+ } -+ -+ mib[0] = CTL_KERN; -+ mib[1] = KERN_PROCARGS2; -+ -+ for (i = 0; i < n_processes; i++) { -+ if (p[i].kp_proc.p_pid != own_pid) { -+ if (strncmp(pname, p[i].kp_proc.p_comm, MAXCOMLEN + 1) == 0) { -+ (void)printf("%d ", (int)p[i].kp_proc.p_pid); -+ processes_found++; -+ -+ } else if (match_argv == 1) { -+ len = (size_t)argmax; -+ mib[2] = (int)(p[i].kp_proc.p_pid); -+ -+ if (sysctl(mib, 3, args, &len, NULL, 0) < 0) -+ continue; -+ -+ /* Get argc and advance p_args. -+ */ -+ p_args = args; -+ argc = ((int *)p_args)[0]; -+ p_args += sizeof(argc); -+ -+ /* Skip over exec_path and terminating zero. -+ */ -+ while (p_args < &args[len] && p_args[0] != '\0') -+ p_args++; -+ while (p_args < &args[len] && p_args[0] == '\0') -+ p_args++; -+ -+ /* Check each argument in args against pname. Skip over -+ * trailing white-space in pname after each argument. -+ */ -+ p_pname = pname; -+ for (j = 0; j < argc && p_args < &args[len]; j++) { -+ s = p_args; -+ while (p_args < &args[len] && p_args[0] != '\0') -+ p_args++; -+ while (p_args < &args[len] && p_args[0] == '\0') -+ p_args++; -+ if (p_args >= &p_args[len]) -+ break; -+ -+ if (j == 0) { -+ if (strncmp(p_pname, basename(s), strlen(s)) != 0) -+ continue; -+ } else { -+ if (strncmp(p_pname, s, strlen(s)) != 0) -+ continue; -+ } -+ -+ p_pname += strlen(s); -+ while(p_pname < &pname[strlen(pname)] && isspace(p_pname[0])) -+ p_pname++; -+ } -+ -+ if (strlen(p_pname) > 0) -+ continue; -+ -+ (void)printf("%d ", (int)p[i].kp_proc.p_pid); -+ processes_found++; -+ -+ /* The FreeBSD code breaks here. So with the "-x" option, -+ * only one process will be reported. Is this correct? -+ */ -+ break; -+ } -+ } -+ } -+ -+ if (args != NULL) -+ free(args); -+ free(pname); -+ free(p); - -- if (process_name == NULL) -- return 0; -- -- if ((pname = strdup(basename(process_name))) == NULL) -- return 0; -- -- if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, NULL)) == NULL) { -- free(pname); -- (void)errx(1, "%s", kvm_geterr(kd)); -- } else { -- p = kvm_getprocs(kd, KERN_PROC_PROC, 0, &n_processes); -- for (i = 0; i<n_processes; i++) { -- if (p[i].ki_pid != own_pid) -- if (strncmp(pname, p[i].ki_comm, COMMLEN+1) == 0) { -- (void)printf("%d ", (int)p[i].ki_pid); -- processes_found++; -- } else if (match_argv == 1) { -- char **p_argv = NULL; -- -- if ((p_argv = kvm_getargv(kd, p+i, 0)) != NULL) -- if ( *p_argv != NULL ) -- if (strcmp(pname, basename(*p_argv)) == 0) { -- (void)printf("%d ", (int)p[i].ki_pid); -- processes_found++; -- break; -- } -- } -- } -- -- kvm_close(kd); -- free(pname); -- } -- -- return (processes_found); -+ return (processes_found); - } - - static void diff --git a/sys-process/pidof-bsd/files/pidof-bsd-20050501-firstarg.patch b/sys-process/pidof-bsd/files/pidof-bsd-20050501-firstarg.patch deleted file mode 100644 index dfb15ae7b9..0000000000 --- a/sys-process/pidof-bsd/files/pidof-bsd-20050501-firstarg.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: pidof/pidof.c -=================================================================== ---- pidof.orig/pidof.c -+++ pidof/pidof.c -@@ -67,7 +67,7 @@ get_pid_of_process(const char *process_n - char **p_argv = NULL; - - if ((p_argv = kvm_getargv(kd, p+i, 0)) != NULL) -- for (; *p_argv != NULL; p_argv++) -+ if ( *p_argv != NULL ) - if (strcmp(process_name, basename(*p_argv)) == 0) { - (void)printf("%d ", (int)p[i].ki_pid); - processes_found++; diff --git a/sys-process/pidof-bsd/files/pidof-bsd-20050501-gfbsd.patch b/sys-process/pidof-bsd/files/pidof-bsd-20050501-gfbsd.patch deleted file mode 100644 index 8309425d70..0000000000 --- a/sys-process/pidof-bsd/files/pidof-bsd-20050501-gfbsd.patch +++ /dev/null @@ -1,128 +0,0 @@ -? .pidof.c.swp -? pidof -? pidof.core -Index: pidof.c -=================================================================== -RCS file: /cvsroot/bmp-plugins/pidof/pidof.c,v -retrieving revision 1.4 -diff -u -r1.4 pidof.c ---- pidof.c 1 May 2005 16:26:19 -0000 1.4 -+++ pidof.c 13 Sep 2005 16:11:08 -0000 -@@ -26,6 +26,7 @@ - * $Id: pidof-bsd-20050501-gfbsd.patch,v 1.1 2006/04/01 17:01:15 flameeyes Exp $ - */ - -+#include <unistd.h> - #include <stdio.h> - #include <string.h> - #include <err.h> -@@ -37,56 +38,91 @@ - #include <fcntl.h> - #include <stdlib.h> - #include <sysexits.h> -+#include <libgen.h> - --static int get_pid_of_process(char *process_name); -+static int get_pid_of_process(const char *process_name); - static void usage(void); - -+static int match_argv; -+static pid_t own_pid; -+ - static int --get_pid_of_process(char *process_name) -+get_pid_of_process(const char *process_name) - { - static kvm_t *kd = NULL; - struct kinfo_proc *p; -- int i, n_processes, processes_found; -- -- processes_found = 0; -+ int i, n_processes, -+ processes_found = 0; - - if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, "kvm_open")) == NULL) - (void)errx(1, "%s", kvm_geterr(kd)); - else { - p = kvm_getprocs(kd, KERN_PROC_PROC, 0, &n_processes); -- for (i = 0; i<n_processes; i++) -- if (strncmp(process_name, p[i].ki_comm, COMMLEN+1) == 0) { -- (void)printf("%d ", (int)p[i].ki_pid); -- processes_found++; -- } -+ for (i = 0; i<n_processes; i++) { -+ if (p[i].ki_pid != own_pid) -+ if (strncmp(process_name, p[i].ki_comm, COMMLEN+1) == 0) { -+ (void)printf("%d ", (int)p[i].ki_pid); -+ processes_found++; -+ } else if (match_argv == 1) { -+ char **p_argv = NULL; -+ -+ if ((p_argv = kvm_getargv(kd, p+i, 0)) != NULL) -+ for (; *p_argv != NULL; p_argv++) -+ if (strcmp(process_name, basename(*p_argv)) == 0) { -+ (void)printf("%d ", (int)p[i].ki_pid); -+ processes_found++; -+ break; -+ } -+ } -+ } - - kvm_close(kd); - } -- -- return processes_found; -+ -+ return (processes_found); - } - - static void - usage() - { - -- (void)fprintf(stderr, "usage: pidof name1 name2 ...\n"); -+ (void)fprintf(stderr, "usage: pidof [-x] name1 name2 ...\n"); - exit(EX_USAGE); - } - - int - main(int argc, char **argv) - { -- int i, procs_found; -+ int i, procs_found, -+ ch; - - procs_found = 0; -+ match_argv = 0; - -- if (argc <= 1) -- usage(); -+ own_pid = getpid(); -+ -+ while ((ch = getopt(argc, argv, "x")) != -1) { -+ switch (ch) { -+ case 'x': -+ match_argv = 1; -+ break; -+ case '?': -+ default: -+ usage(); -+ break; -+ } -+ } -+ argc -= optind; -+ argv += optind; - -- for (i = 1; i<argc; procs_found += get_pid_of_process(argv[i++])); -+ if (argc < 1) -+ usage(); -+ -+ for (i = 0; i<argc; i++) { -+ procs_found += get_pid_of_process(argv[i]); -+ } - - (void)printf("\n"); - -- return (procs_found > 0) ? 0 : 1; -+ return ((procs_found > 0) ? 0 : 1); - } diff --git a/sys-process/pidof-bsd/files/pidof-bsd-20050501-netbsd.patch b/sys-process/pidof-bsd/files/pidof-bsd-20050501-netbsd.patch deleted file mode 100644 index f6cff6eadd..0000000000 --- a/sys-process/pidof-bsd/files/pidof-bsd-20050501-netbsd.patch +++ /dev/null @@ -1,43 +0,0 @@ ---- pidof.c.orig 2008-01-24 03:32:39 +0100 -+++ pidof.c 2008-01-24 04:09:12 +0100 -@@ -50,7 +50,7 @@ static int - get_pid_of_process(const char *process_name) - { - static kvm_t *kd = NULL; -- struct kinfo_proc *p; -+ struct kinfo_proc2 *p; - int i, n_processes, - processes_found = 0; - char *pname = NULL; -@@ -61,23 +61,24 @@ get_pid_of_process(const char *process_n - if ((pname = strdup(basename(process_name))) == NULL) - return 0; - -- if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, NULL)) == NULL) { -+ if ((kd = kvm_open(NULL, NULL, NULL, KVM_NO_FILES, NULL)) == NULL) { - free(pname); -+ //NOTE: this is potentially buggy, since kd == NULL - (void)errx(1, "%s", kvm_geterr(kd)); - } else { -- p = kvm_getprocs(kd, KERN_PROC_PROC, 0, &n_processes); -+ p = kvm_getproc2(kd, KERN_PROC_ALL, 0, sizeof(struct kinfo_proc2), &n_processes); - for (i = 0; i<n_processes; i++) { -- if (p[i].ki_pid != own_pid) -- if (strncmp(pname, p[i].ki_comm, COMMLEN+1) == 0) { -- (void)printf("%d ", (int)p[i].ki_pid); -+ if (p[i].p_pid != own_pid) -+ if (strncmp(pname, p[i].p_comm, KI_MAXCOMLEN/*+1*/) == 0) { -+ (void)printf("%d ", (int)p[i].p_pid); - processes_found++; - } else if (match_argv == 1) { - char **p_argv = NULL; - -- if ((p_argv = kvm_getargv(kd, p+i, 0)) != NULL) -+ if ((p_argv = kvm_getargv2(kd, p+i, 0)) != NULL) - if ( *p_argv != NULL ) - if (strcmp(pname, basename(*p_argv)) == 0) { -- (void)printf("%d ", (int)p[i].ki_pid); -+ (void)printf("%d ", (int)p[i].p_pid); - processes_found++; - break; - } diff --git a/sys-process/pidof-bsd/files/pidof-bsd-20050501-pname.patch b/sys-process/pidof-bsd/files/pidof-bsd-20050501-pname.patch deleted file mode 100644 index 13e890c6a3..0000000000 --- a/sys-process/pidof-bsd/files/pidof-bsd-20050501-pname.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- a/pidof.c 2006-09-21 15:14:03 +0100 -+++ b/pidof.c 2006-09-21 15:13:47 +0100 -@@ -53,14 +53,22 @@ - struct kinfo_proc *p; - int i, n_processes, - processes_found = 0; -+ char *pname = NULL; -+ -+ if (process_name == NULL) -+ return 0; -+ -+ if ((pname = strdup(basename(process_name))) == NULL) -+ return 0; - -- if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, "kvm_open")) == NULL) -- (void)errx(1, "%s", kvm_geterr(kd)); -- else { -+ if ((kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, NULL)) == NULL) { -+ free(pname); -+ (void)errx(1, "%s", kvm_geterr(kd)); -+ } else { - p = kvm_getprocs(kd, KERN_PROC_PROC, 0, &n_processes); - for (i = 0; i<n_processes; i++) { - if (p[i].ki_pid != own_pid) -- if (strncmp(process_name, p[i].ki_comm, COMMLEN+1) == 0) { -+ if (strncmp(pname, p[i].ki_comm, COMMLEN+1) == 0) { - (void)printf("%d ", (int)p[i].ki_pid); - processes_found++; - } else if (match_argv == 1) { -@@ -68,7 +76,7 @@ - - if ((p_argv = kvm_getargv(kd, p+i, 0)) != NULL) - if ( *p_argv != NULL ) -- if (strcmp(process_name, basename(*p_argv)) == 0) { -+ if (strcmp(pname, basename(*p_argv)) == 0) { - (void)printf("%d ", (int)p[i].ki_pid); - processes_found++; - break; -@@ -77,6 +85,7 @@ - } - - kvm_close(kd); -+ free(pname); - } - - return (processes_found); diff --git a/sys-process/pidof-bsd/metadata.xml b/sys-process/pidof-bsd/metadata.xml deleted file mode 100644 index a00f3aeb1f..0000000000 --- a/sys-process/pidof-bsd/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> -<maintainer type="project"> - <email>bsd@gentoo.org</email> - <name>BSD Project</name> -</maintainer> -</pkgmetadata> diff --git a/sys-process/pidof-bsd/pidof-bsd-20050501-r4.ebuild b/sys-process/pidof-bsd/pidof-bsd-20050501-r4.ebuild deleted file mode 100644 index ba637cccad..0000000000 --- a/sys-process/pidof-bsd/pidof-bsd-20050501-r4.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-process/pidof-bsd/pidof-bsd-20050501-r4.ebuild,v 1.1 2012/05/24 13:10:40 ryao Exp $ - -inherit base toolchain-funcs - -DESCRIPTION="pidof(1) utility for *BSD" -HOMEPAGE="http://people.freebsd.org/~novel/pidof.html" -SRC_URI="mirror://gentoo/${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~ppc-macos ~x64-macos ~x86-macos" -IUSE="" - -DEPEND="!prefix? ( sys-freebsd/freebsd-mk-defs )" -RDEPEND="!sys-process/psmisc" - -S="${WORKDIR}/pidof" - -PATCHES=( "${FILESDIR}/${P}-gfbsd.patch" - "${FILESDIR}/${P}-firstarg.patch" - "${FILESDIR}/${P}-pname.patch" ) - -[[ ${CHOST} == *-darwin* ]] && \ - PATCHES=( ${PATCHES[@]} "${FILESDIR}"/${P}-darwin.patch ) -[[ ${CHOST} == *-netbsd* ]] && \ - PATCHES=( ${PATCHES[@]} "${FILESDIR}"/${P}-netbsd.patch ) - -src_compile() { - local libs="" - [[ ${CHOST} == *-*bsd* ]] && libs="-lkvm" - $(tc-getCC) -o pidof pidof.c ${libs} || die -} - -src_install() { - into / - dobin pidof -} |