📄 transnet.h
字号:
int *node,
TRANSTYPE type,
void **hMsgContext);
/**************************************************************************************
* processQ931IncomingMessage
*
* Purpose: handles incoming messages:
* extract the states of the faststart and tunneling (including parallel one).
* updates the multiplexing parameters of the host
* decides whether to report the openning of a H.245 connection
* decides whether to initiate a connect for H.245
* extract all kinds of tunneled messages from the message
*
* Input: host - The host on which the message arrived
* session - The session on which the message arrived (i.e. the call)
* pvtNode - The decoded message itself
* manualRAS - The RAS mode of the application
*
* Output: None.
*
* Return value: msgType - the message type.
*
**************************************************************************************/
int processQ931IncomingMessage(cmTransHost *host, cmTransSession *session, int pvtNode);
/**************************************************************************************
* connectH245
*
* Purpose: connects if the host state permits, a H.245 connection.
*
* Input: transGlobal - The global variables of the module.
* session - The session for which the connection is done
* msgType - The type of the message that is being checked
*
* Output: None.
*
**************************************************************************************/
void connectH245(cmTransGlobals *transGlobals,
cmTransSession *session,
int msgType);
/**************************************************************************************
* reportH245Establishment
*
* Purpose: if not done so yet, report to the user about an active H.245 connection.
*
* Input: transGlobal - The global variables of the module.
* session - The session for which the connection is done
*
* Output: None.
*
**************************************************************************************/
void reportH245Establishment(cmTransGlobals *transGlobals, cmTransSession *session);
/**************************************************************************************
* annexEEvNewMessage
*
* Purpose: Callback for Annex E upon receiving new incoming message.
* The call back looks for the host (or create one if it's new) and
* then calls the regular event handler (of TPKT) with event liEvRead.
*
* Input: hAnnexE - The annex E module handle
* hAppAnnexE - The application handle of the annex E module (actualy
* our very own transGlobals structure).
* nIP - The remote ip whence the message arrived.
* nPort - The remote port whence the message arrived.
* pMessage - The encoded message itself
* nSize - The size of the message.
*
* Output: None.
*
**************************************************************************************/
annexEStatus RVCALLCONV annexEEvNewMessage(
IN HANNEXE hAnnexE,
IN HAPPANNEXE hAppAnnexE,
IN RvUint32 nIP,
IN RvUint16 nPort,
IN void* pMessage,
IN int nSize
);
/**************************************************************************************
* annexEEvConnectionBroken
*
* Purpose: Callback for Annex E upon expiration of I-AM-ALIVE timer & retries.
* The call back looks for the host and then calls the regular event handler
* (of TPKT) with event liEvClose.
*
* Input: hAnnexE - The annex E module handle
* hAppAnnexE - The application handle of the annex E module (actualy
* our very own transGlobals structure).
* nIP - The remote ip whence the message arrived.
* nPort - The remote port whence the message arrived.
*
* Output: None.
*
**************************************************************************************/
annexEStatus RVCALLCONV annexEEvConnectionBroken(
IN HANNEXE hAnnexE,
IN HAPPANNEXE hAppAnnexE,
IN RvUint32 nIP,
IN RvUint16 nPort
);
/**************************************************************************************
* annexEEvUseOtherAddress
*
* Purpose: Callback for Annex E upon receiving a request to change the remote address.
* The call back looks for the host and then deletes it from the host hash only
* to put it there agian with the new address.
*
* Input: hAnnexE - The annex E module handle
* hAppAnnexE - The application handle of the annex E module (actualy
* our very own transGlobals structure).
* nIP - The remote ip whence the message arrived.
* nPort - The remote port whence the message arrived.
* pNewAddress - the new address to set the host to.
*
* Output: None.
*
**************************************************************************************/
annexEStatus RVCALLCONV annexEEvUseOtherAddress(
IN HANNEXE hAnnexE,
IN HAPPANNEXE hAppAnnexE,
IN RvUint32 nIP,
IN RvUint16 nPort,
IN cmTransportAddress* pNewAddress
);
/**************************************************************************************
* annexEEvWriteable
*
* Purpose: Callback for Annex E when resources are available again for sending, after
* receiving would block error on send.
* The call back looks for the host and then calls the regular event handler
* (of TPKT) with event liEvWrite.
*
* Input: hAnnexE - The annex E module handle
* hAppAnnexE - The application handle of the annex E module (actualy
* our very own transGlobals structure).
* nIP - The remote ip whence the message arrived.
* nPort - The remote port whence the message arrived.
*
* Output: None.
*
**************************************************************************************/
annexEStatus RVCALLCONV annexEEvWriteable(
IN HANNEXE hAnnexE,
IN HAPPANNEXE hAppAnnexE,
IN RvUint32 nIP,
IN RvUint16 nPort
);
/**************************************************************************************
* zeroTimerEvent
*
* Purpose: call back rotine that simulates a connect from the network on one of the
* connections (H245, Q931 or Annex E). It is used when a host is already
* connected and we just want to simulate its connection event as if we got
* it from the network
*
* input : userData - The handle to the session on which we need to report the connect.
*
* Output: Always RV_FALSE.
*
**************************************************************************************/
RvBool zeroTimerEvent(IN void* userData);
#ifdef __cplusplus
}
#endif
#endif /* _TRANSNET_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -