(PHP 4, PHP 5, PHP 7, PHP 8)
snmp3_set — Define o valor de um objeto SNMP
$hostname
,$security_name
,$security_level
,$auth_protocol
,$auth_passphrase
,$privacy_protocol
,$privacy_passphrase
,$object_id
,$type
,$value
,$timeout
= -1,$retries
= -1
snmp3_set() é usado para definir o valor de um objeto SNMP
especificado pelo object_id
.
Mesmo que o nível de segurança não use um protocolo/senha auth ou priv, valores válidos devem ser especificados.
hostname
O nome do hosto do agente SNMP (servidor).
security_name
O nome de segurança, geralmente algum tipo de nome de usuário
security_level
O nível de segurança (noAuthNoPriv|authNoPriv|authPriv)
auth_protocol
O protocolo de autenticação (MD5 ou SHA)
auth_passphrase
A senha de autenticação
privacy_protocol
O protocolo de privacidade (DES ou AES)
privacy_passphrase
A senha de privacidade
object_id
O ID do objeto SNMP.
type
O MIB define o tipo de cada ID de objeto. Deve ser especificado como um único caractere da lista abaixo.
= | O tipo é retirado do MIB |
i | INTEGER |
u | INTEGER |
s | STRING |
x | HEX STRING |
d | DECIMAL STRING |
n | NULLOBJ |
o | OBJID |
t | TIMETICKS |
a | IPADDRESS |
b | BITS |
Se OPAQUE_SPECIAL_TYPES
foi definida ao compilar a biblioteca SNMP, os seguintes tipos também são válidos:
U | unsigned int64 |
I | signed int64 |
F | float |
D | double |
A maioria destes tipos usará o tipo ASN.1 correspondente óbvio. 's', 'x', 'd' e 'b' são todas maneiras diferentes de especificar um valor OCTET STRING e o tipo sem sinal 'u' também é usado para lidar com valores Gauge32.
Se os arquivos MIB forem carregados na árvore MIB com "snmp_read_mib" ou ao especificar isso na configuração da libsnmp, '=' pode ser usado como
o parâmetro type
para todos os IDs de objeto, pois o tipo pode ser lido automaticamente a partir do MIB.
Note que existem duas maneiras de definir uma variável do tipo BITS como, por exemplo, "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":
Consulte a seção de exemplos para obter mais detalhes.
value
O novo valor.
timeout
O número de microssegundos até o primeiro tempo limite.
retries
O número de tentativas caso ocorram tempos limite.
Retorna true
em caso de sucesso ou false
em caso de falha.
Se o host SNMP rejeitar o tipo de dado, uma mensagem E_WARNING como "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." será exibida. Se um OID desconhecido ou inválido for especificado, o aviso provavelmente será "Could not add variable".
Exemplo #1 Usando snmp3_set()
<?php
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifAlias.3', 's', "foo");
?>
Exemplo #2 Usando snmp3_set() para definir um ID de objeto SNMP BITS
<?php
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// ou
snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'x', 'F0');
?>