Imported Upstream version 2.7.4

This commit is contained in:
Laurent Bigonville 2016-07-18 02:11:41 +02:00
parent fd413a3168
commit c9cb2187ee
290 changed files with 7473 additions and 2607 deletions

View file

@ -241,6 +241,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -183,6 +183,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -188,6 +188,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -41,7 +41,7 @@ As an example, on Debian and derivatives, do the following:
$ apt-get install augeas-lenses augeas-tools
And optionaly:
And optionally:
$ apt-get install libaugeas0 libaugeas-dev python-augeas

View file

@ -33,7 +33,10 @@ let ups_sep = IniFile.sep IniFile.sep_re IniFile.sep_default
let ups_global = "chroot"
| "driverpath"
| "maxstartdelay"
| "maxretry"
| "retrydelay"
| "pollinterval"
| "synchronous"
| "user"
let ups_fields = "driver"
@ -41,7 +44,9 @@ let ups_fields = "driver"
| "sdorder"
| "desc"
| "nolock"
| "ignorelb"
| "maxstartdelay"
| "synchronous"
| "CP"
| "CS"
| "ID"
@ -160,6 +165,8 @@ let ups_fields = "driver"
| "shutdown_timer"
| "silent"
| "site_fault_detection"
| "snmp_retries"
| "snmp_timeout"
| "snmp_version"
| "startdelay"
| "status_only"

View file

@ -33,7 +33,10 @@ let ups_sep = IniFile.sep IniFile.sep_re IniFile.sep_default
let ups_global = "chroot"
| "driverpath"
| "maxstartdelay"
| "maxretry"
| "retrydelay"
| "pollinterval"
| "synchronous"
| "user"
let ups_fields = "driver"
@ -41,7 +44,9 @@ let ups_fields = "driver"
| "sdorder"
| "desc"
| "nolock"
| "ignorelb"
| "maxstartdelay"
| "synchronous"
@SPECIFIC_DRV_VARS@
let ups_entry = IniFile.indented_entry (ups_global|ups_fields) ups_sep ups_comment

View file

