diff mbox

[OpenWrt-Devel] ubox: add log_trailer_null option to uci

Message ID 1428517504-15560-1-git-send-email-champetier.etienne@gmail.com
State Accepted
Headers show

Commit Message

Etienne Champetier April 8, 2015, 6:25 p.m. UTC
this allow us to use syslog tcp with \0 trailer
instead of \n trailer (logread -0 option)

Signed-off-by: Etienne CHAMPETIER <champetier.etienne@gmail.com>
---
 package/system/ubox/files/log.init | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
diff mbox

Patch

diff --git a/package/system/ubox/files/log.init b/package/system/ubox/files/log.init
index 3e06fa5..4fc00d5 100644
--- a/package/system/ubox/files/log.init
+++ b/package/system/ubox/files/log.init
@@ -18,6 +18,7 @@  validate_log_section()
 		'log_remote:bool:1' \
 		'log_port:port:514' \
 		'log_proto:or("tcp", "udp"):udp' \
+		'log_trailer_null:bool:0' \
 		'log_prefix:string'
 }
 
@@ -63,7 +64,7 @@  start_service_remote()
 {
 	PIDCOUNT="$(( ${PIDCOUNT} + 1))"
 	local pid_file="/var/run/logread.${PIDCOUNT}.pid"
-	local log_ip log_port log_proto log_prefix log_remote
+	local log_ip log_port log_proto log_prefix log_remote log_trailer_null
 
 	validate_log_section "${1}" || {
 		echo "validation failed"
@@ -74,7 +75,10 @@  start_service_remote()
 
 	procd_open_instance
 	procd_set_param command "$PROG" -f -r "$log_ip" "${log_port}" -p "$pid_file"
-	[ "${log_proto}" != "udp" ] || procd_append_param command -u
+	case "${log_proto}" in
+		"udp") procd_append_param command -u;;
+		"tcp") [ "${log_trailer_null}" -eq 1 ] && procd_append_param command -0;;
+	esac
 	[ -z "${log_prefix}" ] || procd_append_param command -P "${log_prefix}"
 	procd_close_instance
 }