]> granicus.if.org Git - php/commitdiff
MFB: fix posix_getsid() & posix_getpgid()
authorAntony Dovgal <tony2001@php.net>
Fri, 28 Jan 2005 00:27:48 +0000 (00:27 +0000)
committerAntony Dovgal <tony2001@php.net>
Fri, 28 Jan 2005 00:27:48 +0000 (00:27 +0000)
ext/posix/posix.c

index 5cb09352525a5fd9d5a3032f655c31b1b736ffd2..81922fb8b1835d4c81c3f40e50840e6fc605976a 100644 (file)
@@ -377,7 +377,16 @@ PHP_FUNCTION(posix_setpgid)
 #ifdef HAVE_GETPGID
 PHP_FUNCTION(posix_getpgid)
 {
-       PHP_POSIX_SINGLE_ARG_FUNC(getpgid);
+       long val;
+       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &val) == FAILURE) {
+               return;
+       }
+       
+       if ((val = getpgid(val)) < 0) {
+               POSIX_G(last_error) = errno;
+               RETURN_FALSE;
+       }
+       RETURN_LONG(val);
 }
 #endif
 /* }}} */
@@ -387,7 +396,16 @@ PHP_FUNCTION(posix_getpgid)
 #ifdef HAVE_GETSID
 PHP_FUNCTION(posix_getsid)
 {
-       PHP_POSIX_SINGLE_ARG_FUNC(getsid);
+       long val;
+       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &val) == FAILURE) {
+               return;
+       }
+       
+       if ((val = getsid(val)) < 0) {
+               POSIX_G(last_error) = errno;
+               RETURN_FALSE;
+       }
+       RETURN_LONG(val);
 }
 #endif
 /* }}} */