7 #define _swprintf swprintf
11 #define LOG_EVENTLOG 2
13 #define LOG_ALL (LOG_FILE | LOG_EVENTLOG | LOG_ERROR)
15 /* default port numbers */
17 #define DISCARD_PORT 9
18 #define DAYTIME_PORT 13
20 #define CHARGEN_PORT 19
22 #define NUM_SERVICES 5
23 #define CS_TIMEOUT 1000
26 /* data structure to pass to threads */
27 typedef struct _Services
31 LPTHREAD_START_ROUTINE lpService
;
32 } SERVICES
, *PSERVICES
;
34 extern volatile BOOL bShutdown
;
35 extern volatile BOOL bPause
;
37 /* logging functions */
40 VOID
LogEvent(LPCWSTR lpMsg
, DWORD errNum
, DWORD exitCode
, UINT flags
);
42 /* skelserver functions */
43 DWORD WINAPI
StartServer(LPVOID lpParam
);
44 BOOL
ShutdownConnection(SOCKET Sock
, BOOL bRec
);
46 /* server thread handlers */
47 DWORD WINAPI
ChargenHandler(VOID
* sock_
);
48 DWORD WINAPI
DaytimeHandler(VOID
* sock_
);
49 DWORD WINAPI
EchoHandler(VOID
* sock_
);
50 DWORD WINAPI
DiscardHandler(VOID
* sock_
);
51 DWORD WINAPI
QotdHandler(VOID
* sock_
);