NAME
nutscan - Network UPS Tools (NUT) device discovery library
NOTE ABOUT HISTORIC NUT RELEASE
Note
|
Two NUT websites
This version of the page reflects NUT release v2.8.1 with codebase commited 4ba352d8f at 2023-10-31T21:46:20+01:00 Options, features and capabilities in current development (and future releases) are detailed on the main site and may differ from ones described here. |
DESCRIPTION
The Network UPS Tools (NUT) nutscan library provides the same discovery related features that are also offered by 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:
-
nutscan_scan_usb(3) for supported USB devices,
-
nutscan_scan_snmp(3) for supported SNMP agents,
-
nutscan_scan_xml_http_range(3) for Eaton Network Management Card,
-
nutscan_scan_nut(3) for NUT servers (upsd), using the classic method (search for port),
-
nutscan_scan_avahi(3) for NUT servers (upsd), using the mDNS (Avahi) method,
-
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
nutscan_add_device_to_device(3).
Helper functions are also provided to output data using standard formats:
-
nutscan_display_parsable(3) for parsable output,
-
nutscan_display_ups_conf(3) for ups.conf style,
-
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
nut-scanner(8), nutscan_scan_usb(3), nutscan_scan_snmp(3), nutscan_scan_xml_http_range(3), nutscan_scan_nut(3), nutscan_scan_avahi(3), nutscan_scan_ipmi(3), nutscan_display_sanity_check(3), nutscan_display_sanity_check_serial(3), nutscan_display_ups_conf_with_sanity_check(3), nutscan_display_parsable(3), nutscan_display_ups_conf(3), nutscan_new_device(3), nutscan_free_device(3), nutscan_add_device_to_device(3), nutscan_add_option_to_device(3), nutscan_cidr_to_ip(3)