c++ was keines ist
Posted Wed 27 Jan 2016 05:04:11 PM CET
Florian Lohoff
Nachdem icinga2 ja kein embedded perl hat gucke ich mal wie es so um C++ Implementierungen für SNMP ausehen. Net::SNMP ist da ja eher nicht so geeignet. Also SNMP++ angesehen. Wir probieren die ersten Schritt und es ist so halbherziges c++ das es keinen Spaß macht.
Wieso throwed der Constructor einer Klasse keine exception nicht sondern returned über einen int einen Status?
Snmp snmp(status, 0, (snmpaddress.get_ip_version() == Address::version_ipv6));
if (status != SNMP_CLASS_SUCCESS) {
std::cout << "SNMP++ Session Create Fail, " << snmp.error_msg(status) << "\n";
return 1;
}
Oder warum können die gängigen initialisierungen für Adresse keinen
std::string
? Warum muss das ein const char *
sein?
ctarget.set_readcommunity(vm["community"].as<std::string>().c_str());
Oder warum erkennt die Klasse Snmp
nicht am dem Target objekt ob
das ipv6 oder ipv4 ist? Warum muss ich das bei der instanzierung
von Snmp
machen?