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 (either 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_range[3] for Eaton Network Management Card,
- linkman:nutscan_scan_nut[3] for NUT servers (upsd), using the classic
  method (search for port),
- 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,
- linkman:nutscan_display_ups_conf_with_sanity_check[3] for ups.conf style
  with comments for warnings about possible configuration problems (if any).


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_range[3], linkman:nutscan_scan_nut[3],
linkman:nutscan_scan_avahi[3], linkman:nutscan_scan_ipmi[3],
linkman:nutscan_display_sanity_check[3],
linkman:nutscan_display_sanity_check_serial[3],
linkman:nutscan_display_ups_conf_with_sanity_check[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_init_ip_ranges[3],
linkman:nutscan_free_ip_ranges[3],
linkman:nutscan_add_ip_range[3],
linkman:nutscan_cidr_to_ip[3]

Internet resources:
~~~~~~~~~~~~~~~~~~~

http://avahi.org/
