diff options
author | Benny Prijono <bennylp@teluu.com> | 2007-06-26 12:20:37 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2007-06-26 12:20:37 +0000 |
commit | b1b10d6b468b110bf996eafec5a9875a9f917c7a (patch) | |
tree | e535886276e09aded33b23c6200036d520e6b5ca | |
parent | 64a2dec7043051da0ea7fc2dbf6e98f478c82852 (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
-rw-r--r-- | pjsip-apps/src/pjsua/pjsua_app.c | 9 |
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 " |