summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_acc.c
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2011-07-19 11:11:07 +0000
committerNanang Izzuddin <nanang@teluu.com>2011-07-19 11:11:07 +0000
commitb32c80d0cfc7b47fc344f8e5873771f803fbeb4d (patch)
treee7925fd23ad577103b9d7a90dc2fb090a89c6b63 /pjsip/src/pjsua-lib/pjsua_acc.c
parent262defe8ad75325065fd64ea5d3a03a59c5f3039 (diff)
Fixed #1271: protected all video features with PJMEDIA_HAS_VIDEO macro setting.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3667 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_acc.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_acc.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c
index 6947c1aa..98fe5cd8 100644
--- a/pjsip/src/pjsua-lib/pjsua_acc.c
+++ b/pjsip/src/pjsua-lib/pjsua_acc.c
@@ -382,6 +382,13 @@ PJ_DEF(pj_status_t) pjsua_acc_add( const pjsua_acc_config *cfg,
/* Must have a transport */
PJ_ASSERT_RETURN(pjsua_var.tpdata[0].data.ptr != NULL, PJ_EINVALIDOP);
+ /* Verify media count */
+#if !defined(PJMEDIA_HAS_VIDEO) || (PJMEDIA_HAS_VIDEO == 0)
+ PJ_ASSERT_RETURN(cfg->max_video_cnt == 0, PJ_EINVAL);
+#endif
+ PJ_ASSERT_RETURN(cfg->max_audio_cnt + cfg->max_video_cnt <=
+ PJSUA_MAX_CALL_MEDIA, PJ_ETOOMANY);
+
PJSUA_LOCK();
/* Find empty account id. */
@@ -641,6 +648,14 @@ PJ_DEF(pj_status_t) pjsua_acc_modify( pjsua_acc_id acc_id,
PJ_ASSERT_RETURN(acc_id>=0 && acc_id<(int)PJ_ARRAY_SIZE(pjsua_var.acc),
PJ_EINVAL);
+ /* Verify media count */
+#if !defined(PJMEDIA_HAS_VIDEO) || (PJMEDIA_HAS_VIDEO == 0)
+ PJ_ASSERT_RETURN(cfg->max_video_cnt == 0, PJ_EINVAL);
+#endif
+ PJ_ASSERT_RETURN(cfg->max_audio_cnt + cfg->max_video_cnt <=
+ PJSUA_MAX_CALL_MEDIA, PJ_ETOOMANY);
+
+
PJSUA_LOCK();
acc = &pjsua_var.acc[acc_id];