Edit report at https://bugs.php.net/bug.php?id=61197&edit=1
ID: 61197
User updated by: markn at ieee dot org
Reported by: markn at ieee dot org
Summary: SNMPv3 cannot connect after reboot
Status: Open
Type: Bug
Package: SNMP related
Operating System: Linux
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
wrong email address. bad day at the keyboard.
Previous Comments:
------------------------------------------------------------------------
[2012-02-27 21:17:10] markn at ieee dot org
Description:
------------
Under certain conditions, it is not possible to reconnect to a device that has
rebooted while using SNMPv3.
This happens if a PHP script is connecting with authNoPriv or authPriv.
After the device reboots, PHP's SNMPv3 routines do not take note of the
modified
msgAuthoritativeEngineReboots count and the modified msgAuthoritativeEngineTime
values - they continue trying to use the old values, and as a result are never
able to communicate after a reboot.
During device maintenance, it is often necessary to reboot a device - such as
after a firmware upgrade. So this is actually something that is needed.
Basically, there needs to be a way to discard existing session information.
Test script:
---------------
<?php
for ( ; ; ) {
$result =
snmp3_get( "192.168.1.1",
"admin",
"authNoPriv",
"MD5",
"Password01",
"DES",
"ciscocisco",
"1.3.6.1.2.1.47.1.1.1.1.2.1",
500000,
0 );
var_dump( $result );
sleep(30);
}
?>
Expected result:
----------------
Run this script, verify that it successfully reads the data. Reboot the device
and
see that it is unable to read the data after the device is back up. Use
Wireshark
to observe that the boot count and time values have changed, but the PHP SNMP
routines ignore the new values.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=61197&edit=1