2009-07-29 13 views
5

Attualmente sto sviluppando un'applicazione di monitoraggio per alcuni componenti hardware interni utilizzando net-snmp. Ho un codice che funziona un po ', quando si chiama snmp_pdu_free() il mio codice segfaults. Sto creando la struct pdu con snmp_create_pdu(). Vorrei un riferimento API per vedere se sto effettivamente scrivendo il mio codice correttamente, ma non sono stato in grado di trovarne uno. La cosa migliore che ho trovato sono le esercitazioni sul sito web net-snmp, ma non sono di grande aiuto per determinare se il mio codice è corretto mentre eseguo il debug.Riferimento per l'API Net-SNMP?

risposta

4

La documentazione Net-SNMP non è molto utile, purtroppo. Nel complesso, l'API è un bugger con cui lavorare, ma funziona.

parte net-snmp.org e la mailing list, questo è l'unico altro utile riferimento relativi Net-SNMP ho trovato utile:

http://www.cuddletech.com/articles/snmp/index.html

Inoltre, iscrivi per il 'net lista di indirizzi "s-coder". È molto attivo e puoi ricevere feedback direttamente dagli autori di Net-SNMP.

http://www.net-snmp.org/support/mailinglists.html

Buona fortuna.

1

In the tutorial, non chiamare snmp_free_pdu() per eliminare la PDU creata con snmp_create_pdu(). Invece, lo chiamano per cancellare quello restituito da snmp_synch_response().

Infatti, è stated in the comments:

La PDU è liberato da snmp_send() a meno che un guasto si è verificato.

Personalmente penso che sia una decisione di design imbarazzante, ma ora è troppo tardi.