diff options
author | Benny Prijono <bennylp@teluu.com> | 2007-05-30 04:26:40 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2007-05-30 04:26:40 +0000 |
commit | 2195f68b66250eb4b02b73ba40af959fa137c2ff (patch) | |
tree | 44f0e09c40b0d61c9a1175736bf0f6568f106f75 /pjsip/include | |
parent | 8d8e6b777d4a49d04ffe959a9ed5d92982a3f7aa (diff) |
Fixed ticket #302: Behavior in cancelling INVITE session when no provisional response has been received (thanks Esbjörn Dominique)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1319 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/include')
-rw-r--r-- | pjsip/include/pjsip-ua/sip_inv.h | 3 | ||||
-rw-r--r-- | pjsip/include/pjsip/sip_transaction.h | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/pjsip/include/pjsip-ua/sip_inv.h b/pjsip/include/pjsip-ua/sip_inv.h index 7ea1f27d..3a144f80 100644 --- a/pjsip/include/pjsip-ua/sip_inv.h +++ b/pjsip/include/pjsip-ua/sip_inv.h @@ -223,7 +223,8 @@ struct pjsip_inv_session char obj_name[PJ_MAX_OBJ_NAME]; /**< Log identification */ pj_pool_t *pool; /**< Dialog's pool. */ pjsip_inv_state state; /**< Invite sess state. */ - pj_bool_t cancelling; /**< CANCEL sent? */ + pj_bool_t cancelling; /**< CANCEL requested */ + pj_bool_t pending_cancel; /**< Wait to send CANCEL*/ pjsip_status_code cause; /**< Disconnect cause. */ pj_str_t cause_text; /**< Cause text. */ pj_bool_t notify; /**< Internal. */ diff --git a/pjsip/include/pjsip/sip_transaction.h b/pjsip/include/pjsip/sip_transaction.h index 1787f787..657e82ac 100644 --- a/pjsip/include/pjsip/sip_transaction.h +++ b/pjsip/include/pjsip/sip_transaction.h @@ -297,6 +297,18 @@ PJ_DECL(pj_status_t) pjsip_tsx_terminate( pjsip_transaction *tsx, /** + * Cease retransmission on the UAC transaction. The UAC transaction is + * still considered running, and it will complete when either final + * response is received or the transaction times out. + * + * This operation normally is used for INVITE transaction only, when + * the transaction is cancelled before any provisional response has been + * received. + */ +PJ_DECL(pj_status_t) pjsip_tsx_stop_retransmit(pjsip_transaction *tsx); + + +/** * Get the transaction instance in the incoming message. If the message * has a corresponding transaction, this function will return non NULL * value. |