X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/307532819d6117d154436da4131ca645f7691a63..9c29aeaca5bdd90922c3192fd5e28530af28aba7:/projects/sgauth/web.cpp?ds=inline diff --git a/projects/sgauth/web.cpp b/projects/sgauth/web.cpp index ffab862b..61cd2b58 100644 --- a/projects/sgauth/web.cpp +++ b/projects/sgauth/web.cpp @@ -23,14 +23,16 @@ $Date: 2010/03/15 12:58:17 $ */ -#include -#include -#include #include +#include +#include +#include +#include + +#include "stg/common.h" +#include "stg/ia.h" #include "web.h" -#include "common.h" -#include "ia_auth_c.h" extern WEB * web; extern IA_CLIENT_PROT * clnp; @@ -42,10 +44,15 @@ extern IA_CLIENT_PROT * clnp; //--------------------------------------------------------------------------- #ifndef WIN32 void * RunWeb(void *) +{ +sigset_t signalSet; +sigfillset(&signalSet); +pthread_sigmask(SIG_BLOCK, &signalSet, NULL); + #else unsigned long WINAPI RunWeb(void *) -#endif { +#endif while (1) web->Run(); return NULL; @@ -66,6 +73,8 @@ for (int i = 0; i < DIR_NUM; i++) dirName[i] = "-"; refreshPeriod = 5; + +memset(&ls, 0, sizeof(ls)); } //--------------------------------------------------------------------------- void WEB::Start() @@ -94,9 +103,8 @@ listenAddr.sin_family = AF_INET; listenAddr.sin_port = htons(LISTEN_PORT); listenAddr.sin_addr.s_addr = listenWebAddr; -int lng = 1; - #ifndef WIN32 +int lng = 1; if (0 != setsockopt(listenSocket, SOL_SOCKET, SO_REUSEADDR, &lng, 4)) { printf("Setsockopt Fail\n"); @@ -181,7 +189,8 @@ while (1) #ifdef WIN32 Sleep(1000); #else - usleep(1000000); + struct timespec ts = {1, 0}; + nanosleep(&ts, NULL); #endif exit(0); }