| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- #ifndef INCLUDED_SHARED_GLOBALS_H
- #define INCLUDED_SHARED_GLOBALS_H
- #ifndef CONFIG
- #define CONFIG "config.h"
- #endif // CONFIG
- #include CONFIG
- #include <sys/types.h>
- #ifndef _WIN32
- #include <sys/socket.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <netdb.h>
- #include <pwd.h>
- #include <grp.h>
- #include <syslog.h>
- #if (!defined(NO_LIMIT) || defined(USE_THREADS)) && !__minix__
- #include <pthread.h>
- #endif // (!defined(NO_LIMIT) || defined(USE_THREADS)) && !__minix__
- #include <fcntl.h>
- #include <sys/stat.h>
- #if !defined(NO_LIMIT) && !__minix__
- #include <semaphore.h>
- #endif // !defined(NO_LIMIT) && !__minix__
- #else
- #ifndef USE_MSRPC
- #include <winsock2.h>
- #include <ws2tcpip.h>
- #endif // USE_MSRPC
- #include <windows.h>
- #endif
- #include <signal.h>
- #include <unistd.h>
- #include <time.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <stdint.h>
- #include <limits.h>
- #include <ctype.h>
- #include <stdarg.h>
- #include <semaphore.h>
- #include "types.h"
- #define MAX_KMSAPPS 3
- typedef struct
- {
- const char* Epid;
- const BYTE* HwId;
- #ifndef NO_LOG
- const char* EpidSource;
- #endif // NO_LOG
- } KmsResponseParam_t, *PKmsResponseParam_t;
- #if !defined(NO_LIMIT) && !__minix__
- #ifndef SEM_VALUE_MAX // Android does not define this
- #ifdef __ANDROID__
- #define SEM_VALUE_MAX 0x3fffffff
- #elif !defined(_WIN32)
- #define SEM_VALUE_MAX 0x7fffffff
- #else
- #define SEM_VALUE_MAX 0x7fff // Be cautious if unknown
- #endif // __ANDROID__
- #endif // !defined(SEM_VALUE_MAX)
- #endif // !defined(NO_LIMIT) && !__minix__
- extern const char *const Version;
- //Fix for stupid eclipse parser
- #ifndef UINT_MAX
- #define UINT_MAX 4294967295
- #endif
- extern int global_argc, multi_argc;
- extern CARGV global_argv, multi_argv;
- extern int_fast8_t nodaemon;
- extern DWORD VLActivationInterval;
- extern DWORD VLRenewalInterval;
- extern int_fast8_t DisconnectImmediately;
- extern KmsResponseParam_t KmsResponseParameters[MAX_KMSAPPS];
- extern const char *const cIPv4;
- extern const char *const cIPv6;
- extern int_fast8_t InetdMode;
- #ifndef USE_MSRPC
- extern int_fast8_t UseMultiplexedRpc;
- extern int_fast8_t UseRpcNDR64;
- extern int_fast8_t UseRpcBTFN;
- #endif // USE_MSRPC
- #ifndef NO_SOCKETS
- extern const char *defaultport;
- #endif // NO_SOCKETS
- #if !defined(NO_SOCKETS) && !defined(NO_SIGHUP) && !defined(_WIN32)
- extern int_fast8_t IsRestarted;
- #endif // !defined(NO_SOCKETS) && !defined(NO_SIGHUP) && !defined(_WIN32)
- #if !defined(NO_TIMEOUT) && !__minix__
- extern DWORD ServerTimeout;
- #endif // !defined(NO_TIMEOUT) && !__minix__
- #if !defined(NO_LIMIT) && !defined (NO_SOCKETS) && !__minix__
- extern uint32_t MaxTasks;
- #endif // !defined(NO_LIMIT) && !defined (NO_SOCKETS) && !__minix__
- #ifndef NO_LOG
- extern char *fn_log;
- extern int_fast8_t logstdout;
- #ifndef NO_VERBOSE_LOG
- extern int_fast8_t logverbose;
- #endif
- #endif
- #ifndef NO_RANDOM_EPID
- extern int_fast8_t RandomizationLevel;
- extern uint16_t Lcid;
- #endif
- #if !defined(NO_SOCKETS) && !defined(USE_MSRPC)
- extern SOCKET *SocketList;
- extern int numsockets;
- #if !defined(NO_LIMIT) && !__minix__
- #ifndef _WIN32
- extern sem_t *Semaphore;
- #else // _WIN32
- extern HANDLE Semaphore;
- #endif // _WIN32
- #endif // !defined(NO_LIMIT) && !__minix__
- #endif // !defined(NO_SOCKETS) && !defined(USE_MSRPC)
- #ifdef _NTSERVICE
- extern int_fast8_t IsNTService;
- extern int_fast8_t ServiceShutdown;
- #endif
- #ifndef NO_LOG
- #ifdef USE_THREADS
- #if !defined(_WIN32) && !defined(__CYGWIN__)
- extern pthread_mutex_t logmutex;
- #else
- extern CRITICAL_SECTION logmutex;
- #endif // _WIN32
- #endif // USE_THREADS
- #endif // NO_LOG
- #endif // INCLUDED_SHARED_GLOBALS_H
|