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, return a new Device database object with the canonical IP.

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

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).