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;
-
-    INT        timeout = TIMEOUT;
-    INT        retries = 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

Reply via email to