Edit report at http://bugs.php.net/bug.php?id=46065&edit=1

 ID:                 46065
 Updated by:         [email protected]
 Reported by:        php at painfullscratch dot nl
 Summary:            snmp_set_quick_print() persists between requests
-Status:             Open
+Status:             Feedback
 Type:               Bug
 Package:            SNMP related
 Operating System:   *
 PHP Version:        5.*, 6
-Assigned To:        
+Assigned To:        lytboris
 Block user comment: N
 Private report:     N

 New Comment:

Please try using this snapshot:

  http://snaps.php.net/php-trunk-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/

Please check OO API from trunk. It has an option to specify session-wise
OID output format and more.



Sources in trunk can be compiled against downto php 5.2


Previous Comments:
------------------------------------------------------------------------
[2009-09-08 21:16:19] larryjadams at comcast dot net

The snmp module needs a bit of rededesign.  It should handle many of the
commands from the native calls, like multiple OID get's in a single
array, in other words, make the OID a mixed type for a get request.



Also, the snmp functions should require a resource (aka snmp session) in
order to work, just like is done in the API, for which it would be
based.



In that case, to setup a quick print, you start a session, receive a
pointer to a (structure/resource) in return and then all subsequent
calls need to also pass the resource to the function.  Once you are
done, you need to close the sessions.



This will have to be a new class of calls though as simply changing
thing around will make life difficult for everyone.



TheWitness

------------------------------------------------------------------------
[2008-10-24 08:56:21] [email protected]

It's pretty simple issue, propably need to add some netsnmp shutdown
function in RINIT which clears all the settings between requests.

------------------------------------------------------------------------
[2008-09-12 13:27:09] php at painfullscratch dot nl

Description:
------------
When PHP runs under Apache and snmp_set_quick_print(TRUE) is issued, the
behavior of all SNMP-related functions will be "quick print" for the
lifetime of the PID. 



NET-SNMP Support => enabled

NET-SNMP Version => 5.4.1

PHP version: 5.2.4



There are two possibilities:

 1) This behavior is "by design": If this is the case I think the manual
page for snmp_set_quick_print() needs a warning for this behavior.

 2) This is a bug: For each PID the behavior should be (re)set to the
default behavior after execution of the script.



Reproduce code:
---------------
pet@workmate:/tmp$ sudo /etc/init.d/apache2 restart > /dev/null 2>&1

pet@workmate:/tmp$ for (( i=0; i<5; i++ )) ; do links -dump
http://localhost/snmp_get_quick_print.php; done

   snmp_get_quick_print: '' | pid: '9402'

   snmp_get_quick_print: '' | pid: '9403'

   snmp_get_quick_print: '' | pid: '9404'

   snmp_get_quick_print: '' | pid: '9405'

   snmp_get_quick_print: '' | pid: '9406'

pet@workmate:/tmp$ links -dump
http://localhost/snmp_set_quick_print.php

   snmp_set_quick_print: '' | pid: '9406'

pet@workmate:/tmp$ for (( i=0; i<5; i++ )) ; do links -dump
http://localhost/snmp_get_quick_print.php; done

   snmp_get_quick_print: '' | pid: '9403'

   snmp_get_quick_print: '' | pid: '9404'

   snmp_get_quick_print: '' | pid: '9446'

   snmp_get_quick_print: '' | pid: '9405'

   snmp_get_quick_print: '1' | pid: '9406'



------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=46065&edit=1

Reply via email to