@ -213,6 +213,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -178,6 +178,15 @@ notify 100 {
match "product" "0xffff";
action "chgrp @RUN_AS_GROUP@ /dev/$cdev; chmod g+rw /dev/$cdev";
};
# TS Shara UPSes - nutdrv_qx
notify 100 {
match "system" "USB";
match "subsystem" "DEVICE";
match "type" "ATTACH";
match "vendor" "0x0483";
match "product" "0x0035";
action "chgrp @RUN_AS_GROUP@ /dev/$cdev; chmod g+rw /dev/$cdev";
};
# Riello (Cypress Semiconductor Corp.)
# various models - riello_usb
@ -884,6 +893,17 @@ notify 100 {
match "product" "0x00c9";
action "chgrp @RUN_AS_GROUP@ /dev/$cdev; chmod g+rw /dev/$cdev";
};
# AEG
# PROTECT B / NAS - usbhid-ups
notify 100 {
match "system" "USB";
match "subsystem" "DEVICE";
match "type" "ATTACH";
match "vendor" "0x2b2d";
match "product" "0xffff";
action "chgrp @RUN_AS_GROUP@ /dev/$cdev; chmod g+rw /dev/$cdev";
};
# Ablerex 625L USB - blazer_usb
notify 100 {
match "system" "USB";

View file

@ -216,6 +216,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -48,6 +48,8 @@ libhidups 0x0003 0x0463 0xffff 0x0000 0x0000 0x00
# Dell
# various models
libhidups 0x0003 0x047c 0xffff 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
# TS Shara UPSes
libhidups 0x0003 0x0483 0x0035 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
# Riello (Cypress Semiconductor Corp.)
# various models
@ -222,5 +224,9 @@ libhidups 0x0003 0x10af 0x0004 0x0000 0x0000 0x00
libhidups 0x0003 0x10af 0x0008 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
# GE EP series
libhidups 0x0003 0x14f0 0x00c9 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
# AEG
# PROTECT B / NAS
libhidups 0x0003 0x2b2d 0xffff 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
# Ablerex 625L USB
libhidups 0x0003 0xffff 0x0000 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000

View file

@ -183,6 +183,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -3,12 +3,13 @@
# an auxiliary script to produce a "stub" snmp-ups subdriver from
# SNMP data from a real agent or from dump files
#
# Version: 0.4
# Version: 0.6
#
# See also: docs/snmp-subdrivers.txt
#
# Copyright (C)
# 2011 - 2012 Arnaud Quette <arnaud.quette@free.fr>
# 2011 - 2012 Arnaud Quette <arnaud.quette@free.fr>
# 2015 Arnaud Quette <ArnaudQuette@Eaton.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -38,13 +39,24 @@ usage() {
echo "mode 1: get SNMP data from a real agent"
echo " -H host_address -- SNMP host IP address or name"
echo " -c community -- SNMP v1 community name (default: public)"
echo " -s XXXX -- override SNMP OID entry point (sysOID). Ex: '.1.3.6.1.4.1.534.10'"
echo ""
echo "mode 2: get data from files (snmpwalk dumps of 'sysOID' subtree)"
echo " -s XXXX -- SNMP OID entry point (sysOID). Ex: '.1.3.6.1.4.1.705.1'"
echo " -s XXXX -- SNMP OID entry point (sysOID). Ex: '.1.3.6.1.4.1.534.6.6.7'"
echo " file1 file2 -- read from files instead of an host (using Net SNMP)"
echo " file1: numeric SNMP walk (snmpwalk -On ... <sysOID>)"
echo " file2: string SNMP walk (snmpwalk -Os ... <sysOID>)"
# FIXME: EXAMPLES
echo ""
echo "Notes:"
echo " For both modes, prefer to copy the specific MIB file(s) for your device in the $0 script directory"
echo " In such case, for mode 2, also add \"-M.\" to allow the name resolution of OIDs"
echo ""
echo "Example:"
echo "mode 1: $0 -H 192.168.0.1 -n mibname -c mycommunity"
echo "mode 2: (using sysOID .1.3.6.1.4.1.534.6.6.7)"
echo " snmpwalk -On -v1 -c mycommunity 192.168.0.1 .1.3.6.1.4.1.534.6.6.7 2>/dev/null 1> numeric-walk-file"
echo " snmpwalk -Os -v1 -m ALL -M+. -c mycommunity 192.168.0.1 .1.3.6.1.4.1.534.6.6.7 2>/dev/null 1> string-walk-file"
echo " $0 -s .1.3.6.1.4.1.534.6.6.7 numeric-walk-file string-walk-file"
}
# variables
@ -66,10 +78,14 @@ TMP_NUMWALKFILE=`mktemp "$TMPDIR/$NAME-TMP-NUMWALK.XXXXXX"`
TMP_STRWALKFILE=`mktemp "$TMPDIR/$NAME-TMP-STRWALK.XXXXXX"`
get_snmp_data() {
# 1) get the sysOID (points the mfr specif MIB)
SYSOID=`snmpget -v1 -c $COMMUNITY -Ov $HOSTNAME .1.3.6.1.2.1.1.2.0 | cut -d' ' -f2`
echo "sysOID retrieved: ${SYSOID}"
# 1) get the sysOID (points the mfr specif MIB), apart if there's an override
if [ -z "$SYSOID" ]
then
SYSOID=`snmpget -On -v1 -c $COMMUNITY -Ov $HOSTNAME .1.3.6.1.2.1.1.2.0 | cut -d' ' -f2`
echo "sysOID retrieved: ${SYSOID}"
else
echo "Using the provided sysOID override ($SYSOID)"
fi
# 2) get the content of the mfr specif MIB
echo "Retrieving SNMP information. This may take some time"
@ -83,7 +99,7 @@ while [ $# -gt 0 ]; do
DRIVER="$2"
shift 2
elif [ $# -gt 1 -a "$1" = "-M" ]; then
MIBS_DIRLIST="+$2"
MIBS_DIRLIST="$MIBS_DIRLIST:$2"
shift 2
elif [ "$1" = "-k" ]; then
KEEP=yes
@ -166,7 +182,7 @@ fi
cleanup () {
rm -f "$DEBUG $DFL_NUMWALKFILE $TMP_NUMWALKFILE $DFL_STRWALKFILE $TMP_STRWALKFILE"
}
if [ -z "$KEEP" ]; then
if [ -n "$KEEP" ]; then
trap cleanup EXIT
fi
@ -272,7 +288,7 @@ cat > "$CFILE" <<EOF
* static info_lkp_t onbatt_info[] = {
* { 1, "OB" },
* { 2, "OL" },
* { 0, "NULL" }
* { 0, NULL }
* };
*/
@ -301,7 +317,7 @@ static snmp_info_t ${LDRIVER}_mib[] = {
* static info_lkp_t onbatt_info[] = {
* { 1, "OB" },
* { 2, "OL" },
* { 0, "NULL" }
* { 0, NULL }
* };
*/
EOF
@ -323,7 +339,7 @@ while IFS= read -r line; do
fi
# get the matching numeric OID
NUM_OID="`sed -n ${LINENB}p ${NUMWALKFILE} | cut -d' ' -f1`"
printf "\t/* ${FULL_STR_OID} */\n\t{ \"unmapped.${STR_OID}\", ${ST_FLAG_TYPE}, ${SU_INFOSIZE}, \"${NUM_OID}\", NULL, SU_FLAG_OK, NULL },\n"
printf "\t/* ${FULL_STR_OID} */\n\t{ \"unmapped.${STR_OID}\", ${ST_FLAG_TYPE}, ${SU_INFOSIZE}, \"${NUM_OID}\", NULL, SU_FLAG_OK, NULL, NULL },\n"
done < ${STRWALKFILE} >> ${CFILE}
# append footer

View file

@ -222,6 +222,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -4,7 +4,7 @@ After=local-fs.target network.target nut-driver.service
# We don't Require drivers to be successfully started! This would be
# a change of behavior compared to init SysV, and could prevent from
# accessing successfully started, at least to audit a system.
#Requires=nut-driver.service
Wants=nut-driver.service
Before=nut-monitor.service
[Service]

View file

@ -215,6 +215,7 @@ LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBDIR = @LIBDIR@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@

View file

@ -50,6 +50,8 @@ ATTR{idVendor}=="0463", ATTR{idProduct}=="ffff", MODE="664", GROUP="@RUN_AS_GROU
# Dell
# various models - usbhid-ups
ATTR{idVendor}=="047c", ATTR{idProduct}=="ffff", MODE="664", GROUP="@RUN_AS_GROUP@"
# TS Shara UPSes - nutdrv_qx
ATTR{idVendor}=="0483", ATTR{idProduct}=="0035", MODE="664", GROUP="@RUN_AS_GROUP@"
# Riello (Cypress Semiconductor Corp.)
# various models - riello_usb
@ -224,6 +226,10 @@ ATTR{idVendor}=="10af", ATTR{idProduct}=="0004", MODE="664", GROUP="@RUN_AS_GROU
ATTR{idVendor}=="10af", ATTR{idProduct}=="0008", MODE="664", GROUP="@RUN_AS_GROUP@"
# GE EP series - blazer_usb
ATTR{idVendor}=="14f0", ATTR{idProduct}=="00c9", MODE="664", GROUP="@RUN_AS_GROUP@"
# AEG
# PROTECT B / NAS - usbhid-ups
ATTR{idVendor}=="2b2d", ATTR{idProduct}=="ffff", MODE="664", GROUP="@RUN_AS_GROUP@"
# Ablerex 625L USB - blazer_usb
ATTR{idVendor}=="ffff", ATTR{idProduct}=="0000", MODE="664", GROUP="@RUN_AS_GROUP@"

View file

@ -1,12 +1,20 @@
##############################################################################################################
# Uninterruptible Power Supplies with USB HID interfaces
#
# to keep up to date, monitor https://github.com/networkupstools/nut/commits/master/scripts/upower/95-upower-hid.rules
# This file was automatically generated by NUT:
# https://github.com/networkupstools/nut/
#
# To keep up to date, monitor upstream NUT
# https://github.com/networkupstools/nut/commits/master/scripts/upower/95-upower-hid.rules
# or checkout the NUT repository and call 'tools/nut-usbinfo.pl'
# newer hiddev are part of the usbmisc class
SUBSYSTEM=="usbmisc", GOTO="up_hid_chkdev"
# only support USB, else ignore
SUBSYSTEM!="usb", GOTO="up_hid_end"
# if usbraw device, ignore
LABEL="up_hid_chkdev"
KERNEL!="hiddev*", GOTO="up_hid_end"
# if an interface, ignore
@ -25,6 +33,7 @@ ATTRS{idVendor}=="0764", ENV{UPOWER_VENDOR}="Cyber Power Systems"
ATTRS{idVendor}=="09ae", ENV{UPOWER_VENDOR}="TrippLite"
ATTRS{idVendor}=="0d9f", ENV{UPOWER_VENDOR}="PowerCOM"
ATTRS{idVendor}=="10af", ENV{UPOWER_VENDOR}="Liebert"
ATTRS{idVendor}=="2b2d", ENV{UPOWER_VENDOR}="AEG"
# Hewlett Packard
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="0001", ENV{UPOWER_BATTERY_TYPE}="ups"
@ -130,4 +139,7 @@ ATTRS{idVendor}=="10af", ATTRS{idProduct}=="0001", ENV{UPOWER_BATTERY_TYPE}="ups
ATTRS{idVendor}=="10af", ATTRS{idProduct}=="0004", ENV{UPOWER_BATTERY_TYPE}="ups"
ATTRS{idVendor}=="10af", ATTRS{idProduct}=="0008", ENV{UPOWER_BATTERY_TYPE}="ups"
# AEG
ATTRS{idVendor}=="2b2d", ATTRS{idProduct}=="ffff", ENV{UPOWER_BATTERY_TYPE}="ups"
LABEL="up_hid_end"