]> sjero.net Git - linphone/blobdiff - coreapi/linphonecall.c
Add rtp config for disabling upnp for rtp streams
[linphone] / coreapi / linphonecall.c
index a7cad386c3895b0c87491c3d00b37840ae20465a..dba7381c7893e307770ca6f258f8c60cf9f901a1 100644 (file)
@@ -484,7 +484,9 @@ LinphoneCall * linphone_call_new_outgoing(struct _LinphoneCore *lc, LinphoneAddr
        }
 #ifdef BUILD_UPNP
        if (linphone_core_get_firewall_policy(call->core) == LinphonePolicyUseUpnp) {
-               call->upnp_session = linphone_upnp_session_new(call);
+               if(!lc->rtp_conf.disable_upnp) {
+                       call->upnp_session = linphone_upnp_session_new(call);
+               }
        }
 #endif //BUILD_UPNP
        call->camera_active=params->has_video;
@@ -558,12 +560,14 @@ LinphoneCall * linphone_call_new_incoming(LinphoneCore *lc, LinphoneAddress *fro
                        break;
                case LinphonePolicyUseUpnp:
 #ifdef BUILD_UPNP
-                       call->upnp_session = linphone_upnp_session_new(call);
-                       if (call->upnp_session != NULL) {
-                               linphone_call_init_media_streams(call);
-                               if (linphone_core_update_upnp_from_remote_media_description(call, sal_call_get_remote_media_description(op))<0) {
-                                       /* uPnP port mappings failed, proceed with the call anyway. */
-                                       linphone_call_delete_upnp_session(call);
+                       if(!lc->rtp_conf.disable_upnp) {
+                               call->upnp_session = linphone_upnp_session_new(call);
+                               if (call->upnp_session != NULL) {
+                                       linphone_call_init_media_streams(call);
+                                       if (linphone_core_update_upnp_from_remote_media_description(call, sal_call_get_remote_media_description(op))<0) {
+                                               /* uPnP port mappings failed, proceed with the call anyway. */
+                                               linphone_call_delete_upnp_session(call);
+                                       }
                                }
                        }
 #endif //BUILD_UPNP