AST* readASTMisc(BufferedReader *reader) { uint8_t type = reader->readByte(); if (VERBOSITY("parsing") >= 2) printf("type = %d\n", type); if (type == 0) return NULL; uint8_t checkbyte = reader->readByte(); assert(checkbyte == 0xae); switch (type) { case AST_TYPE::alias: return read_alias(reader); case AST_TYPE::arguments: return read_arguments(reader); case AST_TYPE::comprehension: return read_comprehension(reader); case AST_TYPE::keyword: return read_keyword(reader); case AST_TYPE::Module: return read_module(reader); default: fprintf(stderr, "Unknown node type (parser.cpp:" STRINGIFY(__LINE__) "): %d\n", type); exit(1); break; } }
QtNetSNMP::QMIBTree *QtNetSNMP::QSNMPManager::getMIBModule(const QString& module) throw(QSNMPException) { if(module.isEmpty()) return _core -> getMIBTree(read_all_mibs()); else if(getModulesInstalled().indexOf(module) == -1) throw QSNMPException("QSNMPManager :: Get MIB Module :: Module not found"); return _core -> getMIBTree(read_module(module.toStdString().c_str())); }
int SnmpInit(void) { syslog(LOG_DEBUG,"*** Initialise SNMP ***"); init_snmp("CrateTest"); // I never saw this name used !?! init_mib(); // init MIB processing if(!read_module("WIENER-CRATE-MIB")) { // read specific mibs syslog(LOG_ERR,"Unable to load SNMP MIB file \"%s\"","WIENER-CRATE-MIB"); return 0; } syslog(LOG_DEBUG,"*** Translate OIDs ***"); lengthSysMainSwitch = MAX_OID_LEN; if(!get_node(S_sysMainSwitch,oidSysMainSwitch,&lengthSysMainSwitch)) { syslog(LOG_ERR,"OID \"sysMainSwitch.0\"not found"); return false; } lengthOutputMeasurementSenseVoltageAll = MAX_OID_LEN; if(!get_node(S_outputMeasurementSenseVoltageAll,oidOutputMeasurementSenseVoltageAll,&lengthOutputMeasurementSenseVoltageAll)) { syslog(LOG_ERR,"OID \"sysMainSwitch.0\"not found"); return false; } lengthFanAirTemperature = MAX_OID_LEN; if(!get_node(S_fanAirTemperature,oidFanAirTemperature,&lengthFanAirTemperature)) { syslog(LOG_ERR,"OID \"fanAirTemperature.0\"not found"); return false; } for(int j = 0; j < 8; j++) { lengthSensorTemperature[j] = MAX_OID_LEN; if(!get_node(S_sensorTemperature[j],oidSensorTemperature[j],&lengthSensorTemperature[j])) { syslog(LOG_ERR,"OID \"sensorTemperature.0\"not found"); return false; } } for(int j = 0; j < 12; j++) { lengthOutputMeasurementSenseVoltage[j] = MAX_OID_LEN; if(!get_node(S_outputMeasurementSenseVoltage[j],oidOutputMeasurementSenseVoltage[j],&lengthOutputMeasurementSenseVoltage[j])) { syslog(LOG_ERR,"OID \"outputMeasurementSenseVoltage.1\"not found"); return false; } lengthOutputVoltage[j] = MAX_OID_LEN; if(!get_node(S_outputVoltage[j],oidOutputVoltage[j],&lengthOutputVoltage[j])) { syslog(LOG_ERR,"OID \"outputVoltage.1\"not found"); return false; } lengthOutputMeasurementCurrent[j] = MAX_OID_LEN; if(!get_node(S_outputMeasurementCurrent[j],oidOutputMeasurementCurrent[j],&lengthOutputMeasurementCurrent[j])) { syslog(LOG_ERR,"OID \"outputMeasurementCurrent.1\"not found"); return false; } lengthOutputStatus[j] = MAX_OID_LEN; if(!get_node(S_outputStatus[j],oidOutputStatus[j],&lengthOutputStatus[j])) { syslog(LOG_ERR,"OID \"outputStatus.1\"not found"); return false; } lengthChannelSwitch[j] = MAX_OID_LEN; if(!get_node(S_outputSwitch[j],oidChannelSwitch[j],&lengthChannelSwitch[j])) { syslog(LOG_ERR,"OID \"channelSwitch.1\"not found"); return false; } // lengthOutputRampUp[j] = MAX_OID_LEN; // if(!get_node(S_outputRampUp[j],oidOutputRampUp[j],&lengthOutputRampUp[j])) { // syslog(LOG_ERR,"OID \"outputRampUp.1\"not found"); return false; // } // lengthOutputRampDown[j] = MAX_OID_LEN; // if(!get_node(S_outputRampDown[j],oidOutputRampDown[j],&lengthOutputRampDown[j])) { // syslog(LOG_ERR,"OID \"outputRampDown.1\"not found"); return false; // } } syslog(LOG_DEBUG,"*** Initialise SNMP done ***"); SOCK_STARTUP; // only in main thread return 1; }
int EScriptProgram::read(const char *fname) { FILE* fp = NULL; try { name = fname; fp = fopen(fname, "rb"); if (!fp) throw runtime_error( string("Unable to open ") + fname + " for reading." ); BSCRIPT_FILE_HDR hdr; if (fread( &hdr, sizeof hdr, 1, fp ) != 1) { cerr << "Error loading script " << fname << ": error reading header" << endl; fclose(fp); return -1; } if (hdr.magic2[0] != BSCRIPT_FILE_MAGIC0 || hdr.magic2[1] != BSCRIPT_FILE_MAGIC1) { cerr << "Error loading script " << fname << ": bad magic value '" << hdr.magic2[0] << hdr.magic2[1] << "'" << endl; fclose(fp); return -1; } // auto-check for latest version (see filefmt.h for setting) if (hdr.version != ESCRIPT_FILE_VER_CURRENT) { cerr << "Error loading script " << fname << ": Recompile required. Bad version number " << hdr.version << endl; fclose(fp); return -1; } version = hdr.version; nglobals = hdr.globals; BSCRIPT_SECTION_HDR sechdr; while (fread( &sechdr, sizeof sechdr, 1, fp ) == 1) { switch( sechdr.type ) { case BSCRIPT_SECTION_PROGDEF: if (read_progdef_hdr(fp)) { cerr << "Error loading script " << fname << ": error reading progdef section" << endl; fclose(fp); return -1; } break; case BSCRIPT_SECTION_MODULE: if (read_module(fp)) { cerr << "Error loading script " << fname << ": error reading module section" << endl; fclose(fp); return -1; } break; case BSCRIPT_SECTION_CODE: tokens.read(fp); break; case BSCRIPT_SECTION_SYMBOLS: symbols.read(fp); break; case BSCRIPT_SECTION_GLOBALVARNAMES: if (read_globalvarnames(fp)) { cerr << "Error loading script " << fname << ": error reading global variable name section" << endl; fclose(fp); return -1; } break; case BSCRIPT_SECTION_EXPORTED_FUNCTIONS: if (read_exported_functions(fp, &sechdr)) { cerr << "Error loading script " << fname << ": error reading exported functions section" << endl; fclose(fp); return -1; } break; default: cerr << "Error loading script " << fname << ": unknown section type " << int(sechdr.type) << endl; fclose(fp); return -1; } } fclose(fp); return create_instructions(); } catch( std::exception& ex ) { cerr << "Exception caught while loading script " << fname << ": " << ex.what() << endl; if (fp != NULL) fclose(fp); return -1; } #ifndef WIN32 catch(...) { cerr << "Exception caught while loading script " << fname << endl; if (fp != NULL) fclose(fp); return -1; } #endif }