Loading...
compat-43/FreeBSD/killpg.c.patch /dev/null Libc-583
--- /dev/null
+++ Libc/Libc-583/compat-43/FreeBSD/killpg.c.patch
@@ -0,0 +1,30 @@
+--- killpg.c.orig	2005-01-26 12:24:56.000000000 -0800
++++ killpg.c	2005-01-26 12:23:37.000000000 -0800
+@@ -41,6 +41,16 @@
+ #include <signal.h>
+ #include <errno.h>
+ 
++int __kill(pid_t pid, int sig, int posix);
++
++#if __DARWIN_UNIX03
++#define	_PID1ERR	EPERM
++#define	_POSIXKILL	1
++#else	/* !__DARWIN_UNIX03 */
++#define	_PID1ERR	ESRCH
++#define	_POSIXKILL	0
++#endif	/* !__DARWIN_UNIX03 */
++
+ /*
+  * Backwards-compatible killpg().
+  */
+@@ -48,8 +58,8 @@
+ killpg(pid_t pgid, int sig)
+ {
+ 	if (pgid == 1) {
+-		errno = ESRCH;
++		errno = _PID1ERR;
+ 		return (-1);
+ 	}
+-	return (kill(-pgid, sig));
++	return (__kill(-pgid, sig, _POSIXKILL));
+ }