* For copying and distribution information, please see the file
* <mit-copyright.h>.
*
- * SMS server process.
+ * MOIRA server process.
*
* Most of this is stolen from ../gdb/tsr.c
*
*
*/
-static char *rcsid_sms_main_c = "$Header$";
+static char *rcsid_mr_main_c = "$Header$";
#include <mit-copyright.h>
#include <strings.h>
#include <sys/signal.h>
#include <sys/wait.h>
#include <sys/stat.h>
-#include "sms_server.h"
+#include "mr_server.h"
#include <krb_et.h>
extern CONNECTION newconn, listencon;
extern char *malloc();
extern int free();
extern char *inet_ntoa();
-extern void sms_com_err();
+extern void mr_com_err();
extern void do_client();
extern int sigshut();
extern time_t now;
/*
- * Main SMS server loop.
+ * Main MOIRA server loop.
*
* Initialize the world, then start accepting connections and
* making progress on current connections.
*/
initialize_sms_error_table();
initialize_krb_error_table();
- set_com_err_hook(sms_com_err);
+ initialize_gdss_error_table();
+ set_com_err_hook(mr_com_err);
setlinebuf(stderr);
if (argc != 1) {
- com_err(whoami, 0, "Usage: smsd");
+ com_err(whoami, 0, "Usage: moirad");
exit(1);
}
* Database initialization. Only init if database should be open.
*/
- if (stat(SMS_MOTD_FILE, &stbuf) != 0) {
- if ((status = sms_open_database()) != 0) {
+ if (stat(MOIRA_MOTD_FILE, &stbuf) != 0) {
+ if ((status = mr_open_database()) != 0) {
com_err(whoami, status, " when trying to open database.");
exit(1);
}
nclients = 0;
clients = (client **) malloc(0);
- sms_setup_signals();
+ mr_setup_signals();
journal = fopen(JOURNAL, "a");
if (journal == NULL) {
op_list = create_list_of_operations(1, listenop);
com_err(whoami, 0, "started (pid %d)", getpid());
- com_err(whoami, 0, rcsid_sms_main_c);
+ com_err(whoami, 0, rcsid_mr_main_c);
if (dormant != ASLEEP)
- send_zgram("SMS", "server started");
+ send_zgram("MOIRA", "server started");
else
- send_zgram("SMS", "server started, but database closed");
+ send_zgram("MOIRA", "server started, but database closed");
/*
* Run until shut down.
com_err(whoami, 0, "tick");
#endif notdef
if (dormant == SLEEPY) {
- sms_close_database();
+ mr_close_database();
com_err(whoami, 0, "database closed");
- sms_setup_signals();
- send_zgram("SMS", "database closed");
+ mr_setup_signals();
+ send_zgram("MOIRA", "database closed");
dormant = ASLEEP;
} else if (dormant == GROGGY) {
- sms_open_database();
+ mr_open_database();
com_err(whoami, 0, "database open");
- sms_setup_signals();
- send_zgram("SMS", "database open again");
+ mr_setup_signals();
+ send_zgram("MOIRA", "database open again");
dormant = AWAKE;
}
if (errno == EWOULDBLOCK) {
do_reset_listen();
} else {
+ static int count = 0;
com_err(whoami, errno,
- " error on listen");
- exit(1);
+ " error (%d) on listen", count);
+ if (count++ > 10)
+ exit(1);
}
} else if ((status = new_connection()) != 0) {
com_err(whoami, errno,
* down now.
*/
if ((dormant == AWAKE) && (nclients == 1) &&
- (stat(SMS_MOTD_FILE, &stbuf) == 0)) {
+ (stat(MOIRA_MOTD_FILE, &stbuf) == 0)) {
com_err(whoami, 0, "motd file exists, slumbertime");
dormant = SLEEPY;
}
* to be down, then wake up.
*/
if ((dormant == ASLEEP) &&
- (stat(SMS_MOTD_FILE, &stbuf) == -1) &&
+ (stat(MOIRA_MOTD_FILE, &stbuf) == -1) &&
(errno == ENOENT)) {
com_err(whoami, 0, "motd file no longer exists, waking up");
dormant = GROGGY;
}
}
com_err(whoami, 0, "%s", takedown);
- sms_close_database();
- send_zgram("SMS", takedown);
+ mr_close_database();
+ send_zgram("MOIRA", takedown);
return 0;
}
int
do_listen()
{
- char *service = index(SMS_SERVER, ':') + 1;
+ char *service = index(MOIRA_SERVER, ':') + 1;
listencon = create_listening_connection(service);
}
if (newconn == NULL) {
- return SMS_NOT_CONNECTED;
+ return MR_NOT_CONNECTED;
}
/*
cp->id = counter++;
cp->args = NULL;
cp->clname[0] = NULL;
- cp->reply.sms_argv = NULL;
+ cp->reply.mr_argv = NULL;
cp->first = NULL;
cp->last = NULL;
cp->last_time_used = now;
}
-sms_setup_signals()
+mr_setup_signals()
{
/* There should probably be a few more of these. */