begin process at 2012 05 29 19:11:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Réseau & Internet

 > 

NET-SNMP en C avec localhost ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

NET-SNMP en C avec localhost ?

mercredi 1 décembre 2010 à 18:28:53 | NET-SNMP en C avec localhost ?

mehdi881

Bonjour,

je découvre le SNMP et j'ai développé le petit programme qui suit, à l'aide du tutoriel officiel de NET-SNMP. Il s'agit en gros du programme de présentation qui s'exécuterait en local. Je précise que l'application à distance du tuto (connexion à "test.net-snmp.org" fonctionne parfaitement.

Mais lorsque je compile et exécute mon programme local, au lieu de m'envoyer un résultat (sous forme de STRING ou INTEGER), il me renvoie :

.1702326096.1952796274.1112100141.1886730810.1935753843.1968137065.1953853556.1952543827.841905013.0.990059265.36.3.4294966456

PowerNet-MIB::upsBasicOutputStatus.0 = Wrong Type (should be INTEGER): NULL
PowerNet-MIB::upsBasicOutputStatus.2 = Wrong Type (should be INTEGER): NULL

j'ai testé pas mal de solutions, mais rien ne vient à bout de ce "wrong type"... Je comprend le code écrit ligne par ligne, seulement l'erreur doit venir du fonctionnement global de SNMP (ou de NET-SNMP).

Mon but final est simplement d'afficher la valeur d'un objet d'une MIB "faite maison" (personnelle), mais pour le moment je travaille avec celle fournie par le tuto (la MUB étant en préparation).

Avez vous une idée ?

merci à tous.

----------------------------------
programme en c :: avec "localhost" passé en paramètre d'exécution

#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <string.h>
int main(int argc, char ** argv)
{
struct snmp_session session;
struct snmp_session *sess_handle;
struct snmp_pdu *pdu;
struct snmp_pdu *response;
struct variable_list *vars;
oid id_oid[MAX_OID_LEN];
oid serial_oid[MAX_OID_LEN];
size_t id_len = MAX_OID_LEN;
size_t serial_len = MAX_OID_LEN;
int status;
struct tree * mib_tree;

/*********************/
init_mib();
if(argv[1] == NULL){
printf("Please supply a hostname\n");
exit(1);
}

init_snmp("test_PowerNet");

snmp_sess_init( &session );
session.version = SNMP_VERSION_1;
session.community = "public";
session.community_len = strlen(session.community);
session.peername = argv[1];
sess_handle = snmp_open(&session);

add_mibdir(".");
mib_tree = read_mib("NET-SNMP-TUTORIAL-MIB.txt");
pdu = snmp_pdu_create(SNMP_MSG_GET);

read_objid("NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject.0", id_oid, &id_len);
snmp_add_null_var(pdu, id_oid, id_len);
read_objid("NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject.0", serial_oid, &serial_len);
snmp_add_null_var(pdu, serial_oid, serial_len);

print_objid("NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject.0",id_len);
/**
*returns :
.1702326096.1952796274.1112100141.1886730810.1935753843.1968137065.1953853556.1952543827.841905013.0.990059265.36.3.4294966464
**/
status = snmp_synch_response(sess_handle, pdu, &response);
for(vars = response->variables; vars; vars = vars->next_variable){
print_variable(vars->name, vars->name_length, vars);
}

snmp_free_pdu(response);
snmp_close(sess_handle);

return (0);
}
mercredi 1 décembre 2010 à 18:33:06 | *** EDIT : NET-SNMP en C avec localhost ?

mehdi881

Voici l'erreur qu'il m'affiche avec cette MIB :

NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject.0 = Wrong Type (should be INTEGER): NULL
NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject.0 = Wrong Type (should be INTEGER): NULL

ce qui ne change rien au problème mais qui est plus cohérent ^^

merci encore.


Cette discussion est classée dans : session, len, snmp, oid, mib


Répondre à ce message

Sujets en rapport avec ce message

SNMP MIB [ par aymen87 ] Bonjour Je suis débutant avec le protocole SNMP, j'aimerais programmer un simulateur d'agent il me faudra donc un superviseur (qui est déjà programmé SNMP : selection d'oid avec plusieurs valeurs [ par dimanazel ] Bonjour, je suis debutant dans la programmation avec SNMP. j'ai une petite question concernant la selection d'un OID dans la base MIB. Je m'explique Libelle Clair d'un OID en SNMP avec API SDK de Windows XP [ par jiceD ] Bonjour à tous, Petite question sur le protocole SNMP avec l'API SDK de Windows XP: ================================================================= acces snmp mib private [ par faceme ] Bonjour, j'aimerai savoir comment peut on récupérer via SNMP une information de la communauté 'private' d'une machine sur le réseau avec son OID, résoudre une exception lors de l'exécution de programme. [ par boualiasma ] Bonjour, Je lance l'exécution avec débogage de mon programme C (en visual studio) alors j'obtiens l'exception suivante: [quote]Exception non gérée à Assertion Failed [ par TheReb ] Bonjour! Cela fait maintenant une journée que j'essaie de trouver le problème dans mon code, en vain. J'obtiens toujours l'erreur Assertion failed... DnsQuery, hook et detours [ par wxccxw ] Bonjour, j'ai ecrit une dll que j'injecte dans IE ou firefox pour savoir l'host qu'il demande a charger afin de filtrer. voici donc le code [code=cp [C++] Violation d'accès lors de la lecture de l'emplacement 0xfdfdfdfd. [ par 3Fred9 ] Bonjour, J'ai changé de compilateur de Visual C++ 6 à Visual Studio 2005 et depuis j'ai une fonction qui plante à l'exécution par une violation d'acc error C3070: 'System::String::default' : la propriété n'a pas de méthode 'set' [ par sarahim ] Salut, jai recontré 4 erreurs de gaure :error C3070: 'System::String::default' : la propriété n'a pas de méthode 'set' a les ligne suivante de mon cod modifier un script pour qu'l passe en DLL [ par galamot ] Bonjour, j'ai ce script:qui marche tres bien mais je voudrais en faire une DLL. la ou j'ai mis: "http:l'adresse demandée"); et : ("./Le nom du fich


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales