6 #define WIN32_NO_STATUS
14 #define LOG_EVENTLOG 2
16 #define LOG_ALL (LOG_FILE | LOG_EVENTLOG | LOG_ERROR)
18 /* default port numbers */
20 #define DISCARD_PORT 9
21 #define DAYTIME_PORT 13
23 #define CHARGEN_PORT 19
25 #define NUM_SERVICES 5
26 #define CS_TIMEOUT 1000
29 /* data structure to pass to threads */
30 typedef struct _Services
34 LPTHREAD_START_ROUTINE lpService
;
35 } SERVICES
, *PSERVICES
;
37 extern volatile BOOL bShutdown
;
38 extern volatile BOOL bPause
;
40 /* logging functions */
41 BOOL
InitLogging(VOID
);
42 VOID
UninitLogging(VOID
);
43 VOID
LogEvent(LPCWSTR lpMsg
, DWORD errNum
, DWORD exitCode
, UINT flags
);
45 /* skelserver functions */
46 DWORD WINAPI
StartServer(LPVOID lpParam
);
47 BOOL
ShutdownConnection(SOCKET Sock
, BOOL bRec
);
49 /* server thread handlers */
50 DWORD WINAPI
ChargenHandler(VOID
* sock_
);
51 DWORD WINAPI
DaytimeHandler(VOID
* sock_
);
52 DWORD WINAPI
EchoHandler(VOID
* sock_
);
53 DWORD WINAPI
DiscardHandler(VOID
* sock_
);
54 DWORD WINAPI
QotdHandler(VOID
* sock_
);
56 #endif /* _TCPSVCS_H */