kalle Fri Nov 7 11:05:09 2008 UTC
Modified files:
/php-src/ext/snmp winsnmp.c
Log:
New parameter parsing API
http://cvs.php.net/viewvc.cgi/php-src/ext/snmp/winsnmp.c?r1=1.19&r2=1.20&diff_format=u
Index: php-src/ext/snmp/winsnmp.c
diff -u php-src/ext/snmp/winsnmp.c:1.19 php-src/ext/snmp/winsnmp.c:1.20
--- php-src/ext/snmp/winsnmp.c:1.19 Thu Sep 27 18:28:42 2007
+++ php-src/ext/snmp/winsnmp.c Fri Nov 7 11:05:09 2008
@@ -57,34 +57,32 @@
/* {{{ _php_snmp
*/
-void _php_snmp(INTERNAL_FUNCTION_PARAMETERS, int st) {
- zval *a1, *a2, *a3;
- INT operation;
-LPSTR agent;
-LPSTR community;
-RFC1157VarBindList variableBindings;
-LPSNMP_MGR_SESSION session;
-
-INTtimeout = TIMEOUT;
-INTretries = RETRIES;
-
-BYTE requestType;
-AsnInteger errorStatus;
-AsnInteger errorIndex;
-AsnObjectIdentifier oid;
- char*chkPtr = NULL;
+void _php_snmp(INTERNAL_FUNCTION_PARAMETERS, int st)
+{
+ INT operation;
- if (zend_get_parameters_ex(3, &a1, &a2, &a3) == FAILURE) {
- WRONG_PARAM_COUNT;
+ RFC1157VarBindList variableBindings;
+ LPSNMP_MGR_SESSION session;
+
+ char *agent, *community, *object_id;
+ int agent_len, community_len, object_id_len;
+
+ INT timeout = TIMEOUT;
+ INT retries = RETRIES;
+
+ BYTE requestType;
+ AsnInteger errorStatus;
+ AsnInteger errorIndex;
+ AsnObjectIdentifier oid;
+
+ char *chkPtr = NULL;
+
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sss", &agent,
&agent_len, &community, &community_len, &object_id, &object_id_len) == FAILURE)
{
+return;
}
- convert_to_string_ex(a1);
- convert_to_string_ex(a2);
- convert_to_string_ex(a3);
-
- agent=Z_STRVAL_PP(a1);
- community=Z_STRVAL_PP(a2);
- operation=st;
- SnmpMgrStrToOid(Z_STRVAL_PP(a3), &oid);
+
+ operation = st;
+ SnmpMgrStrToOid(object_id, &oid);
/*
I've limited this to only one oid, but we can create a
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php