summaryrefslogtreecommitdiff
path: root/ext/snmp
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2013-03-22 08:32:53 +0100
committerOndřej Surý <ondrej@sury.org>2013-03-22 08:32:53 +0100
commitf21eff8954d5956842795ea5653a9a5b8d62caa3 (patch)
treeadbe3c3feb67f383afe32b3974794eb1d5ec8cc8 /ext/snmp
parent92984f18f6aee9c0f719febb9fc09a0c50262c2f (diff)
downloadphp-f21eff8954d5956842795ea5653a9a5b8d62caa3.tar.gz
Imported Upstream version 5.5.0~beta1upstream/5.5.0_beta1
Diffstat (limited to 'ext/snmp')
-rw-r--r--ext/snmp/snmp.c4
-rw-r--r--ext/snmp/tests/ipv6.phpt4
-rw-r--r--ext/snmp/tests/snmp-object.phpt20
3 files changed, 26 insertions, 2 deletions
diff --git a/ext/snmp/snmp.c b/ext/snmp/snmp.c
index 6f2f070f2..9789638c6 100644
--- a/ext/snmp/snmp.c
+++ b/ext/snmp/snmp.c
@@ -847,9 +847,9 @@ retry:
}
} else if (st & SNMP_USE_SUFFIX_AS_KEYS && st & SNMP_CMD_WALK) {
snprint_objid(buf2, sizeof(buf2), vars->name, vars->name_length);
- if (objid_query->vars[0].name_length <= vars->name_length && snmp_oid_compare(objid_query->vars[0].name, objid_query->vars[0].name_length, vars->name, objid_query->vars[0].name_length) == 0) {
+ if (rootlen <= vars->name_length && snmp_oid_compare(root, rootlen, vars->name, rootlen) == 0) {
buf2[0] = '\0';
- count = objid_query->vars[0].name_length;
+ count = rootlen;
while(count < vars->name_length){
sprintf(buf, "%lu.", vars->name[count]);
strcat(buf2, buf);
diff --git a/ext/snmp/tests/ipv6.phpt b/ext/snmp/tests/ipv6.phpt
index 12879416c..f5239e117 100644
--- a/ext/snmp/tests/ipv6.phpt
+++ b/ext/snmp/tests/ipv6.phpt
@@ -20,6 +20,10 @@ snmp_set_quick_print(false);
snmp_set_valueretrieval(SNMP_VALUE_PLAIN);
var_dump(snmpget($hostname6_port, $community, '.1.3.6.1.2.1.1.1.0'));
+var_dump(snmpget('[dead:beef::', $community, '.1.3.6.1.2.1.1.1.0'));
?>
--EXPECTF--
%unicode|string%(%d) "%s"
+
+Warning: snmpget(): malformed IPv6 address, closing square bracket missing in %s on line %d
+bool(false) \ No newline at end of file
diff --git a/ext/snmp/tests/snmp-object.phpt b/ext/snmp/tests/snmp-object.phpt
index 06b6492bd..522d417af 100644
--- a/ext/snmp/tests/snmp-object.phpt
+++ b/ext/snmp/tests/snmp-object.phpt
@@ -83,6 +83,19 @@ var_dump(gettype($z));
var_dump(count($z));
var_dump(key($z));
var_dump(array_shift($z));
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
+array_shift($z);
+var_dump(key($z));
var_dump($session->close());
echo "SNMPv3 (default security settings)\n";
@@ -194,6 +207,13 @@ string(5) "array"
int(%d)
string(3) "1.0"
string(%d) "%s"
+string(3) "2.0"
+string(3) "3.0"
+string(3) "4.0"
+string(3) "5.0"
+string(3) "6.0"
+string(3) "7.0"
+string(3) "8.0"
bool(true)
SNMPv3 (default security settings)
string(%d) "%S"