Completes the fix for #29 — parallel links between two switches seen over a mix of CDP and LLDP.
Fixed
- Parallel links no longer mis-pair when some cables are reported over CDP and others over LLDP.
findMember()could merge a report into the wrong member and show fewer parallel links than exist, one pairing one cable's local port with another's remote port. Reports now carry a proven ifIndex key (CDP'scdpCacheIfIndex, and a far port resolved against the neighbour's own port names), and a member whose proven index contradicts the report is never treated as "the same cable from the other end". A single cable described differently from both ends still collapses to one line.
New
- Port names from the stock Cisco IOS template, no extra items needed. Zabbix's official Cisco IOS by SNMP template creates no
ifName/ifDescr/ifAliasitems — it keys interfaces asnet.if.status[ifOperStatus.<ifIndex>]and carries the port name only in the item name (Interface Gi1/0/24(...): ..., from the interface LLD's{#IFNAME}). The module now reads the name from there as a fallback, so such hosts get real port names and the far-end port resolution they enable. The named sources still win where they exist; the main item fetch is unchanged.
Thanks to @termark for the detailed report, reproduction and regression check.