[Apcupsd-commits] apcupsd/src/drivers/snmplite snmplite.cpp, 1.1.2.14, 1.1.2.15
Brought to you by:
adk0212
From: Adam K. <ad...@us...> - 2010-08-30 18:41:12
|
Update of /cvsroot/apcupsd/apcupsd/src/drivers/snmplite In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv16589 Modified Files: Tag: Branch-3_14 snmplite.cpp Log Message: Allow user to omit one or more subsections of SNMP DEVICE string. Contributed by Lars Täer <ta...@bb...> Index: snmplite.cpp =================================================================== RCS file: /cvsroot/apcupsd/apcupsd/src/drivers/snmplite/Attic/snmplite.cpp,v retrieving revision 1.1.2.14 retrieving revision 1.1.2.15 diff -u -d -r1.1.2.14 -r1.1.2.15 --- snmplite.cpp 13 Aug 2010 18:00:15 -0000 1.1.2.14 +++ snmplite.cpp 30 Aug 2010 18:41:04 -0000 1.1.2.15 @@ -58,9 +58,9 @@ * Split the DEVICE statement and assign pointers to the various parts. * The DEVICE statement syntax in apcupsd.conf is: * - * DEVICE address:port:vendor:community + * DEVICE address[:port[:vendor[:community]]] * - * vendor can be "APC", "APC_NOTRAP", or "RFC". + * vendor can be "APC", "RFC", "MGE" or "*_NOTRAP". */ char *cp = sid->device; @@ -69,18 +69,22 @@ if (cp) { *cp++ = '\0'; - sid->port = atoi(cp); - if (sid->port == 0) + if (*cp != ':') { - log_event(ups, LOG_ERR, "snmplite Bad port number"); - exit(1); + sid->port = atoi(cp); + if (sid->port == 0) + { + log_event(ups, LOG_ERR, "snmplite Bad port number"); + exit(1); + } } cp = strchr(cp, ':'); if (cp) { *cp++ = '\0'; - sid->vendor = cp; + if (*cp != ':') + sid->vendor = cp; cp = strchr(cp, ':'); if (cp) |