summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-06-26 12:20:37 +0000
committerBenny Prijono <bennylp@teluu.com>2007-06-26 12:20:37 +0000
commitb1b10d6b468b110bf996eafec5a9875a9f917c7a (patch)
treee535886276e09aded33b23c6200036d520e6b5ca /pjsip-apps
parent64a2dec7043051da0ea7fc2dbf6e98f478c82852 (diff)
Ticket #345: Option to select random start port in pjsua
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1394 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/pjsua/pjsua_app.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c
index 98b6f2c4..4fdd17cd 100644
--- a/pjsip-apps/src/pjsua/pjsua_app.c
+++ b/pjsip-apps/src/pjsua/pjsua_app.c
@@ -715,6 +715,15 @@ static pj_status_t parse_args(int argc, char *argv[],
case OPT_RTP_PORT:
cfg->rtp_cfg.port = my_atoi(pj_optarg);
+ if (cfg->rtp_cfg.port == 0) {
+ enum { START_PORT=4000 };
+ unsigned range;
+
+ range = (65535-START_PORT-PJSUA_MAX_CALLS*2);
+ cfg->rtp_cfg.port = START_PORT +
+ ((pj_rand() % range) & 0xFFFE);
+ }
+
if (cfg->rtp_cfg.port < 1 || cfg->rtp_cfg.port > 65535) {
PJ_LOG(1,(THIS_FILE,
"Error: rtp-port argument value "