*/
-#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>
#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;
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));
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