(PHP 4, PHP 5, PHP 7)
snmp3_set — Set the value of an SNMP object
$host
, string $sec_name
, string $sec_level
, string $auth_protocol
, string $auth_passphrase
, string $priv_protocol
, string $priv_passphrase
, string $object_id
, string $type
, string $value
[, int $timeout = 1000000
[, int $retries = 5
]] ) : bool
snmp3_set() is used to set the value of an SNMP object
specified by the object_id.
Even if the security level does not use an auth or priv protocol/password valid values have to be specified.
hostThe hostname of the SNMP agent (server).
sec_namethe security name, usually some kind of username
sec_levelthe security level (noAuthNoPriv|authNoPriv|authPriv)
auth_protocolthe authentication protocol (MD5 or SHA)
auth_passphrasethe authentication pass phrase
priv_protocolthe privacy protocol (DES or AES)
priv_passphrasethe privacy pass phrase
object_idThe SNMP object id.
typeRegulile MIB definesc tipul fiecărui identificator al obiectului. El trebuie specificat printr-un singur caracter din lista ce urmează.
| = | Tipul este extras din MIB |
| i | INTEGER |
| u | INTEGER |
| s | STRING |
| x | HEX STRING |
| d | DECIMAL STRING |
| n | NULLOBJ |
| o | OBJID |
| t | TIMETICKS |
| a | IPADDRESS |
| b | BITS |
Dacă a fost definit OPAQUE_SPECIAL_TYPES la compilarea
bibliotecii SNMP, următoarele de asemenea sunt valide:
| U | int64 fără semn |
| I | int64 cu semn |
| F | float |
| D | double |
Majoritatea acestora vor utiliza tipul cel mai evident în corespondență cu ASN.1. 's', 'x', 'd' și 'b' sunt toate diferite modalități de a specifica o valoare OCTET STRING, iar tipul 'u' fără semn este utilizat și pentru a menține valori Gauge32.
Dacă fișierele MIB sunt încărcate în arborele MIB cu "snmp_read_mib" sau
specificându-le în configurația libsnmp, '=' poate fi utilizat în
calitate de parametru type pentru toate identificatoarele
obiectelor, deoarece tipul poate fi apoi citit automat din MIB.
Atrageți atenția că există două modalități de a stabili o variabilă de tip BITS ca de exemplu "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":
Vedeți secțiunea cu exemple pentru mai multe detalii.
valueThe new value
timeoutThe number of microseconds until the first timeout.
retriesThe number of times to retry if timeouts occur.
Întoarce valoarea TRUE în cazul
succesului sau FALSE în cazul eșecului.
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".
Example #1 Using snmp3_set()
<?php
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifAlias.3', 's', "foo");
?>
Example #2 Using snmp3_set() for setting BITS SNMP object id
<?php
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// or
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'x', 'F0');
?>