mirror of
				https://github.com/openwrt/packages.git
				synced 2025-10-31 13:18:26 +00:00 
			
		
		
		
	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>
		
			
				
	
	
		
			77 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh /etc/rc.common
 | |
| # Copyright © 2012 OpenWrt.org
 | |
| #
 | |
| # This is free software, licensed under the GNU General Public License v2.
 | |
| # See /LICENSE for more information.
 | |
| #
 | |
| START=87
 | |
| STOP=23
 | |
| USE_PROCD=1
 | |
| 
 | |
| DEFAULT=/etc/default/nut
 | |
| UPSCGI_C=/var/etc/nut/hosts.conf
 | |
| UPSCGI_S=/var/etc/nut/upsset.conf
 | |
| 
 | |
| nut_upscgi_upsset() {
 | |
| 	local cfg="$1"
 | |
| 	local enable
 | |
| 
 | |
| 	config_get_bool enable "$cfg" enable 0
 | |
| 
 | |
| 	if [ "$enable" -eq 1 ]; then
 | |
| 		ln -sf /etc/nut/upsset.conf.enable "$UPSCGI_S"
 | |
| 	else
 | |
| 		ln -sf /etc/nut/upsset.conf.disable "$UPSCGI_S"
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| nut_upscgi_add() {
 | |
| 	local cfg="$1"
 | |
| 	local upsname
 | |
| 	local hostname
 | |
| 	local port
 | |
| 	local displayname
 | |
| 
 | |
| 	config_get upsname "$cfg" upsname
 | |
| 	config_get hostname "$cfg" hostname localhost
 | |
| 	config_get port "$cfg" port
 | |
| 	config_get pass "$cfg" password
 | |
| 	system="$upsname@$hostname"
 | |
| 	if [ -n "$port" ]; then
 | |
| 	    system="$system:$port";
 | |
| 	fi
 | |
| 	config_get displayname "$cfg" displayname
 | |
| 	echo "MONITOR $system \"$displayname\"" >> "$UPSCGI_C"
 | |
| }
 | |
| 
 | |
| service_reload() {
 | |
| 	mkdir -m 0755 -p "$(dirname "$UPSCGI_C")"
 | |
| 	rm -f "$UPSCGI_C"
 | |
| 	rm -f "$UPSCGI_S"
 | |
| 
 | |
| 	config_load nut_cgi
 | |
| 
 | |
| 	config_foreach nut_upscgi_add host
 | |
| 	config_foreach nut_upscgi_upsset upsset
 | |
| 
 | |
| 	[ -s "$UPSCGI_C" ] && chmod 640 "$UPSCGI_C"
 | |
| }
 | |
| 
 | |
| start_service() {
 | |
| 	service_reload
 | |
| }
 | |
| 
 | |
| reload_service() {
 | |
| 	service_reload
 | |
| }
 | |
| 
 | |
| stop_service() {
 | |
| 	rm -f "$UPSCGI_C"
 | |
| 	rm -f "$UPSCGI_S"
 | |
| 	ln -sf /etc/nut/upsset.conf.disable "$UPSCGI_S"
 | |
| }
 | |
| 
 | |
| service_triggers() {
 | |
| 	procd_add_reload_trigger "nut_cgi"
 | |
| }
 |