-/*
- * We handle "next" and "stop" much differently than in earlier versions.
- * The signal catching routine simply sets a flag and returns.
- */
-void sighandler(int which_sig)
-{
- signal(SIGINT, SIG_IGN);
- signal(SIGQUIT, SIG_IGN);
- sigcaught = which_sig;
- return;
-}
-
-
/*
* signal catching function for hangups...
*/
pprintf("%s\n", &buf[4]);
return;
}
- sigcaught = 0;
- sttybbs(SB_YES_INTR);
pprintf(" User Name Num L LastCall Calls Posts\n");
pprintf("------------------------- ----- - ---------- ----- -----\n");
while (serv_gets(buf), strcmp(buf, "000")) {
}
}
- sttybbs(SB_NO_INTR);
pprintf("\n");
}
}
break;
+ case 85:
+ printf("All users will be disconnected! "
+ "Really terminate the server? ");
+ if (yesno() == 1) {
+ serv_puts("DOWN");
+ serv_gets(aaa);
+ printf("%s\n", &aaa[4]);
+ if (aaa[0]=='2') {
+ updatels();
+ a = 0;
+ termn8 = 1;
+ }
+ }
+
+ case 86:
+ printf("Do you really want to schedule a "
+ "server shutdown? ");
+ if (yesno() == 1) {
+ serv_puts("SCDN 1");
+ serv_gets(aaa);
+ if (aaa[0]=='2') {
+ if (atoi(&aaa[4])) {
+ printf(
+"The Citadel server will terminate when all users are logged off.\n"
+ );
+ }
+ else {
+ printf(
+"The Citadel server will not terminate.\n"
+ );
+ }
+ }
+ }
+
case 6:
gotonext();
break;