67 lines
2.5 KiB
Plaintext
67 lines
2.5 KiB
Plaintext
NUTSCAN_SCAN_SNMP(3)
|
|
====================
|
|
|
|
NAME
|
|
----
|
|
|
|
nutscan_scan_snmp - Scan network for SNMP devices.
|
|
|
|
SYNOPSIS
|
|
--------
|
|
|
|
#include <nut-scan.h>
|
|
|
|
nutscan_device_t * nutscan_scan_snmp(const char * start_ip,const char * stop_ip,long timeout, nutscan_snmp_t * sec);
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
|
|
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 linkman: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 "public".
|
|
|
|
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 NULL.
|
|
|
|
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.
|
|
|
|
RETURN VALUE
|
|
------------
|
|
|
|
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.
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkman:nutscan_init[3],
|
|
linkman:nutscan_scan_usb[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_ups_conf[3],
|
|
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
|
|
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
|
|
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]
|