diff options
author | Roy Marples <roy@marples.name> | 2007-08-16 17:09:57 +0000 |
---|---|---|
committer | Roy Marples <roy@marples.name> | 2007-08-16 17:09:57 +0000 |
commit | eba9b8ac144aaf86d6e5a80e48ccd70ae9515962 (patch) | |
tree | f19168f4df796fa770e1541913b4d0ea36e0dd90 | |
parent | 6e5c8f8e5a02f624f2f8dd7d0b639d54e2993498 (diff) |
Fully move esyslog into rc
-rw-r--r-- | sh/functions.sh | 20 | ||||
-rw-r--r-- | src/rc.c | 12 |
2 files changed, 9 insertions, 23 deletions
diff --git a/sh/functions.sh b/sh/functions.sh index 18194862..5b4f8d91 100644 --- a/sh/functions.sh +++ b/sh/functions.sh @@ -17,26 +17,6 @@ eoutdent() { return 0 } -# void esyslog(char* priority, char* tag, char* message) -# -# use the system logger to log a message -# -esyslog() { - local pri= tag= - - if [ -x /usr/bin/logger ] ; then - pri="$1" - tag="$2" - - shift 2 - [ -z "$*" ] && return 0 - - /usr/bin/logger -p "${pri}" -t "${tag}" -- "$*" - fi - - return 0 -} - # Safer way to list the contents of a directory, # as it do not have the "empty dir bug". # @@ -172,12 +172,18 @@ static int do_e (int argc, char **argv) char *dot = strchr (argv[0], '.'); if ((level = syslog_decode (dot + 1, prioritynames)) == -1) eerrorx ("%s: invalid log level `%s'", applet, argv[0]); - argc--; - argv++; + + if (argc < 3) + eerrorx ("%s: not enough arguments", applet); + + unsetenv ("RC_ELOG"); + setenv ("RC_ELOG", argv[1], 1); + + argc -= 2; + argv += 2; } } - if (argc > 0) { for (i = 0; i < argc; i++) l += strlen (argv[i]) + 1; |