[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