+ return 0;
+}
+
+/**
+ * Sets the ports to be used for each of transport (UDP or TCP)
+ *
+ * A zero value port for a given transport means the transport
+ * is not used.
+ *
+ * @ingroup network_parameters
+**/
+int linphone_core_set_sip_transports(LinphoneCore *lc, const LCSipTransports * tr){
+
+ if (transports_unchanged(tr,&lc->sip_conf.transports))
+ return 0;
+ memcpy(&lc->sip_conf.transports,tr,sizeof(*tr));
+
+ if (lc->sal==NULL) return 0;
+ return apply_transports(lc);
+}
+
+/**
+ * Retrieves the ports used for each transport (udp, tcp).
+ * A zero value port for a given transport means the transport
+ * is not used.
+ * @ingroup network_parameters
+**/
+int linphone_core_get_sip_transport(LinphoneCore *lc, LCSipTransports *tr){
+ memcpy(tr,&lc->sip_conf.transports,sizeof(*tr));
+ return 0;
+}
+
+/**
+ * Sets the UDP port to be used by SIP.
+ *
+ * Deprecated: use linphone_core_set_sip_transports() instead.
+ * @ingroup network_parameters
+**/
+void linphone_core_set_sip_port(LinphoneCore *lc,int port)
+{
+ LCSipTransports tr;
+ memset(&tr,0,sizeof(tr));
+ tr.udp_port=port;
+ linphone_core_set_sip_transports (lc,&tr);