The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::Netdisco::Core::Discover

DESCRIPTION

A set of helper subroutines to support parts of the Netdisco application.

There are no default exports, however the :all tag will export all subroutines.

EXPORT_OK

set_canonical_ip( $device, $snmp )

Returns: $device

Given a Device database object, and a working SNMP connection, check whether the database object's IP is the best choice for that device. If not, update the IP and hostname in the device object for the canonical IP.

store_device( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store basic device information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_interfaces( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's interface/port information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_wireless( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's wireless interface information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_vlans( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's vlan information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_power( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's PoE information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_modules( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's module information.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

store_neighbors( $device, $snmp )

returns: @to_discover

Given a Device database object, and a working SNMP connection, discover and store the device's port neighbors information.

Entries in the Topology database table will override any discovered device port relationships.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

A list of discovererd neighbors will be returned as [$ip, $type] tuples.

discover_new_neighbors( $device, $snmp )

Given a Device database object, and a working SNMP connection, discover and store the device's port neighbors information.

Entries in the Topology database table will override any discovered device port relationships.

The Device database object can be a fresh DBIx::Class::Row object which is not yet stored to the database.

Any discovered neighbor unknown to Netdisco will have a discover job immediately queued (subject to the filtering by the discover_* settings).