Commit graph

17 commits

Author SHA1 Message Date
Matt Merhar
72af40f2ba
nut: fix other/otherflag custom variables in nut-server.init
This allows custom config parameters to be added to the generated config
files, enabling the original intended functionality per
https://openwrt.org/docs/guide-user/services/ups/software.nut.

Example usage from /etc/config/nut_server:

config driver 'apc'
	option driver 'snmp-ups'
	option snmp_version 'v3'
	option port '172.16.100.5'
	list other 'secLevel'
	list other 'secName'
	list other 'authPassword'
	list otherflag 'notransferoids'

config other 'other_secLevel'
	option value 'authNoPriv'

config other 'other_secName'
	option value 'some_username'

config other 'other_authPassword'
	option value 'some_password'

config other 'otherflag_notransferoids'
	option value '1'

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
(cherry-picked from 0b04dd34a0)
2020-01-19 21:22:35 -08:00
Daniel F. Dickinson
d7db15459f nut: initscripts hotplug: Fix many small semantic issues
Small but important tweaks to fix the operation of the nut initscripts
and hotplug scripts.  All hail shellcheck and proofreading and
dogfooding.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2019-01-20 12:16:28 -05:00
Daniel F. Dickinson
c8cc504efe nut: Fix procd crashloop no interfaces
Fix a crashloop under procd when attempting to bind
to any address when no interfaces are yet available.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2019-01-07 02:03:31 -05:00
Daniel F. Dickinson
2d87aa40c8 nut: really run upsd as non-root
One local removal was missed in last push of this fix, so
in certain circumstances upsd would run as root even when
it shouldn't.

Fixes f48b060fa7 ("nut: Fix upsd runs as root")
Closes: #6697 (properly)

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-23 00:25:39 -05:00
Daniel F. Dickinson
23c4235554 nut: Fix additional (other) variable handling
There was a cut & paste error in the handling of 'other'
variables (i.e. driver variables not specifically known
to the package but which some users may require to be add).
There was also a logic error from not switching sufficient
after cut & paste.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-20 23:24:00 -05:00
Daniel F. Dickinson
d04f2580b1 nut: Remove extraneous config reads
Handling of driver variable defaults, overrides, and additional
(other) variables changed and left behind some extraneous
config reads (config_get and config_list_foreach).  Remove those.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-20 23:23:56 -05:00
Daniel F. Dickinson
97c7ef6c4d nut: alphabetize driver options
There are a lot of options; to make development easier
alphabetize them.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-20 23:23:50 -05:00
Daniel F. Dickinson
f48b060fa7 nut: Fix upsd runs as root
Closes #6997 - Allows upsd to runas a non-privileged user.
If any driver is running as non-privileged user, the last driver's
user will be used as the server non-privileged user, otherwise the
user specified in config upsd, otherwise nut. Previously the
localisation of RUNAS variable was in the wrong locations.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-06 03:02:29 -05:00
Daniel F. Dickinson
192b0f1646 nut: Fix a typo in setting a driver parameter
synchronous would not get set due to typo.  Fixed.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-06 00:06:53 -05:00
Daniel F. Dickinson
36fd59dc78 nut: Fix extraneous config_get
nut-server initscript had a duplicate config_get statepath, so remove it

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-11-19 16:41:32 -05:00
Daniel F. Dickinson
44e57d4bdf nut: Fix variables for NUT drivers
Avoid specifying variables that are not specificy set in order to avoid breaking
drivers for which those variables do not exist.  Closes: #7096.

As part of these fixes make sure we have all the variables we need.  Closes: #7001.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-11-19 16:40:49 -05:00
Daniel F. Dickinson
3b5a8eee84 nut: Various startup fixes for monitor and server
Various path and permissions fixes to properly allow nut-server and nut-monitor to
start properly.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-11-19 16:40:39 -05:00
Daniel F. Dickinson
461393810d nut: Use quotes around filenames
Avoid potential issues with space or other strangeness by
quoting filenames through the initscripts.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-29 00:35:01 -04:00
Daniel F. Dickinson
ceff68837d nut: Reorganize nut-server to clarify nut-driver
Clarify the different between the common nut-driver portions of
nut-server and the nut-server (upsd) proper.  nut-driver can't
be used without nut-server so there is no compelling reason
to split into a separate package, but the reorganization makes
such a move easier and makes it clear what each bit is for.

While we continue to use a single initscript, it's a properly
procdified one which handles the upsd daemon as a different
instance than the driver instances.  This resolves a race
condition in which upsd and drivers fail to start do to
a degree of interdepedence.

Also properly 'procd'ifies the nut-server initscript.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-29 00:12:53 -04:00
Daniel Dickinson
c00d89593e net/nut: Fix '/var/run' world readable warning
Use /var/run/nut as statepath and set appropriate owner
and permissions on /var/run/nut in order to avoid pidfile
for nut being world-readable.

Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2017-01-11 18:54:51 -05:00
Daniel Dickinson
a23c4e85c5 net/nut: Build optional separate packages and ucify
With a LuCI app (of which I have one written) ucification makes
sense (and is in fact needed), so ucify the initscripts.

Also, rather than making selection of things to include an image
a matter of selecting compile-time config options, make optional
things into seperate packages that are built in default builds,
and leave selection of what to include or not up to the user
(e.g. using ImageBuilder, or adding packages via opkg).

Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2017-01-11 18:53:58 -05:00
Marty R
d8258c35d5 nut: New package for Network UPS Tools
An older version of nut is in oldpackages. This commit is based on that
package and bumps the version to the latest release along with unifying
the server and client packages. More build options are provided for any
custom configuration but the defaults provide a working client and
server install which only needs a UPS driver. Drivers still build as
individual packages to minimise bloat. SSL support has also been added.

Signed-off-by: Martin Rowe <cyanidium@users.noreply.github.com>
2014-10-15 21:30:25 -07:00