From d742d5e53b5ed8f58714038a2275808fcaeb1dcc Mon Sep 17 00:00:00 2001
From: An-Cheng Huang <ancheng@vyatta.com>
Date: Mon, 5 Nov 2007 18:42:50 -0800
Subject: add help and syntax check for syslog facilities/levels. this also
 fixes bug 2427 (and 1812?).

---
 templates/system/syslog/console/facility/node.def  | 35 +++++++++++++++++++---
 .../console/facility/node.tag/level/node.def       | 10 +++++++
 2 files changed, 41 insertions(+), 4 deletions(-)

(limited to 'templates/system/syslog/console/facility')

diff --git a/templates/system/syslog/console/facility/node.def b/templates/system/syslog/console/facility/node.def
index c5d0d76f..a46ac2f0 100644
--- a/templates/system/syslog/console/facility/node.def
+++ b/templates/system/syslog/console/facility/node.def
@@ -1,8 +1,35 @@
 tag:
 type: txt
 help: "Configure facility for console logging"
+syntax: $(@) in "auth", "authpriv", "cron", "daemon", "kern", "lpr", "mail", "mark", "news", "security", "syslog", "user", "uucp", "local0", "local1", "local2", "local3", "local4", "local5", "local6", "local7", "all"; "\"$(@)\" is not a valid logging facility"
 update: "sudo sh -c \"LVL=`echo -n $(level/@) | tr '[a-z]' '[A-Z]'` && \
-/opt/vyatta/sbin/vyatta_update_syslog.pl '$(@)\\.' '\\/dev\\/console' \
-\\\"$(@).\\\\\$LVL\t/dev/console\n\\\"\" "
-delete: "sudo sh -c \"/opt/vyatta/sbin/vyatta_update_syslog.pl \
-'$(@)\\.' '\\/dev\\/console' ''\" "
+FAC='$(@)' ; if [ x\\\\\$FAC == xall ]; then FAC='*'; fi && \
+/opt/vyatta/sbin/vyatta_update_syslog.pl \\\"\\\\\$FAC\\.\\\" \
+  '\\/dev\\/console' \\\"\\\\\$FAC.\\\\\$LVL\t/dev/console\n\\\"\" "
+delete: "sudo sh -c \"FAC='$(@)' ; \
+if [ x\\\\\$FAC == xall ]; then FAC='*'; fi && \
+/opt/vyatta/sbin/vyatta_update_syslog.pl \\\"\\\\\$FAC\\.\\\" \
+  '\\/dev\\/console' ''\" "
+#comp_help:Available logging facilities:
+#  all           All facilities excluding "mark"
+#  auth          Authentication and authorization
+#  authpriv      Non-system authorization
+#  cron          Cron daemon
+#  daemon        System daemons
+#  kern          Kernel
+#  lpr           Line printer spooler
+#  mail          Mail subsystem
+#  mark          Timestamp
+#  news          USENET subsystem
+#  security      Authentication and authorization
+#  syslog        Authentication and authorization
+#  user          Application processes
+#  uucp          UUCP subsystem
+#  local0        Local facility 0
+#  local1        Local facility 1
+#  local2        Local facility 2
+#  local3        Local facility 3
+#  local4        Local facility 4
+#  local5        Local facility 5
+#  local6        Local facility 6
+#  local7        Local facility 7
diff --git a/templates/system/syslog/console/facility/node.tag/level/node.def b/templates/system/syslog/console/facility/node.tag/level/node.def
index 9be459c6..ea75775a 100644
--- a/templates/system/syslog/console/facility/node.tag/level/node.def
+++ b/templates/system/syslog/console/facility/node.tag/level/node.def
@@ -1,3 +1,13 @@
 type: txt
 help: "Configure the logging level"
+syntax: $(@) in "emerg", "alert", "crit", "err", "warning", "notice", "info", "debug"; "\"$(@)\" is not a valid logging level"
 default: "err"
+#comp_help:Logging levels in descending order of severity:
+#  emerg        Emergency messages
+#  alert        Urgent messages
+#  crit         Critical messages 
+#  err          Error messages
+#  warning      Warning messages
+#  notice       Messages for further investigation
+#  info         Informational messages
+#  debug        Debug messages
-- 
cgit v1.2.3