ubox: add log_trailer_null option to uci
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 9 Apr 2015 10:32:18 +0000 (10:32 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 9 Apr 2015 10:32:18 +0000 (10:32 +0000)
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45329 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/system/ubox/files/log.init

index 3e06fa5..4fc00d5 100644 (file)
@@ -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
 }