HCM Connection Status Codes

This topic defines the host connection manager (HCM) connection status codes. The following status are defined for the HCM: connection status, disconnect status, connection error codes, custom return codes, error code domains, custom error codes, data monitoring codes, encryption strength codes, and session state codes.

Usage Errors

The following error occurs when the specified session is invalid.

HCM_E_BADSESSION: "Specified Session is invalid"

Status Codes for IConnectClient::StatusInfo

HCM_SI_CONNECTING_TO_PORT       100

HCM_SI_CONNECTED_TO_PORT        101

HCM_SI_TPC_SIGNING_ON           102

HCM_SI_TPC_SIGNED_ON            103

HCM_SI_TPC_SIGNON_TIMEOUT       104

HCM_SI_IPC_CONFIG_DOWNLOAD      105

HCM_SI_IPC_NO_GTIDS_REGISTERED  106

Disconnect codes for IConnectClient::Disconnect

The code for a disconnect due to a client request (IConnect::Disconnect call) is

HCM_DISCONNECT_CLIENTREQUEST      0

The code for an abnormal disconnect is

HCM_DISCONNECT_CONNECTIONABORTED  1

The code for a disconnect due to CLOSE_DOWN message from IPC is

HCM_DISCONNECT_IPC_CLOSEDOWN      2

The code for a disconnect due to REFRESH_CONFIG message from IPC is

HCM_DISCONNECT_IPC_REFRESHCONFIG  3

Error codes for IConnectClient::ConnectError

The code that displays when there is no communications connection and no socket connection to the IPC could be established is

HCM_CONNECTERROR_NOCOMMCONNECT      -1

The code that displays when GTIDs were not successfully registered with the IPC is

HCM_CONNECTERROR_NOPROTOCOLCONNECT  -2

The code that displays when an ACM PreConnect returned a failure is

HCM_CONNECTERROR_ACM_PRECONNECT     -3

The code that displays when an ACM PostConnect returned a failure is

HCM_CONNECTERROR_ACM_POSTCONNECT    -4

The code that displays when a client aborts a connection attempt (called IConnect::Disconnect while the connection is being established) is

HCM_CONNECTERROR_USERDISCONNECT     -5

The codes that displays when a secure encrypted connection could not be established (not used) is

HCM_CONNECTERROR_NOSECURECONNECT    -6

The code that displays when no valid response was received from the IPCS is

HCM_CONNECTERROR_NOPROTOCOLCONFIG   -7

Custom Return Codes - HRESULT Success/Failure

The code that displays when the callback from HCM to ISDTransaction(2)::GetTransactionInfo failed is

HCM_E_TRANSINFOFAILED   MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x506)

The code that displays when the ITransManager::CancelTransaction cannot be called from within a cancel notification is as follows. Note: This return value is not used by the current IPC implementation of the HCM.

HCM_E_NONESTEDCANCEL    MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x501)

The code that displays when the HCM is already connected is

HCM_E_ALREADYCONNECTED  MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x502)

The code that displays when the Terminal ID is invalid is

HCM_E_INVALIDTERMINALID MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x503)

The code that displays when the session is already in use is

HCM_E_SESSIONBUSY       MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x504)

The code that displays for an invalid session is

HCM_E_BADSESSION        MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x507)

The code that displays for ITransManager2::BeginSession when no session is available in the specified state is

HCM_S_NOSESSIONINSTATE  MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_ITF,0x505)

The code that displays for an IConnect::Connect call that is already pending is

HCM_E_CONNECTPENDING    MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x508)

The code that displays for an invalid identity is

HCM_E_INVALIDIDENTITY   MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,0x509)

Error Code Domains -- The Hiword of the Returned INT

HCM_E_DOMAIN_NOERROR           0

HCM_E_DOMAIN_ROUTER            1

HCM_E_DOMAIN_PROCEDURE         2

HCM_E_DOMAIN_DATAREC           3

HCM_E_DOMAIN_APP_ERR_SEVERITY  4

Custom Error Codes

The following are the error values for HCM_E_DOMAIN_ROUTER.

The code that displays when the ISDTransaction::GetTransactionInfo failed is

HCM_E_TRAN_CLIENT_FAILED 1

The code that displays when the ISDTransaction::GetDataRecord failed is

HCM_E_DATA_REC_CLIENT_FAILED 2

The code that displays when the transaction times out is

HCM_E_TRAN_TIMED_OUT 3

The code that displays when the transaction was pending when HCM disconnected is

HCM_E_TRAN_DISCONNECTED         4

The code that displays when the message was reported as undelivered by IPC is

HCM_E_TRAN_UNDELIVERED          5

The code that displays when the data record returned is invalid is

HCM_E_TRAN_UNEXPECTED_DATA      6

Bit Flags for Data Monitoring

*_DATA show data to/from the router section of the HCM.

*_ALLDATA shows raw data to/from the comm section (including IPC headers).

HCM_DATAMONITOR_SEND_DATA     0x00000001

HCM_DATAMONITOR_SEND_ALLDATA  0x00000002

HCM_DATAMONITOR_RECV_DATA     0x00000004

HCM_DATAMONITOR_RECV_ALLDATA  0x00000008

Bit Flags for Encryption Strength (where available)

HCM_ENCRYPT_STRONG          0x00000001

HCM_ENCRYPT_EXPORTABLE      0x00000002

Pre-Defined Session States

The code that displays when the session has been reset is

HCM_SESSION_STATE_RESET     0xFFFFFFFF

The code that displays when the session state is unknown is

HCM_SESSION_STATE_UNKNOWN   0xFFFFFFFE