snmpset
(PHP 4, PHP 5)
snmpset — Set the value of an SNMP object
Descripción
$host
, string $community
, string $object_id
, string $type
, mixed $value
[, int $timeout = 1000000
[, int $retries = 5
]] )
snmpset() is used to set the value of an SNMP object
specified by the object_id.
Parámetros
-
host -
The hostname of the SNMP agent (server).
-
community -
The write community.
-
object_id -
The SNMP object id.
-
type -
MIB define el tipo de cada identificador de objeto. Debe indicarse con un único carácter de la siguiente lista.
tipos = Tipo adquirido a partir de MIB i INTEGER u INTEGER s STRING x HEX STRING d DECIMAL STRING n NULLOBJ o OBJID t TIMETICKS a IPADDRESS b BITS Si se definió
OPAQUE_SPECIAL_TYPESal compilar la biblioteca SNMP, los siguientes valores serán también válidos:tipos U int64 sin signo I int64 con signo F float D double La mayoría, utilizarán su correspondiente tipo ASN.1. 's', 'x', 'd' y 'b' son diferentes formas de especificar un valor de OCTET STRING, y el tipo sin signo 'u' se usa también para manejar valores Gauge32.
Si se cargan los ficheros MIB en el árbol MIB con "snmp_read_mib" o con la configuración de libsnmp, se puede usar '=' como parámetro
typepara todos los id de objetos, ya que se podrá leer automáticamente el tipo a partir del MIB.Tenga presente que hay dos formas de asigar a una variable los tipos BITS, como por ejemplo. "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":
- Usando el tipo "b" y una lista numérica de bits. No se recomienda usar este método, ya que una consulta GET para un mismo OID devolvería, por ejemplo 0xF8.
- Usando el tipo "x" y un número hexadecimal, pero si el prefijo "0x".
Revise el apartado de ejemplos para más detalles.
-
value -
The new value.
-
timeout -
The number of microseconds until the first timeout.
-
retries -
The number of times to retry if timeouts occur.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error.
If the SNMP host rejects the data type, an E_WARNING message like "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." is shown. If an unknown or invalid OID is specified the warning probably reads "Could not add variable".
Ejemplos
Ejemplo #1 Using snmpset()
<?php
snmpset("localhost", "public", "IF-MIB::ifAlias.3", "s", "foo");
?>
Ejemplo #2 Using snmpset() for setting BITS SNMP object id
<?php
snmpset("localhost", "public", 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// or
snmpset("localhost", "public", 'FOO-MIB::bar.42', 'x', 'F0');
?>