summaryrefslogtreecommitdiff
path: root/0.8/src/sign.cpp
diff options
context:
space:
mode:
Diffstat (limited to '0.8/src/sign.cpp')
-rw-r--r--0.8/src/sign.cpp146
1 files changed, 0 insertions, 146 deletions
diff --git a/0.8/src/sign.cpp b/0.8/src/sign.cpp
deleted file mode 100644
index c5bc835..0000000
--- a/0.8/src/sign.cpp
+++ /dev/null
@@ -1,146 +0,0 @@
-/*:*
- *: File: ./src/sign.cpp
- *:
- *: yChat; Homepage: ychat.buetow.org; Version 0.9.0-CURRENT
- *:
- *: Copyright (C) 2003 Paul C. Buetow, Volker Richter
- *: Copyright (C) 2004 Paul C. Buetow
- *: Copyright (C) 2005 EXA Digital Solutions GbR
- *: Copyright (C) 2006, 2007 Paul C. Buetow
- *:
- *: This program is free software; you can redistribute it and/or
- *: modify it under the terms of the GNU General Public License
- *: as published by the Free Software Foundation; either version 2
- *: of the License, or (at your option) any later version.
- *:
- *: This program is distributed in the hope that it will be useful,
- *: but WITHOUT ANY WARRANTY; without even the implied warranty of
- *: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- *: GNU General Public License for more details.
- *:
- *: You should have received a copy of the GNU General Public License
- *: along with this program; if not, write to the Free Software
- *: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *:*/
-
-#ifndef SIGN_CPP
-#define SIGN_CPP
-
-#include "sign.h"
-
-struct event sign::ev_sigpipe;
-struct event sign::ev_sigusr1;
-struct event sign::ev_sigusr2;
-struct event sign::ev_sighup;
-struct event sign::ev_sigint;
-struct event sign::ev_sigterm;
-#ifdef CTCSEGV
-struct event sign::ev_sigsev;
-#endif
-
-void
-sign::clean_template_cache()
-{
- wrap::HTML->clear_cache();
-}
-
-//<<*
-void
-sign::reload_dlopen_modules()
-{
- wrap::MODL->reload_modules();
-}
-//*>>
-
-void
-sign::terminate_received()
-{
- wrap::GCOL->remove_garbage(); //<<
- exit(0);
-}
-
-void
-sign::handle_sigpipe(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGPIPE"));
-}
-
-void
-sign::handle_sigusr1(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGUSR1"));
- clean_template_cache();
-}
-
-//<<*
-void
-sign::handle_sigusr2(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGUSR2"));
- reload_dlopen_modules();
-}
-//*>>
-
-void
-sign::handle_sighup(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGHUP"));
- terminate_received();
-}
-
-void
-sign::handle_sigint(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGINT"));
- terminate_received();
-}
-
-void
-sign::handle_sigterm(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGTERM"));
- terminate_received();
-}
-
-#ifdef CTCSEGV
-void
-sign::handle_sigsegv(int i_fd, short event, void *p_arg)
-{
- wrap::system_message(SIGNALR+string("SIGSEGV"));
-}
-#endif
-
-
-void
-sign::init_event_handlers()
-{
- // Ignore SIGPIPE. otherwise the server will shut down with "Broken pipe" if
- // a client unexpected disconnects himself from a SOCK_STREAM.
- signal_set(&ev_sigpipe, SIGPIPE, handle_sigpipe, NULL);
- signal_add(&ev_sigpipe, NULL);
-
- signal_set(&ev_sigusr1, SIGUSR1, handle_sigusr1, NULL);
- signal_add(&ev_sigusr1, NULL);
-
- //<<*
- signal_set(&ev_sigusr2, SIGUSR2, handle_sigusr2, NULL);
- signal_add(&ev_sigusr2, NULL);
- //*>>
-
- signal_set(&ev_sighup, SIGHUP, handle_sighup, NULL);
- signal_add(&ev_sighup, NULL);
-
- signal_set(&ev_sigint, SIGINT, handle_sigint, NULL);
- signal_add(&ev_sigint, NULL);
-
- signal_set(&ev_sigterm, SIGTERM, handle_sigterm, NULL);
- signal_add(&ev_sigterm, NULL);
-
-#ifdef CTCSEGV
-
- signal_set(&ev_sigsev, SIGSEGV, handle_sigsev, NULL);
-#endif
-
-}
-
-#endif