SnmpRequest snmpRequest = new SnmpRequest(args); if (snmpRequest.operation == SNAPSHOT_DUMP) { snmpRequest.dumpSnapshot(); snmpRequest.listen(); snmpRequest.table(); PDU response = snmpRequest.send(); if ((snmpRequest.getPduType() == PDU.TRAP) || (snmpRequest.getPduType() == PDU.REPORT) || (snmpRequest.getPduType() == PDU.V1TRAP) || (snmpRequest.getPduType() == PDU.RESPONSE)) { System.out.println(PDU.getTypeString(snmpRequest.getPduType()) + " sent successfully"); printReport(response); "errorStatus=" + response.getErrorStatusText() + "(" + response.getErrorStatus() + ")"); printVariableBindings(response); "errorStatus=" + response.getErrorStatusText() + "(" + response.getErrorStatus() + ")"); printVariableBindings(response);
public SnmpRequest(String[] args) { // Set the default counter listener to return proper USM and MP error // counters. CounterSupport.getInstance().addCounterListener(new DefaultCounterListener()); vbs.add(new VariableBinding(new OID("1.3.6"))); int paramStart = parseArgs(args); if (paramStart >= args.length) { printUsage(); System.exit(1); } else if (operation != SNAPSHOT_DUMP) { checkOptions(); address = getAddress(args[paramStart++]); Vector<VariableBinding> vbs = getVariableBindings(args, paramStart); checkTrapVariables(vbs); if (vbs.size() > 0) { this.vbs = vbs; } } }
private int parseArgs(String[] args) { for (int i=0; i<args.length; i++) { if (args[i].equals("-a")) { String s = nextOption(args, i++); if (s.equals("MD5")) { authProtocol = AuthMD5.ID; authPassphrase = createOctetString(nextOption(args, i++)); privPassphrase = createOctetString(nextOption(args, i++)); community = createOctetString(nextOption(args, i++)); engineBootCount = Math.max(Integer.parseInt(nextOption(args, i++)), 0); String debugOption = nextOption(args, i++); LogFactory.getLogFactory().getRootLogger().setLogLevel( LogLevel.toLevel(debugOption)); localEngineID = createOctetString(nextOption(args, i++)); authoritativeEngineID = createOctetString(nextOption(args, i++)); contextEngineID = createOctetString(nextOption(args, i++)); printUsage(); System.exit(0); contextName = createOctetString(nextOption(args, i++));
public PDU send() throws IOException { Snmp snmp = createSnmpSession(); this.target = createTarget(); target.setVersion(version); target.setAddress(address); snmp.listen(); PDU request = createPDU(target); if (request.getType() == PDU.GETBULK) { request.setMaxRepetitions(maxRepetitions); snapshot = new ArrayList(); walk(snmp, request, target, snapshot); if (snapshot != null) { createSnapshot(snapshot);
public void table() throws IOException { Snmp snmp = createSnmpSession(); this.target = createTarget(); target.setVersion(version); target.setAddress(address);
private Snmp createSnmpSession() throws IOException { AbstractTransportMapping transport; if (address instanceof TcpAddress) { transport = new DefaultTcpTransportMapping(); } else { transport = new DefaultUdpTransportMapping(); } // Could save some CPU cycles: // transport.setAsyncMsgProcessingSupported(false); Snmp snmp = new Snmp(transport); ((MPv3)snmp.getMessageProcessingModel(MPv3.ID)). setLocalEngineID(localEngineID.getValue()); if (version == SnmpConstants.version3) { USM usm = new USM(SecurityProtocols.getInstance(), localEngineID, engineBootCount); SecurityModels.getInstance().addSecurityModel(usm); addUsmUser(snmp); } return snmp; }
public PDU createPDU(MessageProcessingModel messageProcessingModel) { return createPDU((Target)null); }
public PDU send() throws IOException { Snmp snmp = createSnmpSession(); this.target = createTarget(); target.setVersion(version); target.setAddress(address); snmp.listen(); PDU request = createPDU(target); if (request.getType() == PDU.GETBULK) { request.setMaxRepetitions(maxRepetitions); snapshot = new ArrayList<VariableBinding>(); walk(snmp, request, target, snapshot); if (snapshot != null) { createSnapshot(snapshot);
public void table() throws IOException { Snmp snmp = createSnmpSession(); this.target = createTarget(); target.setVersion(version); target.setAddress(address);
SecurityModels.getInstance().addSecurityModel(usm); addUsmUser(snmp);
SnmpRequest snmpRequest = new SnmpRequest(args); if (snmpRequest.operation == SNAPSHOT_DUMP) { snmpRequest.dumpSnapshot(); snmpRequest.listen(); snmpRequest.table(); PDU response = snmpRequest.send(); if ((snmpRequest.getPduType() == PDU.TRAP) || (snmpRequest.getPduType() == PDU.REPORT) || (snmpRequest.getPduType() == PDU.V1TRAP) || (snmpRequest.getPduType() == PDU.RESPONSE)) { System.out.println(PDU.getTypeString(snmpRequest.getPduType()) + " sent successfully"); printReport(response); "errorStatus=" + response.getErrorStatusText() + "(" + response.getErrorStatus() + ")"); printVariableBindings(response); "errorStatus=" + response.getErrorStatusText() + "(" + response.getErrorStatus() + ")"); printVariableBindings(response);
public SnmpRequest(String[] args) { // Set the default counter listener to return proper USM and MP error // counters. CounterSupport.getInstance().addCounterListener(new DefaultCounterListener()); vbs.add(new VariableBinding(new OID("1.3.6"))); int paramStart = parseArgs(args); if (paramStart >= args.length) { printUsage(); System.exit(1); } else if (operation != SNAPSHOT_DUMP) { checkOptions(); address = getAddress(args[paramStart++]); Vector vbs = getVariableBindings(args, paramStart); checkTrapVariables(vbs); if (vbs.size() > 0) { this.vbs = vbs; } } }
private int parseArgs(String[] args) { for (int i=0; i<args.length; i++) { if (args[i].equals("-a")) { String s = nextOption(args, i++); if (s.equals("MD5")) { authProtocol = AuthMD5.ID; authPassphrase = createOctetString(nextOption(args, i++)); privPassphrase = createOctetString(nextOption(args, i++)); community = createOctetString(nextOption(args, i++)); engineBootCount = Math.max(Integer.parseInt(nextOption(args, i++)), 0); String debugOption = nextOption(args, i++); LogFactory.getLogFactory().getRootLogger().setLogLevel( LogLevel.toLevel(debugOption)); localEngineID = createOctetString(nextOption(args, i++)); authoritativeEngineID = createOctetString(nextOption(args, i++)); contextEngineID = createOctetString(nextOption(args, i++)); printUsage(); System.exit(0); contextName = createOctetString(nextOption(args, i++));
private Snmp createSnmpSession() throws IOException { AbstractTransportMapping<? extends Address> transport; if (address instanceof TlsAddress) { transport = new TLSTM(); } else if (address instanceof TcpAddress) { transport = new DefaultTcpTransportMapping(); } else { transport = new DefaultUdpTransportMapping(); } // Could save some CPU cycles: // transport.setAsyncMsgProcessingSupported(false); Snmp snmp = new Snmp(transport); MPv3 mpv3 = (MPv3)snmp.getMessageProcessingModel(MPv3.ID); mpv3.setLocalEngineID(localEngineID.getValue()); mpv3.setCurrentMsgID(MPv3.randomMsgID(engineBootCount)); if (version == SnmpConstants.version3) { USM usm = new USM(SecurityProtocols.getInstance(), localEngineID, engineBootCount); SecurityModels.getInstance().addSecurityModel(usm); addUsmUser(snmp); SecurityModels.getInstance().addSecurityModel( new TSM(localEngineID, false)); } return snmp; }