Updated error info from spec.

This commit is contained in:
Armin Novak 2018-11-20 18:01:13 +01:00
parent 8110c391bf
commit e49adfc51a
2 changed files with 285 additions and 267 deletions

View File

@ -45,19 +45,6 @@ extern "C" {
#define ERRINFO_RPC_INITIATED_DISCONNECT_BY_USER 0x0000000B
#define ERRINFO_LOGOFF_BY_USER 0x0000000C
/* Protocol-independent codes generated by the Connection Broker */
#define ERRINFO_CB_DESTINATION_NOT_FOUND 0x0000400
#define ERRINFO_CB_LOADING_DESTINATION 0x0000402
#define ERRINFO_CB_REDIRECTING_TO_DESTINATION 0x0000404
#define ERRINFO_CB_SESSION_ONLINE_VM_WAKE 0x0000405
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT 0x0000406
#define ERRINFO_CB_SESSION_ONLINE_VM_NO_DNS 0x0000407
#define ERRINFO_CB_DESTINATION_POOL_NOT_FREE 0x0000408
#define ERRINFO_CB_CONNECTION_CANCELLED 0x0000409
#define ERRINFO_CB_CONNECTION_ERROR_INVALID_SETTINGS 0x0000410
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT_TIMEOUT 0x0000411
#define ERRINFO_CB_SESSION_ONLINE_VM_SESSMON_FAILED 0x0000412
/* Protocol-independent licensing codes */
#define ERRINFO_LICENSE_INTERNAL 0x00000100
#define ERRINFO_LICENSE_NO_LICENSE_SERVER 0x00000101
@ -71,6 +58,19 @@ extern "C" {
#define ERRINFO_LICENSE_CANT_UPGRADE_LICENSE 0x00000109
#define ERRINFO_LICENSE_NO_REMOTE_CONNECTIONS 0x0000010A
/* Protocol-independent codes generated by the Connection Broker */
#define ERRINFO_CB_DESTINATION_NOT_FOUND 0x0000400
#define ERRINFO_CB_LOADING_DESTINATION 0x0000402
#define ERRINFO_CB_REDIRECTING_TO_DESTINATION 0x0000404
#define ERRINFO_CB_SESSION_ONLINE_VM_WAKE 0x0000405
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT 0x0000406
#define ERRINFO_CB_SESSION_ONLINE_VM_NO_DNS 0x0000407
#define ERRINFO_CB_DESTINATION_POOL_NOT_FREE 0x0000408
#define ERRINFO_CB_CONNECTION_CANCELLED 0x0000409
#define ERRINFO_CB_CONNECTION_ERROR_INVALID_SETTINGS 0x0000410
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT_TIMEOUT 0x0000411
#define ERRINFO_CB_SESSION_ONLINE_VM_SESSMON_FAILED 0x0000412
/* RDP specific codes */
#define ERRINFO_UNKNOWN_DATA_PDU_TYPE 0x000010C9
#define ERRINFO_UNKNOWN_PDU_TYPE 0x000010CA
@ -134,6 +134,7 @@ extern "C" {
#define ERRINFO_BAD_MONITOR_DATA 0x00001129
#define ERRINFO_VC_DECOMPRESSED_REASSEMBLE_FAILED 0x0000112A
#define ERRINFO_VC_DATA_TOO_LONG 0x0000112B
#define ERRINFO_BAD_FRAME_ACK_DATA 0x0000112C
#define ERRINFO_GRAPHICS_MODE_NOT_SUPPORTED 0x0000112D
#define ERRINFO_GRAPHICS_SUBSYSTEM_RESET_FAILED 0x0000112E
#define ERRINFO_GRAPHICS_SUBSYSTEM_FAILED 0x0000112F
@ -141,6 +142,9 @@ extern "C" {
#define ERRINFO_TIMEZONE_KEY_NAME_LENGTH_TOO_LONG 0x00001131
#define ERRINFO_DYNAMIC_DST_DISABLED_FIELD_MISSING 0x00001132
#define ERRINFO_VC_DECODING_ERROR 0x00001133
#define ERRINFO_VIRTUALDESKTOPTOOLARGE 0x00001134
#define ERRINFO_MONITORGEOMETRYVALIDATIONFAILED 0x00001135
#define ERRINFO_INVALIDMONITORCOUNT 0x00001136
#define ERRINFO_UPDATE_SESSION_KEY_FAILED 0x00001191
#define ERRINFO_DECRYPT_FAILED 0x00001192
#define ERRINFO_ENCRYPT_FAILED 0x00001193

View File

@ -36,363 +36,376 @@ int connectErrorCode;
/* Protocol-independent codes */
#define ERRINFO_RPC_INITIATED_DISCONNECT_STRING \
"The disconnection was initiated by an administrative tool on the server in another session."
"The disconnection was initiated by an administrative tool on the server in another session."
#define ERRINFO_RPC_INITIATED_LOGOFF_STRING \
"The disconnection was due to a forced logoff initiated by an administrative tool on the server in another session."
"The disconnection was due to a forced logoff initiated by an administrative tool on the server in another session."
#define ERRINFO_IDLE_TIMEOUT_STRING \
"The idle session limit timer on the server has elapsed."
"The idle session limit timer on the server has elapsed."
#define ERRINFO_LOGON_TIMEOUT_STRING \
"The active session limit timer on the server has elapsed."
"The active session limit timer on the server has elapsed."
#define ERRINFO_DISCONNECTED_BY_OTHER_CONNECTION_STRING \
"Another user connected to the server, forcing the disconnection of the current connection."
"Another user connected to the server, forcing the disconnection of the current connection."
#define ERRINFO_OUT_OF_MEMORY_STRING \
"The server ran out of available memory resources."
"The server ran out of available memory resources."
#define ERRINFO_SERVER_DENIED_CONNECTION_STRING \
"The server denied the connection."
"The server denied the connection."
#define ERRINFO_SERVER_INSUFFICIENT_PRIVILEGES_STRING \
"The user cannot connect to the server due to insufficient access privileges."
"The user cannot connect to the server due to insufficient access privileges."
#define ERRINFO_SERVER_FRESH_CREDENTIALS_REQUIRED_STRING \
"The server does not accept saved user credentials and requires that the user enter their credentials for each connection."
"The server does not accept saved user credentials and requires that the user enter their credentials for each connection."
#define ERRINFO_RPC_INITIATED_DISCONNECT_BY_USER_STRING \
"The disconnection was initiated by an administrative tool on the server running in the user's session."
"The disconnection was initiated by an administrative tool on the server running in the user's session."
#define ERRINFO_LOGOFF_BY_USER_STRING \
"The disconnection was initiated by the user logging off their session on the server."
"The disconnection was initiated by the user logging off their session on the server."
/* Protocol-independent codes generated by the Connection Broker */
#define ERRINFO_CB_DESTINATION_NOT_FOUND_STRING \
"The target endpoint could not be found."
"The target endpoint could not be found."
#define ERRINFO_CB_LOADING_DESTINATION_STRING \
"The target endpoint to which the client is being redirected is disconnecting from the Connection Broker."
"The target endpoint to which the client is being redirected is disconnecting from the Connection Broker."
#define ERRINFO_CB_REDIRECTING_TO_DESTINATION_STRING \
"An error occurred while the connection was being redirected to the target endpoint."
"An error occurred while the connection was being redirected to the target endpoint."
#define ERRINFO_CB_SESSION_ONLINE_VM_WAKE_STRING \
"An error occurred while the target endpoint (a virtual machine) was being awakened."
"An error occurred while the target endpoint (a virtual machine) was being awakened."
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT_STRING \
"An error occurred while the target endpoint (a virtual machine) was being started."
"An error occurred while the target endpoint (a virtual machine) was being started."
#define ERRINFO_CB_SESSION_ONLINE_VM_NO_DNS_STRING \
"The IP address of the target endpoint (a virtual machine) cannot be determined."
"The IP address of the target endpoint (a virtual machine) cannot be determined."
#define ERRINFO_CB_DESTINATION_POOL_NOT_FREE_STRING \
"There are no available endpoints in the pool managed by the Connection Broker."
"There are no available endpoints in the pool managed by the Connection Broker."
#define ERRINFO_CB_CONNECTION_CANCELLED_STRING \
"Processing of the connection has been cancelled."
"Processing of the connection has been cancelled."
#define ERRINFO_CB_CONNECTION_ERROR_INVALID_SETTINGS_STRING \
"The settings contained in the routingToken field of the X.224 Connection Request PDU (section 2.2.1.1) cannot be validated."
"The settings contained in the routingToken field of the X.224 Connection Request PDU (section 2.2.1.1) cannot be validated."
#define ERRINFO_CB_SESSION_ONLINE_VM_BOOT_TIMEOUT_STRING \
"A time-out occurred while the target endpoint (a virtual machine) was being started."
"A time-out occurred while the target endpoint (a virtual machine) was being started."
#define ERRINFO_CB_SESSION_ONLINE_VM_SESSMON_FAILED_STRING \
"A session monitoring error occurred while the target endpoint (a virtual machine) was being started."
"A session monitoring error occurred while the target endpoint (a virtual machine) was being started."
/* Protocol-independent licensing codes */
#define ERRINFO_LICENSE_INTERNAL_STRING \
"An internal error has occurred in the Terminal Services licensing component."
"An internal error has occurred in the Terminal Services licensing component."
#define ERRINFO_LICENSE_NO_LICENSE_SERVER_STRING \
"A Remote Desktop License Server ([MS-RDPELE] section 1.1) could not be found to provide a license."
"A Remote Desktop License Server ([MS-RDPELE] section 1.1) could not be found to provide a license."
#define ERRINFO_LICENSE_NO_LICENSE_STRING \
"There are no Client Access Licenses ([MS-RDPELE] section 1.1) available for the target remote computer."
"There are no Client Access Licenses ([MS-RDPELE] section 1.1) available for the target remote computer."
#define ERRINFO_LICENSE_BAD_CLIENT_MSG_STRING \
"The remote computer received an invalid licensing message from the client."
"The remote computer received an invalid licensing message from the client."
#define ERRINFO_LICENSE_HWID_DOESNT_MATCH_LICENSE_STRING \
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client has been modified."
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client has been modified."
#define ERRINFO_LICENSE_BAD_CLIENT_LICENSE_STRING \
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client is in an invalid format."
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client is in an invalid format."
#define ERRINFO_LICENSE_CANT_FINISH_PROTOCOL_STRING \
"Network problems have caused the licensing protocol ([MS-RDPELE] section 1.3.3) to be terminated."
"Network problems have caused the licensing protocol ([MS-RDPELE] section 1.3.3) to be terminated."
#define ERRINFO_LICENSE_CLIENT_ENDED_PROTOCOL_STRING \
"The client prematurely ended the licensing protocol ([MS-RDPELE] section 1.3.3)."
"The client prematurely ended the licensing protocol ([MS-RDPELE] section 1.3.3)."
#define ERRINFO_LICENSE_BAD_CLIENT_ENCRYPTION_STRING \
"A licensing message ([MS-RDPELE] sections 2.2 and 5.1) was incorrectly encrypted."
"A licensing message ([MS-RDPELE] sections 2.2 and 5.1) was incorrectly encrypted."
#define ERRINFO_LICENSE_CANT_UPGRADE_LICENSE_STRING \
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client could not be upgraded or renewed."
"The Client Access License ([MS-RDPELE] section 1.1) stored by the client could not be upgraded or renewed."
#define ERRINFO_LICENSE_NO_REMOTE_CONNECTIONS_STRING \
"The remote computer is not licensed to accept remote connections."
"The remote computer is not licensed to accept remote connections."
/* RDP specific codes */
#define ERRINFO_UNKNOWN_DATA_PDU_TYPE_STRING \
"Unknown pduType2 field in a received Share Data Header (section 2.2.8.1.1.1.2)."
"Unknown pduType2 field in a received Share Data Header (section 2.2.8.1.1.1.2)."
#define ERRINFO_UNKNOWN_PDU_TYPE_STRING \
"Unknown pduType field in a received Share Control Header (section 2.2.8.1.1.1.1)."
"Unknown pduType field in a received Share Control Header (section 2.2.8.1.1.1.1)."
#define ERRINFO_DATA_PDU_SEQUENCE_STRING \
"An out-of-sequence Slow-Path Data PDU (section 2.2.8.1.1.1.1) has been received."
"An out-of-sequence Slow-Path Data PDU (section 2.2.8.1.1.1.1) has been received."
#define ERRINFO_CONTROL_PDU_SEQUENCE_STRING \
"An out-of-sequence Slow-Path Non-Data PDU (section 2.2.8.1.1.1.1) has been received."
"An out-of-sequence Slow-Path Non-Data PDU (section 2.2.8.1.1.1.1) has been received."
#define ERRINFO_INVALID_CONTROL_PDU_ACTION_STRING \
"A Control PDU (sections 2.2.1.15 and 2.2.1.16) has been received with an invalid action field."
"A Control PDU (sections 2.2.1.15 and 2.2.1.16) has been received with an invalid action field."
#define ERRINFO_INVALID_INPUT_PDU_TYPE_STRING \
"(a) A Slow-Path Input Event (section 2.2.8.1.1.3.1.1) has been received with an invalid messageType field.\n" \
"(b) A Fast-Path Input Event (section 2.2.8.1.2.2) has been received with an invalid eventCode field."
"(a) A Slow-Path Input Event (section 2.2.8.1.1.3.1.1) has been received with an invalid messageType field.\n" \
"(b) A Fast-Path Input Event (section 2.2.8.1.2.2) has been received with an invalid eventCode field."
#define ERRINFO_INVALID_INPUT_PDU_MOUSE_STRING \
"(a) A Slow-Path Mouse Event (section 2.2.8.1.1.3.1.1.3) or Extended Mouse Event " \
"(section 2.2.8.1.1.3.1.1.4) has been received with an invalid pointerFlags field.\n" \
"(b) A Fast-Path Mouse Event (section 2.2.8.1.2.2.3) or Fast-Path Extended Mouse Event " \
"(section 2.2.8.1.2.2.4) has been received with an invalid pointerFlags field."
"(a) A Slow-Path Mouse Event (section 2.2.8.1.1.3.1.1.3) or Extended Mouse Event " \
"(section 2.2.8.1.1.3.1.1.4) has been received with an invalid pointerFlags field.\n" \
"(b) A Fast-Path Mouse Event (section 2.2.8.1.2.2.3) or Fast-Path Extended Mouse Event " \
"(section 2.2.8.1.2.2.4) has been received with an invalid pointerFlags field."
#define ERRINFO_INVALID_REFRESH_RECT_PDU_STRING \
"An invalid Refresh Rect PDU (section 2.2.11.2) has been received."
"An invalid Refresh Rect PDU (section 2.2.11.2) has been received."
#define ERRINFO_CREATE_USER_DATA_FAILED_STRING \
"The server failed to construct the GCC Conference Create Response user data (section 2.2.1.4)."
"The server failed to construct the GCC Conference Create Response user data (section 2.2.1.4)."
#define ERRINFO_CONNECT_FAILED_STRING \
"Processing during the Channel Connection phase of the RDP Connection Sequence " \
"(see section 1.3.1.1 for an overview of the RDP Connection Sequence phases) has failed."
"Processing during the Channel Connection phase of the RDP Connection Sequence " \
"(see section 1.3.1.1 for an overview of the RDP Connection Sequence phases) has failed."
#define ERRINFO_CONFIRM_ACTIVE_HAS_WRONG_SHAREID_STRING \
"A Confirm Active PDU (section 2.2.1.13.2) was received from the client with an invalid shareId field."
"A Confirm Active PDU (section 2.2.1.13.2) was received from the client with an invalid shareId field."
#define ERRINFO_CONFIRM_ACTIVE_HAS_WRONG_ORIGINATOR_STRING \
"A Confirm Active PDU (section 2.2.1.13.2) was received from the client with an invalid originatorId field."
"A Confirm Active PDU (section 2.2.1.13.2) was received from the client with an invalid originatorId field."
#define ERRINFO_PERSISTENT_KEY_PDU_BAD_LENGTH_STRING \
"There is not enough data to process a Persistent Key List PDU (section 2.2.1.17)."
"There is not enough data to process a Persistent Key List PDU (section 2.2.1.17)."
#define ERRINFO_PERSISTENT_KEY_PDU_ILLEGAL_FIRST_STRING \
"A Persistent Key List PDU (section 2.2.1.17) marked as PERSIST_PDU_FIRST (0x01) was received after the reception " \
"of a prior Persistent Key List PDU also marked as PERSIST_PDU_FIRST."
"A Persistent Key List PDU (section 2.2.1.17) marked as PERSIST_PDU_FIRST (0x01) was received after the reception " \
"of a prior Persistent Key List PDU also marked as PERSIST_PDU_FIRST."
#define ERRINFO_PERSISTENT_KEY_PDU_TOO_MANY_TOTAL_KEYS_STRING \
"A Persistent Key List PDU (section 2.2.1.17) was received which specified a total number of bitmap cache entries larger than 262144."
"A Persistent Key List PDU (section 2.2.1.17) was received which specified a total number of bitmap cache entries larger than 262144."
#define ERRINFO_PERSISTENT_KEY_PDU_TOO_MANY_CACHE_KEYS_STRING \
"A Persistent Key List PDU (section 2.2.1.17) was received which specified an invalid total number of keys for a bitmap cache " \
"(the number of entries that can be stored within each bitmap cache is specified in the Revision 1 or 2 Bitmap Cache Capability Set " \
"(section 2.2.7.1.4) that is sent from client to server)."
"A Persistent Key List PDU (section 2.2.1.17) was received which specified an invalid total number of keys for a bitmap cache " \
"(the number of entries that can be stored within each bitmap cache is specified in the Revision 1 or 2 Bitmap Cache Capability Set " \
"(section 2.2.7.1.4) that is sent from client to server)."
#define ERRINFO_INPUT_PDU_BAD_LENGTH_STRING \
"There is not enough data to process Input Event PDU Data (section 2.2.8.1.1.3.1) or a Fast-Path Input Event PDU (section 2.2.8.1.2)." \
"There is not enough data to process Input Event PDU Data (section 2.2.8.1.1.3.1) or a Fast-Path Input Event PDU (section 2.2.8.1.2)." \
#define ERRINFO_BITMAP_CACHE_ERROR_PDU_BAD_LENGTH_STRING \
"There is not enough data to process the shareDataHeader, NumInfoBlocks, " \
"Pad1, and Pad2 fields of the Bitmap Cache Error PDU Data ([MS-RDPEGDI] section 2.2.2.3.1.1)."
"There is not enough data to process the shareDataHeader, NumInfoBlocks, " \
"Pad1, and Pad2 fields of the Bitmap Cache Error PDU Data ([MS-RDPEGDI] section 2.2.2.3.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT_STRING \
"(a) The dataSignature field of the Fast-Path Input Event PDU (section 2.2.8.1.2) does not contain enough data.\n" \
"(b) The fipsInformation and dataSignature fields of the Fast-Path Input Event PDU (section 2.2.8.1.2) do not contain enough data."
"(a) The dataSignature field of the Fast-Path Input Event PDU (section 2.2.8.1.2) does not contain enough data.\n" \
"(b) The fipsInformation and dataSignature fields of the Fast-Path Input Event PDU (section 2.2.8.1.2) do not contain enough data."
#define ERRINFO_VCHANNEL_DATA_TOO_SHORT_STRING \
"(a) There is not enough data in the Client Network Data (section 2.2.1.3.4) to read the virtual channel configuration data.\n" \
"(b) There is not enough data to read a complete Channel PDU Header (section 2.2.6.1.1)."
"(a) There is not enough data in the Client Network Data (section 2.2.1.3.4) to read the virtual channel configuration data.\n" \
"(b) There is not enough data to read a complete Channel PDU Header (section 2.2.6.1.1)."
#define ERRINFO_SHARE_DATA_TOO_SHORT_STRING \
"(a) There is not enough data to process Control PDU Data (section 2.2.1.15.1).\n" \
"(b) There is not enough data to read a complete Share Control Header (section 2.2.8.1.1.1.1).\n" \
"(c) There is not enough data to read a complete Share Data Header (section 2.2.8.1.1.1.2) of a Slow-Path Data PDU (section 2.2.8.1.1.1.1).\n" \
"(d) There is not enough data to process Font List PDU Data (section 2.2.1.18.1)."
"(a) There is not enough data to process Control PDU Data (section 2.2.1.15.1).\n" \
"(b) There is not enough data to read a complete Share Control Header (section 2.2.8.1.1.1.1).\n" \
"(c) There is not enough data to read a complete Share Data Header (section 2.2.8.1.1.1.2) of a Slow-Path Data PDU (section 2.2.8.1.1.1.1).\n" \
"(d) There is not enough data to process Font List PDU Data (section 2.2.1.18.1)."
#define ERRINFO_BAD_SUPPRESS_OUTPUT_PDU_STRING \
"(a) There is not enough data to process Suppress Output PDU Data (section 2.2.11.3.1).\n" \
"(b) The allowDisplayUpdates field of the Suppress Output PDU Data (section 2.2.11.3.1) is invalid."
"(a) There is not enough data to process Suppress Output PDU Data (section 2.2.11.3.1).\n" \
"(b) The allowDisplayUpdates field of the Suppress Output PDU Data (section 2.2.11.3.1) is invalid."
#define ERRINFO_CONFIRM_ACTIVE_PDU_TOO_SHORT_STRING \
"(a) There is not enough data to read the shareControlHeader, shareId, originatorId, lengthSourceDescriptor, " \
"and lengthCombinedCapabilities fields of the Confirm Active PDU Data (section 2.2.1.13.2.1).\n" \
"(b) There is not enough data to read the sourceDescriptor, numberCapabilities, pad2Octets, and capabilitySets " \
"fields of the Confirm Active PDU Data (section 2.2.1.13.2.1)."
"(a) There is not enough data to read the shareControlHeader, shareId, originatorId, lengthSourceDescriptor, " \
"and lengthCombinedCapabilities fields of the Confirm Active PDU Data (section 2.2.1.13.2.1).\n" \
"(b) There is not enough data to read the sourceDescriptor, numberCapabilities, pad2Octets, and capabilitySets " \
"fields of the Confirm Active PDU Data (section 2.2.1.13.2.1)."
#define ERRINFO_CAPABILITY_SET_TOO_SMALL_STRING \
"There is not enough data to read the capabilitySetType and the lengthCapability fields in a received Capability Set (section 2.2.1.13.1.1.1)."
"There is not enough data to read the capabilitySetType and the lengthCapability fields in a received Capability Set (section 2.2.1.13.1.1.1)."
#define ERRINFO_CAPABILITY_SET_TOO_LARGE_STRING \
"A Capability Set (section 2.2.1.13.1.1.1) has been received with a lengthCapability " \
"field that contains a value greater than the total length of the data received."
"A Capability Set (section 2.2.1.13.1.1.1) has been received with a lengthCapability " \
"field that contains a value greater than the total length of the data received."
#define ERRINFO_NO_CURSOR_CACHE_STRING \
"(a) Both the colorPointerCacheSize and pointerCacheSize fields in the Pointer Capability Set (section 2.2.7.1.5) are set to zero.\n" \
"(b) The pointerCacheSize field in the Pointer Capability Set (section 2.2.7.1.5) is not present, and the colorPointerCacheSize field is set to zero."
"(a) Both the colorPointerCacheSize and pointerCacheSize fields in the Pointer Capability Set (section 2.2.7.1.5) are set to zero.\n" \
"(b) The pointerCacheSize field in the Pointer Capability Set (section 2.2.7.1.5) is not present, and the colorPointerCacheSize field is set to zero."
#define ERRINFO_BAD_CAPABILITIES_STRING \
"The capabilities received from the client in the Confirm Active PDU (section 2.2.1.13.2) were not accepted by the server."
"The capabilities received from the client in the Confirm Active PDU (section 2.2.1.13.2) were not accepted by the server."
#define ERRINFO_VIRTUAL_CHANNEL_DECOMPRESSION_STRING \
"An error occurred while using the bulk compressor (section 3.1.8 and [MS-RDPEGDI] section 3.1.8) to decompress a Virtual Channel PDU (section 2.2.6.1)"
"An error occurred while using the bulk compressor (section 3.1.8 and [MS-RDPEGDI] section 3.1.8) to decompress a Virtual Channel PDU (section 2.2.6.1)"
#define ERRINFO_INVALID_VC_COMPRESSION_TYPE_STRING \
"An invalid bulk compression package was specified in the flags field of the Channel PDU Header (section 2.2.6.1.1)."
"An invalid bulk compression package was specified in the flags field of the Channel PDU Header (section 2.2.6.1.1)."
#define ERRINFO_INVALID_CHANNEL_ID_STRING \
"An invalid MCS channel ID was specified in the mcsPdu field of the Virtual Channel PDU (section 2.2.6.1)."
"An invalid MCS channel ID was specified in the mcsPdu field of the Virtual Channel PDU (section 2.2.6.1)."
#define ERRINFO_VCHANNELS_TOO_MANY_STRING \
"The client requested more than the maximum allowed 31 static virtual channels in the Client Network Data (section 2.2.1.3.4)."
"The client requested more than the maximum allowed 31 static virtual channels in the Client Network Data (section 2.2.1.3.4)."
#define ERRINFO_REMOTEAPP_NOT_ENABLED_STRING \
"The INFO_RAIL flag (0x00008000) MUST be set in the flags field of the Info Packet (section 2.2.1.11.1.1) " \
"as the session on the remote server can only host remote applications."
"The INFO_RAIL flag (0x00008000) MUST be set in the flags field of the Info Packet (section 2.2.1.11.1.1) " \
"as the session on the remote server can only host remote applications."
#define ERRINFO_CACHE_CAP_NOT_SET_STRING \
"The client sent a Persistent Key List PDU (section 2.2.1.17) without including the prerequisite Revision 2 Bitmap Cache " \
"Capability Set (section 2.2.7.1.4.2) in the Confirm Active PDU (section 2.2.1.13.2)."
"The client sent a Persistent Key List PDU (section 2.2.1.17) without including the prerequisite Revision 2 Bitmap Cache " \
"Capability Set (section 2.2.7.1.4.2) in the Confirm Active PDU (section 2.2.1.13.2)."
#define ERRINFO_BITMAP_CACHE_ERROR_PDU_BAD_LENGTH2_STRING \
"The NumInfoBlocks field in the Bitmap Cache Error PDU Data is inconsistent with the amount of data in the " \
"Info field ([MS-RDPEGDI] section 2.2.2.3.1.1)."
"The NumInfoBlocks field in the Bitmap Cache Error PDU Data is inconsistent with the amount of data in the " \
"Info field ([MS-RDPEGDI] section 2.2.2.3.1.1)."
#define ERRINFO_OFFSCREEN_CACHE_ERROR_PDU_BAD_LENGTH_STRING \
"There is not enough data to process an Offscreen Bitmap Cache Error PDU ([MS-RDPEGDI] section 2.2.2.3.2)."
"There is not enough data to process an Offscreen Bitmap Cache Error PDU ([MS-RDPEGDI] section 2.2.2.3.2)."
#define ERRINFO_DRAWNINEGRID_CACHE_ERROR_PDU_BAD_LENGTH_STRING \
"There is not enough data to process a DrawNineGrid Cache Error PDU ([MS-RDPEGDI] section 2.2.2.3.3)."
"There is not enough data to process a DrawNineGrid Cache Error PDU ([MS-RDPEGDI] section 2.2.2.3.3)."
#define ERRINFO_GDIPLUS_PDU_BAD_LENGTH_STRING \
"There is not enough data to process a GDI+ Error PDU ([MS-RDPEGDI] section 2.2.2.3.4)."
"There is not enough data to process a GDI+ Error PDU ([MS-RDPEGDI] section 2.2.2.3.4)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT2_STRING \
"There is not enough data to read a Basic Security Header (section 2.2.8.1.1.2.1)."
"There is not enough data to read a Basic Security Header (section 2.2.8.1.1.2.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT3_STRING \
"There is not enough data to read a Non-FIPS Security Header (section 2.2.8.1.1.2.2) or FIPS Security Header (section 2.2.8.1.1.2.3)."
"There is not enough data to read a Non-FIPS Security Header (section 2.2.8.1.1.2.2) or FIPS Security Header (section 2.2.8.1.1.2.3)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT4_STRING \
"There is not enough data to read the basicSecurityHeader and length fields of the Security Exchange PDU Data (section 2.2.1.10.1)."
"There is not enough data to read the basicSecurityHeader and length fields of the Security Exchange PDU Data (section 2.2.1.10.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT5_STRING \
"There is not enough data to read the CodePage, flags, cbDomain, cbUserName, cbPassword, cbAlternateShell, " \
"cbWorkingDir, Domain, UserName, Password, AlternateShell, and WorkingDir fields in the Info Packet (section 2.2.1.11.1.1)."
"There is not enough data to read the CodePage, flags, cbDomain, cbUserName, cbPassword, cbAlternateShell, " \
"cbWorkingDir, Domain, UserName, Password, AlternateShell, and WorkingDir fields in the Info Packet (section 2.2.1.11.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT6_STRING \
"There is not enough data to read the CodePage, flags, cbDomain, cbUserName, cbPassword, cbAlternateShell, " \
"and cbWorkingDir fields in the Info Packet (section 2.2.1.11.1.1)."
"There is not enough data to read the CodePage, flags, cbDomain, cbUserName, cbPassword, cbAlternateShell, " \
"and cbWorkingDir fields in the Info Packet (section 2.2.1.11.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT7_STRING \
"There is not enough data to read the clientAddressFamily and cbClientAddress fields in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientAddressFamily and cbClientAddress fields in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT8_STRING \
"There is not enough data to read the clientAddress field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientAddress field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT9_STRING \
"There is not enough data to read the cbClientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the cbClientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT10_STRING \
"There is not enough data to read the clientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT11_STRING \
"There is not enough data to read the clientTimeZone field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientTimeZone field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT12_STRING \
"There is not enough data to read the clientSessionId field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientSessionId field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT13_STRING \
"There is not enough data to read the performanceFlags field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the performanceFlags field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT14_STRING \
"There is not enough data to read the cbAutoReconnectLen field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the cbAutoReconnectLen field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT15_STRING \
"There is not enough data to read the autoReconnectCookie field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the autoReconnectCookie field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT16_STRING \
"The cbAutoReconnectLen field in the Extended Info Packet (section 2.2.1.11.1.1.1) contains a value " \
"which is larger than the maximum allowed length of 128 bytes."
"The cbAutoReconnectLen field in the Extended Info Packet (section 2.2.1.11.1.1.1) contains a value " \
"which is larger than the maximum allowed length of 128 bytes."
#define ERRINFO_SECURITY_DATA_TOO_SHORT17_STRING \
"There is not enough data to read the clientAddressFamily and cbClientAddress fields in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientAddressFamily and cbClientAddress fields in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT18_STRING \
"There is not enough data to read the clientAddress field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientAddress field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT19_STRING \
"There is not enough data to read the cbClientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the cbClientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT20_STRING \
"There is not enough data to read the clientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientDir field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT21_STRING \
"There is not enough data to read the clientTimeZone field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientTimeZone field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT22_STRING \
"There is not enough data to read the clientSessionId field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the clientSessionId field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_SECURITY_DATA_TOO_SHORT23_STRING \
"There is not enough data to read the Client Info PDU Data (section 2.2.1.11.1)."
"There is not enough data to read the Client Info PDU Data (section 2.2.1.11.1)."
#define ERRINFO_BAD_MONITOR_DATA_STRING \
"The monitorCount field in the Client Monitor Data (section 2.2.1.3.6) is invalid."
"The monitorCount field in the Client Monitor Data (section 2.2.1.3.6) is invalid."
#define ERRINFO_VC_DECOMPRESSED_REASSEMBLE_FAILED_STRING \
"The server-side decompression buffer is invalid, or the size of the decompressed VC data exceeds " \
"the chunking size specified in the Virtual Channel Capability Set (section 2.2.7.1.10)."
"The server-side decompression buffer is invalid, or the size of the decompressed VC data exceeds " \
"the chunking size specified in the Virtual Channel Capability Set (section 2.2.7.1.10)."
#define ERRINFO_VC_DATA_TOO_LONG_STRING \
"The size of a received Virtual Channel PDU (section 2.2.6.1) exceeds the chunking size specified " \
"in the Virtual Channel Capability Set (section 2.2.7.1.10)."
"The size of a received Virtual Channel PDU (section 2.2.6.1) exceeds the chunking size specified " \
"in the Virtual Channel Capability Set (section 2.2.7.1.10)."
#define ERRINFO_BAD_FRAME_ACK_DATA_STRING \
"There is not enough data to read a TS_FRAME_ACKNOWLEDGE_PDU ([MS-RDPRFX] section 2.2.3.1)."
#define ERRINFO_GRAPHICS_MODE_NOT_SUPPORTED_STRING \
"The graphics mode requested by the client is not supported by the server."
"The graphics mode requested by the client is not supported by the server."
#define ERRINFO_GRAPHICS_SUBSYSTEM_RESET_FAILED_STRING \
"The server-side graphics subsystem failed to reset."
"The server-side graphics subsystem failed to reset."
#define ERRINFO_GRAPHICS_SUBSYSTEM_FAILED_STRING \
"The server-side graphics subsystem is in an error state and unable to continue graphics encoding."
"The server-side graphics subsystem is in an error state and unable to continue graphics encoding."
#define ERRINFO_TIMEZONE_KEY_NAME_LENGTH_TOO_SHORT_STRING \
"There is not enough data to read the cbDynamicDSTTimeZoneKeyName field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"There is not enough data to read the cbDynamicDSTTimeZoneKeyName field in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_TIMEZONE_KEY_NAME_LENGTH_TOO_LONG_STRING \
"The length reported in the cbDynamicDSTTimeZoneKeyName field of the Extended Info Packet (section 2.2.1.11.1.1.1) is too long."
"The length reported in the cbDynamicDSTTimeZoneKeyName field of the Extended Info Packet (section 2.2.1.11.1.1.1) is too long."
#define ERRINFO_DYNAMIC_DST_DISABLED_FIELD_MISSING_STRING \
"The dynamicDaylightTimeDisabled field is not present in the Extended Info Packet (section 2.2.1.11.1.1.1)."
"The dynamicDaylightTimeDisabled field is not present in the Extended Info Packet (section 2.2.1.11.1.1.1)."
#define ERRINFO_VC_DECODING_ERROR_STRING \
"An error occurred when processing dynamic virtual channel data ([MS-RDPEDYC] section 3.3.5)."
"An error occurred when processing dynamic virtual channel data ([MS-RDPEDYC] section 3.3.5)."
#define ERRINFO_VIRTUALDESKTOPTOOLARGE_STRING \
"The width or height of the virtual desktop defined by the monitor layout in the Client Monitor Data " \
"(section 2.2.1.3.6) is larger than the maximum allowed value of 32,766."
#define ERRINFO_MONITORGEOMETRYVALIDATIONFAILED_STRING \
"The monitor geometry defined by the Client Monitor Data (section 2.2.1.3.6) is invalid."
#define ERRINFO_INVALIDMONITORCOUNT_STRING \
"The monitorCount field in the Client Monitor Data(section 2.2.1.3.6) is too large."
#define ERRINFO_UPDATE_SESSION_KEY_FAILED_STRING \
"An attempt to update the session keys while using Standard RDP Security mechanisms (section 5.3.7) failed."
"An attempt to update the session keys while using Standard RDP Security mechanisms (section 5.3.7) failed."
#define ERRINFO_DECRYPT_FAILED_STRING \
"(a) Decryption using Standard RDP Security mechanisms (section 5.3.6) failed.\n" \
"(b) Session key creation using Standard RDP Security mechanisms (section 5.3.5) failed."
"(a) Decryption using Standard RDP Security mechanisms (section 5.3.6) failed.\n" \
"(b) Session key creation using Standard RDP Security mechanisms (section 5.3.5) failed."
#define ERRINFO_ENCRYPT_FAILED_STRING \
"Encryption using Standard RDP Security mechanisms (section 5.3.6) failed."
"Encryption using Standard RDP Security mechanisms (section 5.3.6) failed."
#define ERRINFO_ENCRYPTION_PACKAGE_MISMATCH_STRING \
"Failed to find a usable Encryption Method (section 5.3.2) in the encryptionMethods field of the Client Security Data (section 2.2.1.4.3)."
"Failed to find a usable Encryption Method (section 5.3.2) in the encryptionMethods field of the Client Security Data (section 2.2.1.4.3)."
#define ERRINFO_DECRYPT_FAILED2_STRING \
"Unencrypted data was encountered in a protocol stream which is meant to be encrypted with Standard RDP Security mechanisms (section 5.3.6)."
"Unencrypted data was encountered in a protocol stream which is meant to be encrypted with Standard RDP Security mechanisms (section 5.3.6)."
#define ERRINFO_PEER_DISCONNECTED_STRING \
"The peer connection was lost."
"The peer connection was lost."
/* Special codes */
#define ERRINFO_SUCCESS_STRING "Success."
@ -400,131 +413,134 @@ int connectErrorCode;
static const ERRINFO ERRINFO_CODES[] =
{
ERRINFO_DEFINE(SUCCESS),
ERRINFO_DEFINE(SUCCESS),
/* Protocol-independent codes */
ERRINFO_DEFINE(RPC_INITIATED_DISCONNECT),
ERRINFO_DEFINE(RPC_INITIATED_LOGOFF),
ERRINFO_DEFINE(IDLE_TIMEOUT),
ERRINFO_DEFINE(LOGON_TIMEOUT),
ERRINFO_DEFINE(DISCONNECTED_BY_OTHER_CONNECTION),
ERRINFO_DEFINE(OUT_OF_MEMORY),
ERRINFO_DEFINE(SERVER_DENIED_CONNECTION),
ERRINFO_DEFINE(SERVER_INSUFFICIENT_PRIVILEGES),
ERRINFO_DEFINE(SERVER_FRESH_CREDENTIALS_REQUIRED),
ERRINFO_DEFINE(RPC_INITIATED_DISCONNECT_BY_USER),
ERRINFO_DEFINE(LOGOFF_BY_USER),
/* Protocol-independent codes */
ERRINFO_DEFINE(RPC_INITIATED_DISCONNECT),
ERRINFO_DEFINE(RPC_INITIATED_LOGOFF),
ERRINFO_DEFINE(IDLE_TIMEOUT),
ERRINFO_DEFINE(LOGON_TIMEOUT),
ERRINFO_DEFINE(DISCONNECTED_BY_OTHER_CONNECTION),
ERRINFO_DEFINE(OUT_OF_MEMORY),
ERRINFO_DEFINE(SERVER_DENIED_CONNECTION),
ERRINFO_DEFINE(SERVER_INSUFFICIENT_PRIVILEGES),
ERRINFO_DEFINE(SERVER_FRESH_CREDENTIALS_REQUIRED),
ERRINFO_DEFINE(RPC_INITIATED_DISCONNECT_BY_USER),
ERRINFO_DEFINE(LOGOFF_BY_USER),
/* Protocol-independent codes generated by the Connection Broker */
ERRINFO_DEFINE(CB_DESTINATION_NOT_FOUND),
ERRINFO_DEFINE(CB_LOADING_DESTINATION),
ERRINFO_DEFINE(CB_REDIRECTING_TO_DESTINATION),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_WAKE),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_BOOT),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_NO_DNS),
ERRINFO_DEFINE(CB_DESTINATION_POOL_NOT_FREE),
ERRINFO_DEFINE(CB_CONNECTION_CANCELLED),
ERRINFO_DEFINE(CB_CONNECTION_ERROR_INVALID_SETTINGS),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_BOOT_TIMEOUT),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_SESSMON_FAILED),
/* Protocol-independent licensing codes */
ERRINFO_DEFINE(LICENSE_INTERNAL),
ERRINFO_DEFINE(LICENSE_NO_LICENSE_SERVER),
ERRINFO_DEFINE(LICENSE_NO_LICENSE),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_MSG),
ERRINFO_DEFINE(LICENSE_HWID_DOESNT_MATCH_LICENSE),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_LICENSE),
ERRINFO_DEFINE(LICENSE_CANT_FINISH_PROTOCOL),
ERRINFO_DEFINE(LICENSE_CLIENT_ENDED_PROTOCOL),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_ENCRYPTION),
ERRINFO_DEFINE(LICENSE_CANT_UPGRADE_LICENSE),
ERRINFO_DEFINE(LICENSE_NO_REMOTE_CONNECTIONS),
/* Protocol-independent licensing codes */
ERRINFO_DEFINE(LICENSE_INTERNAL),
ERRINFO_DEFINE(LICENSE_NO_LICENSE_SERVER),
ERRINFO_DEFINE(LICENSE_NO_LICENSE),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_MSG),
ERRINFO_DEFINE(LICENSE_HWID_DOESNT_MATCH_LICENSE),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_LICENSE),
ERRINFO_DEFINE(LICENSE_CANT_FINISH_PROTOCOL),
ERRINFO_DEFINE(LICENSE_CLIENT_ENDED_PROTOCOL),
ERRINFO_DEFINE(LICENSE_BAD_CLIENT_ENCRYPTION),
ERRINFO_DEFINE(LICENSE_CANT_UPGRADE_LICENSE),
ERRINFO_DEFINE(LICENSE_NO_REMOTE_CONNECTIONS),
/* Protocol-independent codes generated by the Connection Broker */
ERRINFO_DEFINE(CB_DESTINATION_NOT_FOUND),
ERRINFO_DEFINE(CB_LOADING_DESTINATION),
ERRINFO_DEFINE(CB_REDIRECTING_TO_DESTINATION),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_WAKE),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_BOOT),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_NO_DNS),
ERRINFO_DEFINE(CB_DESTINATION_POOL_NOT_FREE),
ERRINFO_DEFINE(CB_CONNECTION_CANCELLED),
ERRINFO_DEFINE(CB_CONNECTION_ERROR_INVALID_SETTINGS),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_BOOT_TIMEOUT),
ERRINFO_DEFINE(CB_SESSION_ONLINE_VM_SESSMON_FAILED),
/* RDP specific codes */
ERRINFO_DEFINE(UNKNOWN_DATA_PDU_TYPE),
ERRINFO_DEFINE(UNKNOWN_PDU_TYPE),
ERRINFO_DEFINE(DATA_PDU_SEQUENCE),
ERRINFO_DEFINE(CONTROL_PDU_SEQUENCE),
ERRINFO_DEFINE(INVALID_CONTROL_PDU_ACTION),
ERRINFO_DEFINE(INVALID_INPUT_PDU_TYPE),
ERRINFO_DEFINE(INVALID_INPUT_PDU_MOUSE),
ERRINFO_DEFINE(INVALID_REFRESH_RECT_PDU),
ERRINFO_DEFINE(CREATE_USER_DATA_FAILED),
ERRINFO_DEFINE(CONNECT_FAILED),
ERRINFO_DEFINE(CONFIRM_ACTIVE_HAS_WRONG_SHAREID),
ERRINFO_DEFINE(CONFIRM_ACTIVE_HAS_WRONG_ORIGINATOR),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_BAD_LENGTH),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_ILLEGAL_FIRST),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_TOO_MANY_TOTAL_KEYS),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_TOO_MANY_CACHE_KEYS),
ERRINFO_DEFINE(INPUT_PDU_BAD_LENGTH),
ERRINFO_DEFINE(BITMAP_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT),
ERRINFO_DEFINE(VCHANNEL_DATA_TOO_SHORT ),
ERRINFO_DEFINE(SHARE_DATA_TOO_SHORT),
ERRINFO_DEFINE(BAD_SUPPRESS_OUTPUT_PDU),
ERRINFO_DEFINE(CONFIRM_ACTIVE_PDU_TOO_SHORT),
ERRINFO_DEFINE(CAPABILITY_SET_TOO_SMALL),
ERRINFO_DEFINE(CAPABILITY_SET_TOO_LARGE),
ERRINFO_DEFINE(NO_CURSOR_CACHE),
ERRINFO_DEFINE(BAD_CAPABILITIES),
ERRINFO_DEFINE(VIRTUAL_CHANNEL_DECOMPRESSION),
ERRINFO_DEFINE(INVALID_VC_COMPRESSION_TYPE),
ERRINFO_DEFINE(INVALID_CHANNEL_ID),
ERRINFO_DEFINE(VCHANNELS_TOO_MANY),
ERRINFO_DEFINE(REMOTEAPP_NOT_ENABLED),
ERRINFO_DEFINE(CACHE_CAP_NOT_SET),
ERRINFO_DEFINE(BITMAP_CACHE_ERROR_PDU_BAD_LENGTH2),
ERRINFO_DEFINE(OFFSCREEN_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(DRAWNINEGRID_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(GDIPLUS_PDU_BAD_LENGTH),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT2),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT3),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT4),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT5),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT6),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT7),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT8),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT9),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT10),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT11),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT12),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT13),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT14),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT15),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT16),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT17),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT18),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT19),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT20),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT21),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT22),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT23),
ERRINFO_DEFINE(BAD_MONITOR_DATA),
ERRINFO_DEFINE(VC_DECOMPRESSED_REASSEMBLE_FAILED),
ERRINFO_DEFINE(VC_DATA_TOO_LONG),
ERRINFO_DEFINE(GRAPHICS_MODE_NOT_SUPPORTED),
ERRINFO_DEFINE(GRAPHICS_SUBSYSTEM_RESET_FAILED),
ERRINFO_DEFINE(GRAPHICS_SUBSYSTEM_FAILED),
ERRINFO_DEFINE(TIMEZONE_KEY_NAME_LENGTH_TOO_SHORT),
ERRINFO_DEFINE(TIMEZONE_KEY_NAME_LENGTH_TOO_LONG),
ERRINFO_DEFINE(DYNAMIC_DST_DISABLED_FIELD_MISSING),
ERRINFO_DEFINE(VC_DECODING_ERROR),
ERRINFO_DEFINE(UPDATE_SESSION_KEY_FAILED),
ERRINFO_DEFINE(DECRYPT_FAILED),
ERRINFO_DEFINE(ENCRYPT_FAILED),
ERRINFO_DEFINE(ENCRYPTION_PACKAGE_MISMATCH),
ERRINFO_DEFINE(DECRYPT_FAILED2),
ERRINFO_DEFINE(PEER_DISCONNECTED),
/* RDP specific codes */
ERRINFO_DEFINE(UNKNOWN_DATA_PDU_TYPE),
ERRINFO_DEFINE(UNKNOWN_PDU_TYPE),
ERRINFO_DEFINE(DATA_PDU_SEQUENCE),
ERRINFO_DEFINE(CONTROL_PDU_SEQUENCE),
ERRINFO_DEFINE(INVALID_CONTROL_PDU_ACTION),
ERRINFO_DEFINE(INVALID_INPUT_PDU_TYPE),
ERRINFO_DEFINE(INVALID_INPUT_PDU_MOUSE),
ERRINFO_DEFINE(INVALID_REFRESH_RECT_PDU),
ERRINFO_DEFINE(CREATE_USER_DATA_FAILED),
ERRINFO_DEFINE(CONNECT_FAILED),
ERRINFO_DEFINE(CONFIRM_ACTIVE_HAS_WRONG_SHAREID),
ERRINFO_DEFINE(CONFIRM_ACTIVE_HAS_WRONG_ORIGINATOR),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_BAD_LENGTH),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_ILLEGAL_FIRST),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_TOO_MANY_TOTAL_KEYS),
ERRINFO_DEFINE(PERSISTENT_KEY_PDU_TOO_MANY_CACHE_KEYS),
ERRINFO_DEFINE(INPUT_PDU_BAD_LENGTH),
ERRINFO_DEFINE(BITMAP_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT),
ERRINFO_DEFINE(VCHANNEL_DATA_TOO_SHORT),
ERRINFO_DEFINE(SHARE_DATA_TOO_SHORT),
ERRINFO_DEFINE(BAD_SUPPRESS_OUTPUT_PDU),
ERRINFO_DEFINE(CONFIRM_ACTIVE_PDU_TOO_SHORT),
ERRINFO_DEFINE(CAPABILITY_SET_TOO_SMALL),
ERRINFO_DEFINE(CAPABILITY_SET_TOO_LARGE),
ERRINFO_DEFINE(NO_CURSOR_CACHE),
ERRINFO_DEFINE(BAD_CAPABILITIES),
ERRINFO_DEFINE(VIRTUAL_CHANNEL_DECOMPRESSION),
ERRINFO_DEFINE(INVALID_VC_COMPRESSION_TYPE),
ERRINFO_DEFINE(INVALID_CHANNEL_ID),
ERRINFO_DEFINE(VCHANNELS_TOO_MANY),
ERRINFO_DEFINE(REMOTEAPP_NOT_ENABLED),
ERRINFO_DEFINE(CACHE_CAP_NOT_SET),
ERRINFO_DEFINE(BITMAP_CACHE_ERROR_PDU_BAD_LENGTH2),
ERRINFO_DEFINE(OFFSCREEN_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(DRAWNINEGRID_CACHE_ERROR_PDU_BAD_LENGTH),
ERRINFO_DEFINE(GDIPLUS_PDU_BAD_LENGTH),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT2),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT3),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT4),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT5),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT6),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT7),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT8),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT9),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT10),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT11),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT12),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT13),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT14),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT15),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT16),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT17),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT18),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT19),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT20),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT21),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT22),
ERRINFO_DEFINE(SECURITY_DATA_TOO_SHORT23),
ERRINFO_DEFINE(BAD_MONITOR_DATA),
ERRINFO_DEFINE(VC_DECOMPRESSED_REASSEMBLE_FAILED),
ERRINFO_DEFINE(VC_DATA_TOO_LONG),
ERRINFO_DEFINE(BAD_FRAME_ACK_DATA),
ERRINFO_DEFINE(GRAPHICS_MODE_NOT_SUPPORTED),
ERRINFO_DEFINE(GRAPHICS_SUBSYSTEM_RESET_FAILED),
ERRINFO_DEFINE(GRAPHICS_SUBSYSTEM_FAILED),
ERRINFO_DEFINE(TIMEZONE_KEY_NAME_LENGTH_TOO_SHORT),
ERRINFO_DEFINE(TIMEZONE_KEY_NAME_LENGTH_TOO_LONG),
ERRINFO_DEFINE(DYNAMIC_DST_DISABLED_FIELD_MISSING),
ERRINFO_DEFINE(VC_DECODING_ERROR),
ERRINFO_DEFINE(VIRTUALDESKTOPTOOLARGE),
ERRINFO_DEFINE(MONITORGEOMETRYVALIDATIONFAILED),
ERRINFO_DEFINE(INVALIDMONITORCOUNT),
ERRINFO_DEFINE(UPDATE_SESSION_KEY_FAILED),
ERRINFO_DEFINE(DECRYPT_FAILED),
ERRINFO_DEFINE(ENCRYPT_FAILED),
ERRINFO_DEFINE(ENCRYPTION_PACKAGE_MISMATCH),
ERRINFO_DEFINE(DECRYPT_FAILED2),
ERRINFO_DEFINE(PEER_DISCONNECTED),
ERRINFO_DEFINE(NONE)
ERRINFO_DEFINE(NONE)
};
const char* freerdp_get_error_info_string(UINT32 code)
{
const ERRINFO* errInfo;
errInfo = &ERRINFO_CODES[0];
while (errInfo->code != ERRINFO_NONE)
@ -543,7 +559,6 @@ const char* freerdp_get_error_info_string(UINT32 code)
const char* freerdp_get_error_info_name(UINT32 code)
{
const ERRINFO* errInfo;
errInfo = &ERRINFO_CODES[0];
while (errInfo->code != ERRINFO_NONE)
@ -562,7 +577,6 @@ const char* freerdp_get_error_info_name(UINT32 code)
void rdp_print_errinfo(UINT32 code)
{
const ERRINFO* errInfo;
errInfo = &ERRINFO_CODES[0];
while (errInfo->code != ERRINFO_NONE)