summaryrefslogtreecommitdiff
path: root/pjsip/include
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/include')
-rw-r--r--pjsip/include/pjsip-ua/sip_timer.h12
-rw-r--r--pjsip/include/pjsip/sip_config.h13
-rw-r--r--pjsip/include/pjsua-lib/pjsua.h30
3 files changed, 26 insertions, 29 deletions
diff --git a/pjsip/include/pjsip-ua/sip_timer.h b/pjsip/include/pjsip-ua/sip_timer.h
index cb77fae7..f4aa5dc3 100644
--- a/pjsip/include/pjsip-ua/sip_timer.h
+++ b/pjsip/include/pjsip-ua/sip_timer.h
@@ -125,7 +125,7 @@ PJ_DECL(pj_status_t) pjsip_timer_init_module(pjsip_endpoint *endpt);
*
* @return PJ_SUCCESS on successful.
*/
-PJ_DECL(pj_status_t) pjsip_timer_default_setting(pjsip_timer_setting *setting);
+PJ_DECL(pj_status_t) pjsip_timer_setting_default(pjsip_timer_setting *setting);
/**
@@ -191,11 +191,14 @@ PJ_DECL(pj_status_t) pjsip_timer_update_req(pjsip_inv_session *inv,
*
* @param inv The invite session.
* @param rdata Incoming response data.
+ * @param st_code Output buffer to store corresponding SIP status code
+ * when function returning non-PJ_SUCCESS.
*
* @return PJ_SUCCESS on successful.
*/
PJ_DECL(pj_status_t) pjsip_timer_process_resp(pjsip_inv_session *inv,
- const pjsip_rx_data *rdata);
+ const pjsip_rx_data *rdata,
+ pjsip_status_code *st_code);
/**
@@ -207,11 +210,14 @@ PJ_DECL(pj_status_t) pjsip_timer_process_resp(pjsip_inv_session *inv,
*
* @param inv The invite session.
* @param rdata Incoming INVITE or UPDATE request.
+ * @param st_code Output buffer to store corresponding SIP status code
+ * when function returning non-PJ_SUCCESS.
*
* @return PJ_SUCCESS on successful.
*/
PJ_DECL(pj_status_t) pjsip_timer_process_req(pjsip_inv_session *inv,
- const pjsip_rx_data *rdata);
+ const pjsip_rx_data *rdata,
+ pjsip_status_code *st_code);
/**
diff --git a/pjsip/include/pjsip/sip_config.h b/pjsip/include/pjsip/sip_config.h
index 22eb0614..af38c040 100644
--- a/pjsip/include/pjsip/sip_config.h
+++ b/pjsip/include/pjsip/sip_config.h
@@ -883,6 +883,19 @@ PJ_INLINE(pjsip_cfg_t*) pjsip_cfg(void)
#endif
+/**
+ * Default session interval for Session Timer (RFC 4028) extension, in
+ * seconds. As specified in RFC 4028 Section 4, this value must not be
+ * less than the absolute minimum for the Session-Expires header field
+ * 90 seconds, and the recommended value is 1800 seconds.
+ *
+ * Default: 1800 seconds
+ */
+#ifndef PJSIP_SESS_TIMER_DEF_SE
+# define PJSIP_SESS_TIMER_DEF_SE 1800
+#endif
+
+
PJ_END_DECL
/**
diff --git a/pjsip/include/pjsua-lib/pjsua.h b/pjsip/include/pjsua-lib/pjsua.h
index 0b257c7c..43db66ea 100644
--- a/pjsip/include/pjsua-lib/pjsua.h
+++ b/pjsip/include/pjsua-lib/pjsua.h
@@ -936,22 +936,11 @@ typedef struct pjsua_config
pj_bool_t require_timer;
/**
- * Specify session expiration period of Session Timers, in seconds.
+ * Specify Session Timer settings, see #pjsip_timer_setting.
* Note that this setting can be further customized in account
* configuration (#pjsua_acc_config).
- *
- * Default: 1800 (seconds)
- */
- unsigned timer_se;
-
- /**
- * Specify minimum session expiration period of Session Timers,
- * in seconds. Note that this setting can be further customized in
- * account configuration (#pjsua_acc_config).
- *
- * Default: 90 (seconds)
*/
- unsigned timer_min_se;
+ pjsip_timer_setting timer_setting;
/**
* Number of credentials in the credential array.
@@ -1733,20 +1722,9 @@ typedef struct pjsua_acc_config
pj_bool_t require_timer;
/**
- * Specify session expiration period of Session Timers, in seconds,
- * for this account.
- *
- * Default: 1800 (seconds)
- */
- unsigned timer_se;
-
- /**
- * Specify minimum session expiration period of Session Timers,
- * in seconds, for this account.
- *
- * Default: 90 (seconds)
+ * Specify Session Timer settings, see #pjsip_timer_setting.
*/
- unsigned timer_min_se;
+ pjsip_timer_setting timer_setting;
/**
* Number of proxies in the proxy array below.