NUTSCAN(3)
==========

NAME
----

nutscan - Network UPS Tools (NUT) device discovery library

DESCRIPTION
-----------

The Network UPS Tools (NUT) *nutscan* library provides the same discovery
related features that are also offered by linkman:nut-scanner[8].

It enables the discovery of supported NUT devices (USB, SNMP, Eaton XML/HTTP
and IPMI) and NUT servers (using Avahi, or the classic connection method).


DISCOVERY FUNCTIONS
-------------------

First, include the required header file:

 #include <nut-scan.h>

Then, to discover new devices, use the appropriate function:

- linkman:nutscan_scan_usb[3] for supported USB devices,
- linkman:nutscan_scan_snmp[3] for supported SNMP agents,
- linkman:nutscan_scan_xml_http[3] for Eaton Network Management Card,
- linkman:nutscan_scan_nut[3] for NUT servers (upsd), using the classic method,
- linkman:nutscan_scan_avahi[3] for NUT servers (upsd), using the mDNS (Avahi) method,
- linkman:nutscan_scan_ipmi[3] for supported IPMI PSU.


All of these functions return a list of devices found, using the nutscan_device_t
structure. This structure is described in linkman:nutscan_add_device_to_device[3].

Helper functions are also provided to output data using standard formats:

- linkman:nutscan_display_parsable[3] for parsable output,
- linkman:nutscan_display_ups_conf[3] for ups.conf style.


ERROR HANDLING
--------------
There is currently no specific mechanism for error handling.


SEE ALSO
--------
linkman:nut-scanner[8],
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_scan_xml_http[3], linkman:nutscan_scan_nut[3],
linkman:nutscan_scan_avahi[3], linkman:nutscan_scan_ipmi[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_new_device[3], linkman:nutscan_free_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_cidr_to_ip[3],
http://avahi.org/
