Provided by: libupsclient-dev_2.7.4-5.1ubuntu2_amd64 bug


       nutscan_scan_snmp - Scan network for SNMP devices.


       #include <nut-scan.h>

       nutscan_device_t * nutscan_scan_snmp(const char * start_ip,const char * stop_ip,long timeout, nutscan_snmp_t * sec);


       The nutscan_scan_snmp() function try to detect NUT compatible SNMP devices. It tries SNMP
       queries on every IP ranging from start_ip to stop_ip. Those IP may be either IPv4 or IPv6
       addresses or host names.

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

       This function waits up to timeout microseconds before considering an IP address does not
       respond to SNMP queries.

       A valid nutscan_snmp_t structure must be passed to this function.

       The nutscan_snmp_t structure contains the following members which must be filled as
       described below:

           char * 'community';
           char * 'secLevel';
           char * 'secName';
           char * 'authPassword';
           char * 'privPassword';
           char * 'authProtocol';
           char * 'privProtocol';

       If community is not NULL, SNMP v1 request are sent using this community.

       If community is NULL and secLevel is NULL, SNMP v1 is selected and community is set to

       In the other cases, SNMP v3 is used. secLevel may be one of SNMP_SEC_LEVEL_NOAUTH,
       SNMP_SEC_LEVEL_AUTHNOPRIV or SNMP_SEC_LEVEL_AUTHPRIV. secName is the security name and
       must be non NULL.

       If secLevel is set to SNMP_SEC_LEVEL_AUTHNOPRIV, authPassword must be non NULL.

       If secLevel is set to SNMP_SEC_LEVEL_AUTHPRIV, authPassword and privPassword must be non

       If authProtocol is NULL, MD5 protocol is used. Else you can set authProtocol to either
       "MD5" or "SHA".

       If privProtocol is NULL, DES protocol is used. Else you can set privProtocol to either
       "AES" or "DES".

       peername and handle are used internally and do not need any initialization.


       The nutscan_scan_snmp() 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.


       nutscan_init(3), nutscan_scan_usb(3), nutscan_scan_xml_http(3), nutscan_scan_nut(3),
       nutscan_scan_avahi(3), nutscan_scan_ipmi(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), nutscan_cidr_to_ip(3)