[SNMP4J] - BER -> OID resolution i.e : snmpCommunityName
Garcia, Maurice
Maurice_Garcia at Cable.Comcast.com
Fri Jan 3 16:28:31 CET 2014
Frank,
Sorry for all the questions :(
One more related to this email trail...
I implemented the change you suggested and now the OID is resolved:
Output -> vacmSecurityToGroupStatus.1.readwritesec
But when I reverse the process, it will not encode back to BER.
OID 'vacmGroupName.1.readwritesec' cannot be parsed
at org.snmp4j.smi.OID.parseDottedString(OID.java:148)
at org.snmp4j.smi.OID.<init>(OID.java:83)
at com.comcast.cpe.cfb.ber.BERService.setOIDEncoding(BERService.java:152)
I am not sure if this is related to the bug you found that will be fixed in 1.0.2, but it appear to be the round-trip index conversion that you were talking about?
Thanks,
Maurice
From: Frank Fock [mailto:fock at agentpp.com]
Sent: Thursday, January 02, 2014 12:15 PM
To: Garcia, Maurice; snmp4j at agentpp.org
Subject: Re: [SNMP4J] - BER -> OID resolution i.e : snmpCommunityName
Hi Maurice,
OK, I understand.
To get the index decoded too, two steps are ncessary:
1. Set the OID format to:
smiManager.setOidFormat(SmiManager.OIDFormat.ObjectNameAndDecodedIndex);
2. Call oOID.format();
While investigating this, I found two issues with SNMP4JSMI 1.0.1:
1. When activating the OID format OIDFormat.ObjectNameAndDecodedIndex object names
of non-instance OIDs (i.e. objects in the MIB tree path like "mib-2") will be decoded as
numeric OIDs only. This bug will be fixed with version 1.0.2 coming very soon.
2. Currently "OID.toString()" will not return object names with decoded index, because
such OIDs cannot be parsed and thus are not suitable for rountrip conversion.
However, I think I have found a solution to be able to do round-trip index conversion
and will implement it for version 1.0.2 too.
Best regards,
Frank
Am 02.01.2014 04:40, schrieb Garcia, Maurice:
Thanks for the quick reponse!!
I am using the SNMP4J-SMI with the purchased license.
I used both the OID.format() and OID.toString, but I am getting the same result.
if (true) {
System.out.println("BEROIDConversion.getOidName() - BER: " + new HexString(bBER).toString());
System.out.println("BEROIDConversion.getOidName() - OID.toString(): " + oOID.toString());
System.out.println("BEROIDConversion.getOidName() - OID.format(): " + oOID.format());
}
BEROIDConversion.getOidName() - BER: 30 1C 06 11 2B 06 01 06 03 12 01 01 01 02 6D 74 61 70 72 6F 76 04 07 6D 74 61 5F 70 77 64
BEROIDConversion.getOidName() - OID.toString(): snmpCommunityName.109.116.97.112.114.111.118
BEROIDConversion.getOidName() - OID.format(): snmpCommunityName.109.116.97.112.114.111.118
Am I doing something wrong, or is there more to the setup of SMI?
Thanks,
Maurice
From: Frank Fock [mailto:fock at agentpp.com]
Sent: Wednesday, January 01, 2014 12:03 PM
To: Garcia, Maurice; snmp4j at agentpp.org<mailto:snmp4j at agentpp.org>
Subject: Re: [SNMP4J] - BER -> OID resolution i.e : snmpCommunityName
Hi Maurice,
I think the BER (Basic Encoding Rules) isn't the problem here.
The BER encodes/decodes a numeric object identifier (i.e., an
array of usinged 32bit integer values) to/from a network encoding
that is independent from the byte and word order of a system.
What you are looking for is SNMP4J-SMI which provides
OID to object (last) name conversion and index to string
conversions.
If you have SNMP4J-SMI in place, OID.toString() will provide
you the value you are looking for.
Best regards,
Frank
Am 31.12.2013 17:18, schrieb Garcia, Maurice:
Hi,
I am trying to fully resolve the snmpCommunityName OID from BER to OID
I tried using all the methods in the OID Class and can't find anything in the SMI class that can help..
Any suggestions???
Example:
I get this -> snmpCommunityName.109.116.97.112.114.111.118
But I want this -> snmpCommunityName.'mtaprov1'
Thanks,
Maurice
--
---
AGENT++
Maximilian-Kolbe-Str. 10
73257 Koengen, Germany
https://agentpp.com
Phone: +49 7024 8688230
Fax: +49 7024 8688231
--
---
AGENT++
Maximilian-Kolbe-Str. 10
73257 Koengen, Germany
https://agentpp.com
Phone: +49 7024 8688230
Fax: +49 7024 8688231
More information about the SNMP4J
mailing list