nutscan_scan_usb - Man Page

Scan NUT compatible USB devices​.

Synopsis

        #include <nut-scan​.h>

        nutscan_device_t * nutscan_scan_usb(nutscan_usb_t * scanopts);

Note

Before libnutscan version 2​.5​.0 there was no argument:

nutscan_device_t * nutscan_scan_usb(void);

After the API update to have an argument, equivalent default activity can be achieved by passing NULL value for the argument​.

Description

The nutscan_scan_usb() function tries to detect NUT compatible USB devices​.

The scanopts argument contains toggles about values that would be reported into the generated device section​. Currently they regard physical link details which can change over time (e​.g​. USB re-enumeration due to software or hardware re-connections); see nut-scan​.h for current details:

/* USB scan options structure */
typedef struct nutscan_usb {
    /* Hardware link related values below are not reliable for run-time
     * matching (they can change over time) but can be useful if e​.g​.
     * "serial" is not available or unique */
    int report_bus;
    int report_busport;
    int report_device;

    /* The value is not currently used for device matching, but might be
     * used later, and it is available from discovery */
    int report_bcdDevice;
} nutscan_usb_t;

You MUST call nutscan_init(3) before using this function​.

Return Value

The nutscan_scan_usb() function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found​.

See Also

nutscan_init(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_ups_conf(3), nutscan_display_parsable(3), nutscan_new_device(3), nutscan_free_device(3), nutscan_add_option_to_device(3), nutscan_add_device_to_device(3), nutscan_scan_eaton_serial(3)

Info

10/07/2026 Network UPS Tools 2.8.5 NUT Manual