$Log$
+ Revision 623.6 2004/07/24 05:11:52 ajc
+ * citadel.c: temporarily commented out the signal() call for SIGHUP because
+ it is causing the client not to work at all on Linux 2.6 (or at least on
+ Fedora Core 2) when citadel is called as the login shell -- a SIGHUP is
+ mysteriously received at the username prompt and the program exits.
+
Revision 623.5 2004/07/15 02:54:49 ajc
* serv_network.c: grab and use a networker-local copy of the network
configuration, ensuring that it doesn't accidentally get clobbered while
Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
* Initial CVS import
+
/*
* here is our 'clean up gracefully and exit' routine
*/
-void logoff(CtdlIPC *ipc, int code)
+void ctdl_logoff(char *file, int line, CtdlIPC *ipc, int code)
{
int lp;
}
color(ORIGINAL_PAIR); /* Restore the old color settings */
sttybbs(SB_RESTORE); /* return the old terminal settings */
+ /*
+ * uncomment the following if you need to know why Citadel exited
+ printf("*** Exit code %d at %s:%d\n", code, file, line);
+ sleep(2);
+ */
exit(code); /* exit with the proper exit code */
}
sttybbs(SB_SAVE); /* Store the old terminal parameters */
load_command_set(); /* parse the citadel.rc file */
sttybbs(SB_NO_INTR); /* Install the new ones */
- signal(SIGHUP, dropcarr); /* Cleanup gracefully if carrier is dropped */
+ /* signal(SIGHUP, dropcarr);FIXME */ /* Cleanup gracefully if carrier is dropped */
signal(SIGPIPE, dropcarr); /* Cleanup gracefully if local conn. dropped */
signal(SIGTERM, dropcarr); /* Cleanup gracefully if terminated */
signal(SIGCONT, catch_sigcont); /* Catch SIGCONT so we can reset terminal */
extern char rc_alt_semantics;
extern char rc_reply_extedit;
extern char instant_msgs;
-void logoff(CtdlIPC *ipc, int code);
+void ctdl_logoff(char *file, int line, CtdlIPC *ipc, int code);
+#define logoff(ipc, code) ctdl_logoff(__FILE__, __LINE__, ipc, code)
void formout(CtdlIPC *ipc, char *name);
void sighandler(int which_sig);
extern int secure;