summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Kaivo <jkk@ung.org>2019-03-13 21:37:38 -0400
committerJakob Kaivo <jkk@ung.org>2019-03-13 21:37:38 -0400
commitf687950445506f62595f9f31a7230c3d86f21d3e (patch)
tree34af99bc230a561012e07c4706ecebcfb74eb73d
migrate to gitlab
-rw-r--r--logger.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/logger.c b/logger.c
new file mode 100644
index 0000000..abc686c
--- /dev/null
+++ b/logger.c
@@ -0,0 +1,54 @@
+/*
+ * UNG's Not GNU
+ *
+ * Copyright (c) 2011, Jakob Kaivo <jakob@kaivo.net>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#include <stdlib.h>
+#include <string.h>
+#include <syslog.h>
+#include <limits.h>
+
+// GNU libc unsets ARG_MAX
+#ifndef ARG_MAX
+# define ARG_MAX _POSIX_ARG_MAX
+#endif
+
+const char *logger_desc = "log messages";
+const char *logger_inv = "logger string...";
+
+int
+main (int argc, char **argv)
+{
+ char msg[ARG_MAX];
+ int i = 1;
+
+ if (argc < 2)
+ return 1;
+
+ memset (msg, 0, ARG_MAX);
+
+ while (i < argc) {
+ strcat (msg, argv[i]);
+ if (i < argc)
+ strcat (msg ," ");
+ i++;
+ }
+
+ syslog (LOG_USER, "%s", msg);
+
+ return 0;
+}