X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=blobdiff_plain;f=src%2Foverall.h;h=55b48eac97e0771cbecbfe6343e89500e349f496;hp=753ec2b9530fb75ba0e9445acf6c87058ab8fd75;hb=HEAD;hpb=0def65a9df6d9a295c064cba58af229b326f39fe diff --git a/src/overall.h b/src/overall.h index 753ec2b..55b48ea 100644 --- a/src/overall.h +++ b/src/overall.h @@ -1,4 +1,4 @@ -/* overall.h - NeonServ v5.3 +/* overall.h - NeonServ v5.6 * Copyright (C) 2011-2012 Philipp Kreil (pk910) * * This program is free software: you can redistribute it and/or modify @@ -19,8 +19,8 @@ #define _overall_h #include "../config.h" -#define NEONSERV_VERSION "5.3" -#define VERSION_PATCHLEVEL 543 +#define NEONSERV_VERSION "5.6" +#define VERSION_PATCHLEVEL 736 #include #include @@ -31,7 +31,9 @@ #include #include #else +#ifdef HAVE_FEATURES_H #include +#endif #include #include #include @@ -39,6 +41,7 @@ #include #include #include +#include #endif #include #include @@ -57,10 +60,15 @@ #else #define pthread_self_tid() pthread_self() #endif +#ifdef PTHREAD_MUTEX_RECURSIVE_NP +#define PTHREAD_MUTEX_RECURSIVE_VAL PTHREAD_MUTEX_RECURSIVE_NP +#else +#define PTHREAD_MUTEX_RECURSIVE_VAL PTHREAD_MUTEX_RECURSIVE +#endif #define THREAD_MUTEX_INIT(var) { \ pthread_mutexattr_t mutex_attr; \ pthread_mutexattr_init(&mutex_attr);\ - pthread_mutexattr_settype(&mutex_attr, PTHREAD_MUTEX_RECURSIVE_NP);\ + pthread_mutexattr_settype(&mutex_attr, PTHREAD_MUTEX_RECURSIVE_VAL);\ pthread_mutex_init(&var, &mutex_attr); \ } #define THREAD_MUTEX_INIT_TYPE(var, type) { \ @@ -69,13 +77,21 @@ pthread_mutexattr_settype(&mutex_attr, type);\ pthread_mutex_init(&var, &mutex_attr); \ } +#ifdef ENABLE_MUTEX_DEBUG +#include "mutexDebug.h" +#define SYNCHRONIZE(var) xmutex(1, &var, __FILE__, __LINE__); pthread_mutex_lock(&var) +#define DESYNCHRONIZE(var) xmutex(0, &var, __FILE__, __LINE__); pthread_mutex_unlock(&var) +#else #define SYNCHRONIZE(var) pthread_mutex_lock(&var) -#define SET_SYNCHRONIZE(var) pthread_mutex_trylock(&var) #define DESYNCHRONIZE(var) pthread_mutex_unlock(&var) +#endif #else #define THREAD_MUTEX_INIT(var) #define SYNCHRONIZE(var) #define DESYNCHRONIZE(var) +#ifdef ENABLE_MUTEX_DEBUG +#undef ENABLE_MUTEX_DEBUG +#endif #endif #if __GNUC__ @@ -112,10 +128,6 @@ #include "memoryDebug.h" #endif -#define PID_FILE "neonserv.pid" -#define CONF_FILE "neonserv.conf" -#define LOG_FILE "neonserv.log" - #define SOCKET_SELECT_TIME 1 #define SOCKET_RECONNECT_TIME 20 @@ -130,13 +142,13 @@ #define MAXLOGLEN 1024 #define TRIGGERLEN 50 #define MAXNUMPARAMS 200 /* maximum number of parameters in one line */ -#define MAXLANGUAGES 5 +#define MAXLANGUAGES 15 #define MAXMODES 6 #define INVITE_TIMEOUT 30 #define BOTWAR_DETECTION_TIME 7 #define BOTWAR_DETECTION_EVENTS 6 #define REWHO_TIMEOUT 10 /* wait 10 seconds before WHO an unauthed user again */ -#define TICKS_PER_SECOND 10 +#define CLEAR_CACHE_INTERVAL 10 //valid nick chars #define VALID_NICK_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890{|}~[\\]^-_`" @@ -155,8 +167,6 @@ #define timeval_is_bigger(x,y) ((x.tv_sec > y.tv_sec) || (x.tv_sec == y.tv_sec && x.tv_usec > y.tv_usec)) -#define perror(errmsg) (putlog(LOGLEVEL_ERROR, "ERROR (%s:%d) %s", __FILE__, __LINE__, errmsg)) - #define MODSTATE_RELOAD 0x01 #define MODSTATE_STARTSTOP 0x02 #define MODSTATE_REBIND 0x03