iliaa Mon Jun 19 02:19:45 2006 UTC
Modified files:
/php-src/ext/posix config.m4 php_posix.h posix.c
Log:
MFB: Added posix_initgroups() function.
http://cvs.php.net/viewcvs.cgi/php-src/ext/posix/config.m4?r1=1.12&r2=1.13&diff_format=u
Index: php-src/ext/posix/config.m4
diff -u php-src/ext/posix/config.m4:1.12 php-src/ext/posix/config.m4:1.13
--- php-src/ext/posix/config.m4:1.12 Thu Jun 30 13:39:42 2005
+++ php-src/ext/posix/config.m4 Mon Jun 19 02:19:45 2006
@@ -1,5 +1,5 @@
dnl
-dnl $Id: config.m4,v 1.12 2005/06/30 13:39:42 sniper Exp $
+dnl $Id: config.m4,v 1.13 2006/06/19 02:19:45 iliaa Exp $
dnl
PHP_ARG_ENABLE(posix,whether to enable POSIX-like functions,
@@ -11,5 +11,5 @@
AC_CHECK_HEADERS(sys/mkdev.h)
- AC_CHECK_FUNCS(seteuid setegid setsid getsid setpgid getpgid ctermid mkfifo
mknod getrlimit getlogin getgroups makedev)
+ AC_CHECK_FUNCS(seteuid setegid setsid getsid setpgid getpgid ctermid mkfifo
mknod getrlimit getlogin getgroups makedev initgroups)
fi
http://cvs.php.net/viewcvs.cgi/php-src/ext/posix/php_posix.h?r1=1.19&r2=1.20&diff_format=u
Index: php-src/ext/posix/php_posix.h
diff -u php-src/ext/posix/php_posix.h:1.19 php-src/ext/posix/php_posix.h:1.20
--- php-src/ext/posix/php_posix.h:1.19 Sun Jan 1 13:09:53 2006
+++ php-src/ext/posix/php_posix.h Mon Jun 19 02:19:45 2006
@@ -17,7 +17,7 @@
*/
-/* $Id: php_posix.h,v 1.19 2006/01/01 13:09:53 sniper Exp $ */
+/* $Id: php_posix.h,v 1.20 2006/06/19 02:19:45 iliaa Exp $ */
#ifndef PHP_POSIX_H
#define PHP_POSIX_H
@@ -110,6 +110,10 @@
PHP_FUNCTION(posix_getrlimit);
#endif
+#ifdef HAVE_INITGROUPS
+PHP_FUNCTION(posix_initgroups);
+#endif
+
PHP_FUNCTION(posix_get_last_error);
PHP_FUNCTION(posix_strerror);
http://cvs.php.net/viewcvs.cgi/php-src/ext/posix/posix.c?r1=1.75&r2=1.76&diff_format=u
Index: php-src/ext/posix/posix.c
diff -u php-src/ext/posix/posix.c:1.75 php-src/ext/posix/posix.c:1.76
--- php-src/ext/posix/posix.c:1.75 Tue Jun 13 13:12:19 2006
+++ php-src/ext/posix/posix.c Mon Jun 19 02:19:45 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: posix.c,v 1.75 2006/06/13 13:12:19 dmitry Exp $ */
+/* $Id: posix.c,v 1.76 2006/06/19 02:19:45 iliaa Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -134,6 +134,9 @@
PHP_FE(posix_get_last_error, NULL)
PHP_FALIAS(posix_errno, posix_get_last_error, NULL)
PHP_FE(posix_strerror,
NULL)
+#ifdef HAVE_INITGROUPS
+ PHP_FE(posix_initgroups, NULL)
+#endif
{NULL, NULL, NULL}
};
@@ -144,7 +147,7 @@
static PHP_MINFO_FUNCTION(posix)
{
php_info_print_table_start();
- php_info_print_table_row(2, "Revision", "$Revision: 1.75 $");
+ php_info_print_table_row(2, "Revision", "$Revision: 1.76 $");
php_info_print_table_end();
}
/* }}} */
@@ -1050,6 +1053,22 @@
#endif
+/* {{{ proto bool initgroups(string name, int base_group_id)
+ Calculate the group access list for the user specified in name. */
+PHP_FUNCTION(posix_initgroups)
+{
+ long basegid;
+ char *name;
+ int name_len;
+
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sl", &name,
&name_len, &basegid) == FAILURE) {
+ RETURN_FALSE;
+ }
+
+ RETURN_BOOL(!initgroups((const char *)name, basegid));
+}
+/* }}} */
+
/*
* Local variables:
* tab-width: 4
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php