NUTSCAN_SCAN_IPMI(3)
β¨ NUTSCAN_SCAN_IPMI β¨
okay bestie, buckle up, this one lives in section 3 of the NUT Manual β it's nutscan_scan_ipmi, and it's all about sniffing out IPMI devices π
π NAME π
nutscan_scan_ipmi β scan local IPMI devices, fr fr
πΈ SYNOPSIS πΈ
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_ipmi(
const char * startIP,
const char * stopIP,
nutscan_ipmi_t * sec);
nutscan_device_t * nutscan_scan_ip_range_ipmi(
nutscan_ip_range_list_t * irl,
nutscan_ipmi_t * sec);
π¦ DESCRIPTION π¦
So like, both nutscan_scan_ipmi() and nutscan_scan_ip_range_ipmi() are out here trying to detect IPMI manageable devices. That's their whole job. Their moment. Their era. β¨
Here's the tea on how they decide what to do: if start_ip (that's the first function's thing) or irl (that's the second one's thing) is NULL, then the function in question goes looking for a local PSU. Local. Right there. No network involved, it's giving staying-home energy. π
But if it's not NULL? Then bestie is going remote β it searches for remote hosts that would serve IPMI protocols, and it'd try to authenticate using the data sitting in the sec structure. π
Now the difference between the two, because ikyk y'all are wondering:
- The former β
nutscan_scan_ipmi()β throws an IPMI request at every single IP ranging fromstartIPtostopIP. HerestartIPis mandatory andstopIPis optional. And ifstopIPisNULL? Just the onestartIPaddress gets scanned. One and done. π« - The latter β
nutscan_scan_ip_range_ipmi()β can walk several IP address ranges at once, all represented by anutscan_ip_range_list_tstructure. Multi-tasking queen. π
Oh and those IP arguments? They may be either IPv4 or IPv6 addresses or host names. Flexible. We love that for them. π
β οΈ You MUST call nutscan_init(3) before using this function. Not optional, not a suggestion, it's the vibe check you have to pass first. π«Ά
π BUGS π
ngl, the design or implementation of this function may be incomplete. Until recently this man page was out here stating that it was not implemented yet β the audacity. π The source code is present, but some blocks are commented away or hidden with #if 0. So it's giving "we're working on it" energy.
β RETURN VALUE β
Real talk: the nutscan_scan_ipmi() function is not implemented yet. That's it, that's the return value section. π
π₯ SEE ALSO π₯
nutscan_init(3)nutscan_scan_usb(3)nutscan_scan_xml_http_range(3)nutscan_scan_nut(3)nutscan_scan_avahi(3)nutscan_scan_snmp(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_init_ip_ranges(3)nutscan_free_ip_ranges(3)nutscan_add_ip_range(3)nutscan_cidr_to_ip(3)
and that's the whole page, bestie!! go read the source, call nutscan_init(3) first like the icon you are, and remember: this one's still cooking π
mwah π this has been Network UPS Tools 2.8.5, dated 10/07/2026, signing off π
π¦ where this page comes from
- fedora 43: nut-devel 2.8.5-9.fc43 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 43: nut-devel 2.8.5-9.fc43 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 44: nut-devel 2.8.5-9.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 44: nut-devel 2.8.5-9.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms