summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2013-12-10 21:38:29 -0800
committerKaz Kylheku <kaz@kylheku.com>2013-12-10 21:38:29 -0800
commit8d40832158ca90f560b13e75988049db13c62fe0 (patch)
treeb167b74eb94d3fdbe9b10929eb482dd1074d57cc
parenta38be95bed7fb5944bb9e7263a14583acd0f7810 (diff)
downloadtxr-8d40832158ca90f560b13e75988049db13c62fe0.tar.gz
txr-8d40832158ca90f560b13e75988049db13c62fe0.tar.bz2
txr-8d40832158ca90f560b13e75988049db13c62fe0.zip
* eval.c (eval_init): closelog_wrap interned.
* syslog.c (closelog_wrap): New function. * syslog.h (closelog_wrap): Declared. * txr.1: Documented.
-rw-r--r--ChangeLog10
-rw-r--r--eval.c1
-rw-r--r--syslog.c6
-rw-r--r--syslog.h1
-rw-r--r--txr.112
5 files changed, 30 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 314e0570..4dea85d2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
2013-12-10 Kaz Kylheku <kaz@kylheku.com>
+ * eval.c (eval_init): closelog_wrap interned.
+
+ * syslog.c (closelog_wrap): New function.
+
+ * syslog.h (closelog_wrap): Declared.
+
+ * txr.1: Documented.
+
+2013-12-10 Kaz Kylheku <kaz@kylheku.com>
+
* eval.c (eval_init): Register streamp, real_time_stream_p,
stream_get_prop and stream_set_prop as intrinsics.
diff --git a/eval.c b/eval.c
index 6f99308a..7906dda8 100644
--- a/eval.c
+++ b/eval.c
@@ -2593,6 +2593,7 @@ void eval_init(void)
reg_var(intern(lit("log-info"), user_package), &log_info_v);
reg_var(intern(lit("log-debug"), user_package), &log_debug_v);
reg_fun(intern(lit("openlog"), user_package), func_n3o(openlog_wrap, 1));
+ reg_fun(intern(lit("closelog"), user_package), func_n0(closelog_wrap));
reg_fun(intern(lit("setlogmask"), user_package), func_n1(setlogmask_wrap));
reg_fun(intern(lit("syslog"), user_package), func_n2v(syslog_wrap));
#endif
diff --git a/syslog.c b/syslog.c
index 0bcd1cd3..840ccf09 100644
--- a/syslog.c
+++ b/syslog.c
@@ -112,6 +112,12 @@ val syslog_wrap(val prio, val fmt, val args)
return nil;
}
+val closelog_wrap(void)
+{
+ closelog();
+ return nil;
+}
+
static void syslog_mark(val stream)
{
val stuff = (val) stream->co.handle;
diff --git a/syslog.h b/syslog.h
index be530c06..ea5c66d1 100644
--- a/syslog.h
+++ b/syslog.h
@@ -39,6 +39,7 @@ extern val std_log;
void syslog_init(void);
val openlog_wrap(val ident, val optmask, val facility);
+val closelog_wrap(void);
val setlogmask_wrap(val mask);
val syslog_wrap(val prio, val fmt, val args);
val make_syslog_stream(val prio);
diff --git a/txr.1 b/txr.1
index 20795c2a..ef7ee2d3 100644
--- a/txr.1
+++ b/txr.1
@@ -11102,6 +11102,18 @@ used, specifying the absence of any options.
The <facility> argument is one of the values log-user, log-daemon or log-auth.
If it is missing, then log-user is assumed.
+.SS The closelog function
+
+.TP
+Syntax:
+
+ (closelog)
+
+.TP
+Description:
+
+The closelog function is a wrapper for the C function closelog.
+
.SS The setlogmask function
.TP