From 17540527582ab61a9a3c785fe9ae5bd054111cf2 Mon Sep 17 00:00:00 2001 From: structix Date: Sun, 17 Sep 2017 17:06:06 +0200 Subject: [PATCH] Added signal.h --- RestServer/main.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/RestServer/main.c b/RestServer/main.c index 768977a..f5a031c 100644 --- a/RestServer/main.c +++ b/RestServer/main.c @@ -5,6 +5,8 @@ #include #include +#include + #include "sendmysql.h" #include "calculate.h" @@ -15,6 +17,18 @@ #define PORT 1337 #define PREFIX "/abshum" + +struct _u_instance instance; + + +void exitFunction(void) { + printf("Exiting HumidityServer.\n"); + ulfius_stop_framework(&instance); + ulfius_clean_instance(&instance); + exit(0); +} + + int callback_welcome (const struct _u_request * request, struct _u_response * response, void * user_data) { ulfius_set_string_body_response(response, 200, "Welcome to the HumidityPi rest service!"); return U_CALLBACK_CONTINUE; @@ -98,8 +112,8 @@ int callback_absTempHum(const struct _u_request *request, struct _u_response *re int main(void) { - struct _u_instance instance; + atexit(exitFunction); // Initialize instance with the port number if (ulfius_init_instance(&instance, PORT, NULL, NULL) != U_OK) { fprintf(stderr, "Error ulfius_init_instance, abort\n"); @@ -120,10 +134,7 @@ int main(void) { fprintf(stderr, "Error starting framework\n"); } printf("End framework\n"); - - ulfius_stop_framework(&instance); - ulfius_clean_instance(&instance); - + return 0; }