| summaryrefslogtreecommitdiff |
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-01-31 16:21:24 +0100 |
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-01-31 16:21:24 +0100 |
| commit | 509ac16d892aeb5091f68620247f6815d2e4b5f5 (patch) | |
| tree | c4adebce7791c10c4c362b77f32d4a339e8c8125 /src/server/server_signal.c | |
| parent | 1373211465c34015ee900e097aa87fbffb401187 (diff) | |
Switched to sockets, continuing implementation...
Diffstat (limited to 'src/server/server_signal.c')
| -rw-r--r-- | src/server/server_signal.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/server/server_signal.c b/src/server/server_signal.c new file mode 100644 index 0000000..97137e8 --- /dev/null +++ b/src/server/server_signal.c @@ -0,0 +1,41 @@ +#include <signal.h> +#include <string.h> +#include <stdio.h> + +#include "server.h" + +static volatile char ZoO_SERVER_IS_RUNNING = (char) 1; + +static void request_termination (int const signo) +{ + if ((signo == SIGINT) || (signo == SIGTERM)) + { + ZoO_server_request_termination(); + } +} + +void ZoO_server_request_termination (void) +{ + ZoO_SERVER_IS_RUNNING = (char) 0; +} + +int ZoO_server_is_running (void) +{ + return (int) ZoO_SERVER_IS_RUNNING; +} + +int ZoO_server_set_signal_handlers (void) +{ + struct sigaction act; + + /* + act.sa_handler = request_termination; + act.sa_mask = + act.sa_flags = + act.sa_restorer = + */ + + /* TODO */ + + return -1; +} |


