]> andersk Git - moira.git/blobdiff - lib/critical.c
Command line printer manipulation client, and build goo.
[moira.git] / lib / critical.c
index 6b96880f8ce2a5b1d98c88582d20e390cc9d5f89..f4ef4b2d90af3b0bd853ef4412daa0961484198b 100644 (file)
@@ -8,7 +8,7 @@
  */
 
 
-#ifdef ZEPHYR
+#ifdef HAVE_ZEPHYR
 /* need to include before moira.h, which includes krb_et.h, because
    zephyr.h is broken */
 #include <zephyr/zephyr.h>
@@ -21,25 +21,25 @@ extern Code_t ZSendNotice(ZNotice_t *notice, Z_AuthProc cert_routine);
 #include <moira_site.h>
 
 #include <stdio.h>
+#include <stdlib.h>
 #include <string.h>
-#ifdef SYSLOG
+#ifndef HAVE_ZEPHYR
 #include <syslog.h>
 #endif
+#include <time.h>
 
 RCSID("$Header$");
 
 /* mode to create the file with */
 #define LOGFILEMODE    0644
 
-extern char *whoami;
-
 /* This routine sends a class MOIRA zephyrgram of specified instance
  * and logs to a special logfile the message passed to it via msg
  * and args in printf format.  *** It expects the global variable
  * whoami to be defined and contain the name of the calling program.
  */
 
-void critical_alert(char *instance, char *msg, ...)
+void critical_alert(char *whoami, char *instance, char *msg, ...)
 {
   FILE *crit;
   char *buf;
@@ -93,11 +93,7 @@ void critical_alert(char *instance, char *msg, ...)
 
 void send_zgram(char *inst, char *msg)
 {
-#ifdef SYSLOG
-  char *buf;
-#endif
-
-#ifdef ZEPHYR
+#ifdef HAVE_ZEPHYR
   ZNotice_t znotice;
 
   memset(&znotice, 0, sizeof(znotice));
@@ -111,13 +107,14 @@ void send_zgram(char *inst, char *msg)
   znotice.z_opcode = "";
   znotice.z_recipient = "";
   ZSendNotice(&znotice, ZNOAUTH);
-#endif
-#ifdef SYSLOG
-  buf = malloc(9 + strlen(instance) + strlen(msg));
+#else
+  char *buf;
+
+  buf = malloc(9 + strlen(inst) + strlen(msg));
   if (buf)
     {
       sprintf(buf, "MOIRA: %s %s", inst, msg);
-      syslog(LOG_ERR, buf);
+      syslog(LOG_ERR, "%s", buf);
       free(buf);
     }
 #endif
This page took 0.036068 seconds and 4 git commands to generate.