linkd ignores <specific> in <iproutes> section of config file

Description

in linkd-configuration.xml the section

<iproutes>
<vendor vendor_name="cisco" sysoidRootMask= "
class-name="org.opennms.netmgt.linkd.snmp.IpCidrRouteTable">
<specific>1.658</specific>
</vendor>
</iproutes>

should limit use of the ipCidrRouteTable to only cisco devices with sysoid ".1.3.6.1.4.1.9.1.658
However, it appears to apply to all cisco devices. Here's a log entry as an example for a cisco device that is NOT 1.658:

2010-12-22 16:21:03,207 DEBUG [Main] LinkdConfigFactory: interfaceInPackage: Interface 128.193.210.146 in package example1?: True
2010-12-22 16:21:03,209 DEBUG [Main] Linkd: populateSnmpCollection: found class to get ipRoute: org.opennms.netmgt.linkd.snmp.IpCidrRouteTable

However if I remove the <iproutes> section entirely then the same node uses the default.

2010-12-23 10:35:19,023 DEBUG [Main] LinkdConfigFactory: interfaceInPackage: Interface 128.193.210.146 in package example1?: True
2010-12-23 10:35:19,024 DEBUG [Main] Linkd: populateSnmpCollection: Using default class to get ipRoute: org.opennms.netmgt.linkd.snmp.IpRouteTable

Environment

OpenNMS Version: 1.8.7 Home Directory: /usr/share/opennms RRD store by Group: true Web-Application Logfiles: /data/opennms/logs/webapp Reports directory: /data/opennms/share/reports Jetty http host: null Jetty http port: 8980 Jetty https host: null Jetty https port: 8443 erver Time: Thu Dec 23 11:17:26 PST 2010 Client Time: Thu Dec 23 2010 11:17:26 GMT-0800 (PST) Java Version: 1.6.0_20 Sun Microsystems Inc. Java Virtual Machine: 16.3-b01 Sun Microsystems Inc. Operating System: Linux 2.6.26-2-amd64 (amd64) Servlet Container: jetty/6.1.24 (Servlet Spec 2.5) User Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.13) Gecko/201012

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Show:

Seth Leger October 26, 2011 at 3:15 PM

The section of LinkdConfigManager.initializeIpRouteClassNames() that makes a map of sysoids to route class names was indeed not utilizing the <specific> tags. I changed it to match the VLAN config options which do parse the <specific> tags properly. Marking as fixed.

commit 213b747df2e553efdcd120331e847477d36fa7ed

Matt Brozowski September 27, 2011 at 2:29 PM

Hey Bill,

can you give me a couple of walks for these devices. Most helpful would be a walk for a non 1.658 devices plus one for a devices that is 1.658. Along with the config you are using to try this.

We'd like to run some unit tests and use the mock-snmp-agent to verify this.

Thanks a bunch,
Matt

Bill Ayres August 31, 2011 at 8:03 PM

yes, I believe that is

<vendor vendor_name="cisco" sysoidRootMask= ".1.3.6.1.4.1.9"

(Its been a long time since I looked at this, and its gone rather cold.)

Seth Leger August 31, 2011 at 6:43 PM

Bill, the XML here looks like it was clipped at little bit. The sysoidRootMask value is missing. Can you update the bug with the full value? I'm assuming it's supposed to be something like ".1.3.6.1.4.1.9".

Fixed

Details

Assignee

Reporter

Fix versions

Affects versions

Priority

PagerDuty

Created December 23, 2010 at 2:31 PM
Updated January 27, 2017 at 4:19 PM
Resolved October 26, 2011 at 3:15 PM

Flag notifications