Refine search
Variable var = null; if (splits.length == 2) { // no SMI syntax defined var = new OctetString(snmpPropValue); } else { int smiSyntax = Integer.valueOf(splits[2]); VariableBinding varBind = new VariableBinding(new OID(snmpPropName), var); pdu.add(varBind); result = true;
/** * Method to add {@link FlowFile} attributes from a {@link VariableBinding} * @param variableBinding {@link VariableBinding} * @param attributes {@link FlowFile} attributes to update */ private static void addAttributeFromVariable(VariableBinding variableBinding, Map<String, String> attributes) { attributes.put(SNMP_PROP_PREFIX + variableBinding.getOid() + SNMP_PROP_DELIMITER + variableBinding.getVariable().getSyntax(), variableBinding.getVariable().toString()); }
ResponseEvent response) throws IOException { pdu.clear(); OID effLevelOID = new OID(SNMP4J_LOGGER_OIDS[1]); effLevelOID.append(loggerIndex); pdu.add(new VariableBinding(levelOID)); pdu.add(new VariableBinding(effLevelOID)); response = snmp.get(pdu, target); PDU respPDU = response.getResponse(); if ((respPDU != null) && (respPDU.getErrorStatus() == PDU.noError) && (!respPDU.get(0).isException()) && (!respPDU.get(1).isException())) { PDU resp = response.getResponse(); LogLevel setLevel = new LogLevel(resp.get(0).getVariable().toInt()); LogLevel effectiveLevel = new LogLevel(resp.get(1).getVariable().toInt()); System.out.println("Set logger '"+logger+"' level to "+newLevel+ ". Now levels are "+setLevel+" (configured) and "+
@Override public void addOid(SnmpObjId snmpObjId) { VariableBinding varBind = new VariableBinding(new OID(snmpObjId.getIds())); m_nextPdu.add(varBind); }
/** * <p>snmpGet.</p> * * @param oidString a {@link java.lang.String} object. * @return a {@link java.lang.String} object. * @throws java.io.IOException if any. */ public String snmpGet(String oidString) throws IOException { OID oid = new OID(oidString); PDU pdu = pduFactory.createPDU(getTarget()); pdu.add(new VariableBinding(oid)); pdu.setType(PDU.GET); ResponseEvent response; response = snmp.send(pdu, getTarget()); if (response != null) { PDU responsePDU = response.getResponse(); if (responsePDU != null) { if (responsePDU.getErrorStatus() == PDU.noError) { return responsePDU.get(0).toValueString(); } } logger.info("GET reposne from " + getTarget().getAddress() + " was null!"); return null; } logger.info("GET from " + getTarget().getAddress() + " has timed out!"); return null; }
/** * Creates a SNMP Octets (string) variable binding. * * @param oid * the SNMP oid of the variable * @param str * the content of the variable * @return a new variable binding */ public VariableBinding createSnmpStrVar(String oid, String str) { return new VariableBinding(new OID(oid), new OctetString(str)); }
private void addInt(PDU pdu, OID prefix, int suffix, Integer val, boolean allowEmpty) { if (allowEmpty || val != null) { pdu.add(new VariableBinding(new OID(prefix).append(suffix), new Integer32(val == null ? 0 : val))); } }
public VariableBinding make(String oid, Object value) throws MappingFailedException { Integer i = (Integer)value; return new VariableBinding(new OID(oid), new Integer32(i)); } } // class SnmpInt32Maker
public void commit(SubRequest sreq) { super.commit(sreq); if (sreq.getStatus().getErrorStatus() == PDU.noError) { OID index = sreq.getVariableBinding().getOid(); index = new OID(index.getValue(), oidNlmConfigLogEntry.size() + 1, index.size() - oidNlmConfigLogEntry.size() + 1); OctetString profileName = new OctetString(); profileName.fromSubIndex(index, false); checkLimits(profileName); } } //--AgentGen END
public synchronized void onResponse(ResponseEvent event) { int startCol = (Integer) event.getUserObject(); PDU request = event.getRequest(); PDU response = event.getResponse(); int cols = request.size(); int rows = response.size() / cols; OID lastMinIndex = null; for (int r = 0; r < rows; r++) { Row row = null; for (int c = 0; c < request.size(); c++) { int pos = startCol + c; VariableBinding vb = response.get(r * cols + c); if (vb.isException()) { continue; OID id = vb.getOid(); OID col = columnOIDs[pos]; if (id.startsWith(col)) { OID index = new OID(id.getValue(), col.size(), id.size() - col.size()); if ((upperBoundIndex != null) && (index.compareTo(upperBoundIndex) > 0)) { row.add(vb); lastReceived.set(pos, vb.getOid());
@Override public void commit(SubRequest request) { OID oid = request.getVariableBinding().getOid(); if (translation != null) { oid = translation.forwardTranslate(oid); } VariableBinding vb = new VariableBinding(oid, request.getVariableBinding().getVariable()); Target target = targetMIB.getTarget(targetName, contextEngineID, contextName); PDU pdu = pduFactory.createPDU(target); pdu.setType(PDU.SET); pdu.add(vb); try { ResponseEvent resp = session.send(pdu, target); if (resp.getResponse() != null) { PDU rpdu = resp.getResponse(); if (rpdu.getErrorStatus() != PDU.noError) { request.setErrorStatus(rpdu.getErrorStatus()); } request.getStatus().setPhaseComplete(true); } else { request.setErrorStatus(PDU.genErr); } } catch (IOException e) { request.setErrorStatus(PDU.genErr); logger.error("IOException in commit SET sub-request " + request + " to " + target, e); } }
@Override public void prepare(SubRequest request) { if (undoEnabled) { OID oid = request.getVariableBinding().getOid(); if (translation != null) { oid = translation.forwardTranslate(oid); VariableBinding vb = new VariableBinding(oid); Target target = targetMIB.getTarget(targetName, contextEngineID, contextName); PDU pdu = pduFactory.createPDU(target); pdu.setType(PDU.GET); pdu.add(vb); try { ResponseEvent resp = session.send(pdu, target); if (resp.getResponse() != null) { PDU rpdu = resp.getResponse(); if (rpdu.getErrorStatus() != PDU.noError) { request.setErrorStatus(rpdu.getErrorStatus()); VariableBinding rvb = rpdu.getVariableBindings().get(0); if ((rvb == null) || rvb.isException()) { request.setErrorStatus(PDU.noSuchName);
public void testGetSysName() throws IOException { Snmp snmp = new Snmp(new DefaultUdpTransportMapping()); snmp.listen(); Address addr = new UdpAddress(InetAddress.getLocalHost(), 9161); //Address addr = new UdpAddress(InetAddressUtils.addr("192.168.0.100"), 161); Target target = new CommunityTarget(addr, new OctetString("public")); target.setVersion(SnmpConstants.version1); target.setTimeout(3000); target.setRetries(3); PDUv1 getRequest = new PDUv1(); getRequest.add(new VariableBinding(new OID("1.3.6.1.2.1.1.5.0"))); ResponseEvent e = snmp.get(getRequest, target); PDU response = e.getResponse(); assertEquals(new OctetString("mockhost"), response.get(0).getVariable()); }
case SnmpConstants.SNMP_ERROR_NO_CREATION: case SnmpConstants.SNMP_ERROR_INCONSISTENT_NAME: { response.setErrorStatus(SnmpConstants.SNMP_ERROR_NO_SUCH_NAME); break; case SnmpConstants.SNMP_ERROR_COMMIT_FAILED: case SnmpConstants.SNMP_ERROR_UNDO_FAILED: { response.setErrorStatus(SnmpConstants.SNMP_ERROR_GENERAL_ERROR); break; case SnmpConstants.SNMP_ERROR_INCONSISTENT_VALUE: case SnmpConstants.SNMP_ERROR_WRONG_TYPE: { response.setErrorStatus(SnmpConstants.SNMP_ERROR_BAD_VALUE); break; for (int i=0; i<response.size(); i++) { VariableBinding vb = response.get(i); if (vb.isException()) { response.setErrorStatus(PDU.noSuchName); response.setErrorIndex(i+1); response.set(i, new VariableBinding(vb.getOid())); return;
transMap.listen(); target.setCommunity( new OctetString( community ) ); target.setVersion( SnmpConstants.version1 ); target.setAddress( udpAddress ); pdu1.setEnterprise( new OID( Oid ) ); pdu1.add( new VariableBinding( new OID( Oid ), new OctetString( messageString ) ) ); pdu.add( new VariableBinding( new OID( Oid ), new OctetString( messageString ) ) ); pdu.setType( PDU.TRAP ); if ( !Utils.isEmpty( engineID ) ) { logDebug( "Received response from: " + response.getPeerAddress() + response.toString() );
if ( responseEvent.getError () != null ) logger.warn ( "Listing failed", responseEvent.getError () ); return null; if ( responseEvent.getResponse () == null ) final PDU response = responseEvent.getResponse (); if ( response.getErrorStatus () != 0 ) logger.warn ( String.format ( "Error in reply: %1$d", response.getErrorStatus () ) ); return null; if ( response.getType () == PDU.REPORT ) for ( final VariableBinding vb : vbs ) if ( vb.isException () ) if ( vb.getVariable ().isException () ) logger.info ( "Variable Exception: {}", vb.getVariable () ); return null; final OID oid = vb.getOid (); if ( !oid.startsWith ( this.oid ) )
public static String extractSingleString(ResponseEvent event) { return event.getResponse().get(0).getVariable().toString(); } }
private static SnmpValue[] convertResponseToValues(ResponseEvent responseEvent) { SnmpValue[] retvalues = new Snmp4JValue[responseEvent.getResponse().getVariableBindings().size()]; for (int i = 0; i < retvalues.length; i++) { retvalues[i] = new Snmp4JValue(responseEvent.getResponse().get(i).getVariable()); } return retvalues; }
private VariableBinding getSingleVariable(OID oid) throws IOException { PDU pdu = this.pduFactory.createPDU(getTarget()); pdu.setType(PDU.GETNEXT); pdu.add(new VariableBinding(oid)); ResponseEvent responseEvent = snmp.send(pdu, getTarget()); PDU responsePDU = null; if (responseEvent != null) responsePDU = responseEvent.getResponse(); VariableBinding vb = null; if (responsePDU != null) vb = responsePDU.get(0); return vb; }
public boolean equals(Object o) { if (o instanceof VariableBinding) { VariableBinding other = (VariableBinding)o; return oid.equals(other.getOid()) && variable.equals(other.getVariable()); } return false; }