]> granicus.if.org Git - php/commitdiff
Fix SNMP::setSecurity() arginfo (Fixes bug #70476)
authorjubianchi <contact@jubianchi.fr>
Fri, 11 Sep 2015 15:54:31 +0000 (17:54 +0200)
committerStanislav Malyshev <stas@php.net>
Sun, 18 Oct 2015 21:48:25 +0000 (14:48 -0700)
ext/snmp/snmp.c
ext/snmp/tests/reflection.phpt [new file with mode: 0644]

index a943b2fc067ce2fb82d6f9eee4010bac497ed030..1d43cd9e205ee292e41185e6cba43c5bd1206820 100644 (file)
@@ -346,7 +346,6 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_snmp_setSecurity, 0, 0, 8)
        ZEND_ARG_INFO(0, priv_passphrase)
        ZEND_ARG_INFO(0, contextName)
        ZEND_ARG_INFO(0, contextEngineID)
-       ZEND_ARG_INFO(0, )
 ZEND_END_ARG_INFO()
 
 ZEND_BEGIN_ARG_INFO_EX(arginfo_snmp_get, 0, 0, 1)
@@ -2343,16 +2342,16 @@ static int php_snmp_write_exceptions_enabled(php_snmp_object *snmp_object, zval
 
 /* {{{ php_snmp_class_methods[] */
 static zend_function_entry php_snmp_class_methods[] = {
-       PHP_ME(snmp,     __construct,                   arginfo_snmp_create,            ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     close,                         arginfo_snmp_void,              ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     setSecurity,                   arginfo_snmp_setSecurity,       ZEND_ACC_PUBLIC)
-
-       PHP_ME(snmp,     get,                           arginfo_snmp_get,               ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     getnext,                       arginfo_snmp_get,               ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     walk,                          arginfo_snmp_walk,              ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     set,                           arginfo_snmp_set,               ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     getErrno,                      arginfo_snmp_void,              ZEND_ACC_PUBLIC)
-       PHP_ME(snmp,     getError,                      arginfo_snmp_void,              ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     __construct,           arginfo_snmp_create,            ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     close,                         arginfo_snmp_void,                      ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     setSecurity,           arginfo_snmp_setSecurity,       ZEND_ACC_PUBLIC)
+
+       PHP_ME(snmp,     get,                           arginfo_snmp_get,                       ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     getnext,                       arginfo_snmp_get,                       ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     walk,                          arginfo_snmp_walk,                      ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     set,                           arginfo_snmp_set,                       ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     getErrno,                      arginfo_snmp_void,                      ZEND_ACC_PUBLIC)
+       PHP_ME(snmp,     getError,                      arginfo_snmp_void,                      ZEND_ACC_PUBLIC)
 
        PHP_FE_END
 };
diff --git a/ext/snmp/tests/reflection.phpt b/ext/snmp/tests/reflection.phpt
new file mode 100644 (file)
index 0000000..91e9876
--- /dev/null
@@ -0,0 +1,103 @@
+--TEST--
+Test SNMP Reflection
+--SKIPIF--
+<?php if (!extension_loaded('snmp')) die ("skip no snmp extension"); ?>
+--FILE--
+<?php
+
+/* ALL PHP_ME user callable methods of SNMP class should appear here */
+
+reflection::export(new reflectionmethod('snmp', '__construct'));
+reflection::export(new reflectionmethod('snmp', 'close'));
+reflection::export(new reflectionmethod('snmp', 'setSecurity'));
+reflection::export(new reflectionmethod('snmp', 'get'));
+reflection::export(new reflectionmethod('snmp', 'getnext'));
+reflection::export(new reflectionmethod('snmp', 'walk'));
+reflection::export(new reflectionmethod('snmp', 'set'));
+reflection::export(new reflectionmethod('snmp', 'getErrno'));
+reflection::export(new reflectionmethod('snmp', 'getError'));
+
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+Method [ <internal:snmp, ctor> public method __construct ] {
+
+  - Parameters [5] {
+    Parameter #0 [ <required> $version ]
+    Parameter #1 [ <required> $host ]
+    Parameter #2 [ <required> $community ]
+    Parameter #3 [ <optional> $timeout ]
+    Parameter #4 [ <optional> $retries ]
+  }
+}
+
+Method [ <internal:snmp> public method close ] {
+
+  - Parameters [0] {
+  }
+}
+
+Method [ <internal:snmp> public method setSecurity ] {
+
+  - Parameters [8] {
+    Parameter #0 [ <required> $session ]
+    Parameter #1 [ <required> $sec_level ]
+    Parameter #2 [ <required> $auth_protocol ]
+    Parameter #3 [ <required> $auth_passphrase ]
+    Parameter #4 [ <required> $priv_protocol ]
+    Parameter #5 [ <required> $priv_passphrase ]
+    Parameter #6 [ <required> $contextName ]
+    Parameter #7 [ <required> $contextEngineID ]
+  }
+}
+
+Method [ <internal:snmp> public method get ] {
+
+  - Parameters [2] {
+    Parameter #0 [ <required> $object_id ]
+    Parameter #1 [ <optional> $use_orignames ]
+  }
+}
+
+Method [ <internal:snmp> public method getnext ] {
+
+  - Parameters [2] {
+    Parameter #0 [ <required> $object_id ]
+    Parameter #1 [ <optional> $use_orignames ]
+  }
+}
+
+Method [ <internal:snmp> public method walk ] {
+
+  - Parameters [4] {
+    Parameter #0 [ <required> $object_id ]
+    Parameter #1 [ <required> $suffix_keys ]
+    Parameter #2 [ <required> $max_repetitions ]
+    Parameter #3 [ <required> $non_repeaters ]
+  }
+}
+
+Method [ <internal:snmp> public method set ] {
+
+  - Parameters [3] {
+    Parameter #0 [ <required> $object_id ]
+    Parameter #1 [ <required> $type ]
+    Parameter #2 [ <required> $value ]
+  }
+}
+
+Method [ <internal:snmp> public method getErrno ] {
+
+  - Parameters [0] {
+  }
+}
+
+Method [ <internal:snmp> public method getError ] {
+
+  - Parameters [0] {
+  }
+}
+
+===DONE===