Add some more Windows Terminal Server API definitions.

diff --git a/include/wtsapi32.h b/include/wtsapi32.h
index 99e8f14..b8e9323 100644
--- a/include/wtsapi32.h
+++ b/include/wtsapi32.h
@@ -59,6 +59,27 @@
     WTSInit
 } WTS_CONNECTSTATE_CLASS;
 
+typedef enum _WTS_CONFIG_CLASS
+{
+    WTSUserConfigInitialProgram,
+    WTSUserConfigWorkingDirectory,
+    WTSUserConfigInheritInitialProgram,
+    WTSUserConfigAllowLogonTerminalServer,
+    WTSUserConfigTimeoutSettingsConnections,
+    WTSUserConfigTimeoutSettingsDisconnections,
+    WTSUserConfigTimeoutSettingsIdle,
+    WTSUserConfigDeviceClientDrives,
+    WTSUserConfigDeviceClientPrinters,
+    WTSUserConfigDeviceClientDefaultPrinter,
+    WTSUserConfigBrokenTimeoutSettings,
+    WTSUserConfigModemCallbackSettings,
+    WTSUserConfigModemCallbackPhoneNumber,
+    WTSUserConfigShadowSettings,
+    WTSUserConfigTerminalServerProfilePath,
+    WTSUserConfigTerminalServerHomeDirectory,
+    WTSUserConfigfTerminalServerRemoteHomeDir
+} WTS_CONFIG_CLASS;
+
 typedef struct _WTS_PROCESS_INFOA
 {
     DWORD SessionId;
@@ -75,6 +96,9 @@
     PSID pUserSid;
 } WTS_PROCESS_INFOW, *PWTS_PROCESS_INFOW;
 
+DECL_WINELIB_TYPE_AW(WTS_PROCESS_INFO)
+DECL_WINELIB_TYPE_AW(PWTS_PROCESS_INFO)
+
 typedef struct _WTS_SESSION_INFOA
 {
     DWORD SessionId;
@@ -89,17 +113,46 @@
     WTS_CONNECTSTATE_CLASS State;
 } WTS_SESSION_INFOW, *PWTS_SESSION_INFOW;
 
+DECL_WINELIB_TYPE_AW(WTS_SESSION_INFO)
+DECL_WINELIB_TYPE_AW(PWTS_SESSION_INFO)
+
+typedef struct _WTS_SERVER_INFOA
+{
+    LPSTR pServerName;
+} WTS_SERVER_INFOA, *PWTS_SERVER_INFOA;
+
+typedef struct _WTS_SERVER_INFOW
+{
+    LPWSTR pServerName;
+} WTS_SERVER_INFOW, *PWTS_SERVER_INFOW;
+
+DECL_WINELIB_TYPE_AW(WTS_SERVER_INFO)
+DECL_WINELIB_TYPE_AW(PWTS_SERVER_INFO)
+
 void WINAPI WTSCloseServer(HANDLE);
 BOOL WINAPI WTSDisconnectSession(HANDLE, DWORD, BOOL);
 BOOL WINAPI WTSEnumerateProcessesA(HANDLE, DWORD, DWORD, PWTS_PROCESS_INFOA *, DWORD *);
 BOOL WINAPI WTSEnumerateProcessesW(HANDLE, DWORD, DWORD, PWTS_PROCESS_INFOW *, DWORD *);
 #define     WTSEnumerateProcesses WINELIB_NAME_AW(WTSEnumerateProcesses)
+BOOL WINAPI WTSEnumerateServersA( LPSTR, DWORD, DWORD, PWTS_SERVER_INFOA*, DWORD*);
+BOOL WINAPI WTSEnumerateServersW( LPWSTR, DWORD, DWORD, PWTS_SERVER_INFOW*, DWORD*);
+#define     WTSEnumerateServers WINELIB_NAME_AW(WTSEnumerateServers)
 BOOL WINAPI WTSEnumerateSessionsA(HANDLE, DWORD, DWORD, PWTS_SESSION_INFOA *, DWORD *);
 BOOL WINAPI WTSEnumerateSessionsW(HANDLE, DWORD, DWORD, PWTS_SESSION_INFOW *, DWORD *);
 #define     WTSEnumerateSessions WINELIB_NAME_AW(WTSEnumerateSessions)
+HANDLE WINAPI WTSOpenServerA(LPSTR);
+HANDLE WINAPI WTSOpenServerW(LPWSTR);
+#define     WTSOpenServer WINELIB_NAME_AW(WTSOpenServer)
 BOOL WINAPI WTSQuerySessionInformationA(HANDLE, DWORD, WTS_INFO_CLASS, LPSTR *, DWORD *);
 BOOL WINAPI WTSQuerySessionInformationW(HANDLE, DWORD, WTS_INFO_CLASS, LPWSTR *, DWORD *);
 #define     WTSQuerySessionInformation WINELIB_NAME_AW(WTSQuerySessionInformation)
+BOOL WINAPI WTSQueryUserConfigA(LPSTR,LPSTR,WTS_CONFIG_CLASS,LPSTR*,DWORD*);
+BOOL WINAPI WTSQueryUserConfigW(LPWSTR,LPWSTR,WTS_CONFIG_CLASS,LPWSTR*,DWORD*);
+#define     WTSQueryUserConfig WINELIB_NAME_AW(WTSQueryUserConfig)
+BOOL WINAPI WTSQueryUserToken(ULONG, PHANDLE);
+BOOL WINAPI WTSRegisterSessionNotification(HWND, DWORD);
+BOOL WINAPI WTSTerminateProcess(HANDLE, DWORD, DWORD);
+BOOL WINAPI WTSUnRegisterSessionNotification(HWND);
 BOOL WINAPI WTSWaitSystemEvent(HANDLE, DWORD, DWORD*);
 
 #ifdef __cplusplus