Set an SNMP object
(PHP 4, PHP 5)
Code Examples / Notes » snmpset
The "type" parameter must be one of the following, depending on the type of
variable to set on the SNMP host:
u unsigned INTEGER
x HEX STRING
d DECIMAL STRING
If OPAQUE_SPECIAL_TYPES was defined while compiling the SNMP library, the
following are also valid:
U unsigned int64
I signed int64
As an example, using "i" would set an integer, and "s" would set a string. If the SNMP host rejects the data type, you might get the following message: "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length."
If you specify an unknown or invalid OID, you might get a "Could not add variable" message. When specifying an absolute OID (one that is already resolved) that is completely numeric, prepend it with a period. For example, an OID that could enable/disable Ethernet ports on an Asante hub might be "220.127.116.11.18.104.22.168.22.214.171.124.6.4.0", but you would need to use ".126.96.36.199.188.8.131.52.184.108.40.206.6.4.0" in the OID parameter so that the SNMP library won't try to resolve an already resolved OID. Friendly, unresolved OIDs do not need the period prepended, such as "system.SysContact.0"
deivis dot jakstas
If you setting hex values correct format is:
snmpset($source_ip,$community,"$oid","x","10 10 10 10");
If you have importet the MIB-Files into the MIB Tree with "snmp_read_mib" you may use '=' as the "type" parameter.
In this case the type will also be taken from the loaded mib file. (Octest strings will be interpreted like strings though)
Comes in handy for a more dynamic use of snmpset.