]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Add ability to specifiy the source port on the stun request
authorBrian West <brian@freeswitch.org>
Mon, 23 Sep 2013 19:02:54 +0000 (14:02 -0500)
committerBrian West <brian@freeswitch.org>
Mon, 23 Sep 2013 19:02:54 +0000 (14:02 -0500)
src/mod/applications/mod_commands/mod_commands.c

index 2b7804dd315af7d4610b827a75accaef200539d3..169456c421a6f3aa13b28bf6a24f439113db28ec 100644 (file)
@@ -1329,6 +1329,8 @@ SWITCH_STANDARD_API(stun_function)
        switch_port_t port = 0;
        switch_memory_pool_t *pool = NULL;
        char *error = "";
+       char *argv[3] = { 0 };
+       char *mycmd = NULL;
 
        ip = ip_buf;
 
@@ -1337,9 +1339,15 @@ SWITCH_STANDARD_API(stun_function)
                return SWITCH_STATUS_SUCCESS;
        }
 
-       stun_ip = strdup(cmd);
+       mycmd = strdup(cmd);
+       switch_split(mycmd, ' ', argv);
+
+       stun_ip = argv[0];
+
        switch_assert(stun_ip);
 
+       port = argv[1] ? atoi(argv[1]) : 0;
+
        if ((p = strchr(stun_ip, ':'))) {
                int iport;
                *p++ = '\0';
@@ -1374,7 +1382,7 @@ SWITCH_STANDARD_API(stun_function)
        }
 
        switch_core_destroy_memory_pool(&pool);
-       free(stun_ip);
+       switch_safe_free(mycmd);
        return SWITCH_STATUS_SUCCESS;
 }