diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index b2f7bb982..1a7b97de0 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -529,10 +529,6 @@ static void sip_config_read(LinphoneCore *lc) random_port=(0xDFFF&random())+1024; else random_port=0; - if (!sal_is_transport_enabled(lc->sal, SalTransportTLS)) { - tr.tls_port=0; - } - if (tr.udp_port==0 && tr.tcp_port==0 && tr.tls_port==0){ tr.udp_port=5060; } @@ -1693,17 +1689,6 @@ int linphone_core_get_sip_transports(LinphoneCore *lc, LCSipTransports *tr){ return 0; } -/** - * Set a non null value to the enabled transports. -**/ -int linphone_core_get_transports_supported(LinphoneCore *lc, LCSipTransports *transports) { - transports->udp_port=sal_is_transport_enabled(lc->sal, SalTransportUDP); - transports->tcp_port=sal_is_transport_enabled(lc->sal, SalTransportTCP); - transports->tls_port=sal_is_transport_enabled(lc->sal, SalTransportTLS); - transports->dtls_port=sal_is_transport_enabled(lc->sal, SalTransportDTLS); - return 0; -} - /** * Sets the UDP port to be used by SIP. * diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index 60629879f..179ff0ce9 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -1132,8 +1132,6 @@ int linphone_core_get_sip_port(LinphoneCore *lc); int linphone_core_set_sip_transports(LinphoneCore *lc, const LCSipTransports *transports); int linphone_core_get_sip_transports(LinphoneCore *lc, LCSipTransports *transports); - -int linphone_core_get_transports_supported(LinphoneCore *lc, LCSipTransports *transports); /** * * Give access to the UDP sip socket. Can be useful to configure this socket as persistent I.E kCFStreamNetworkServiceType set to kCFStreamNetworkServiceTypeVoIP) diff --git a/coreapi/sal.h b/coreapi/sal.h index e8f0a2c7d..751cc6533 100644 --- a/coreapi/sal.h +++ b/coreapi/sal.h @@ -53,7 +53,6 @@ typedef enum { SalTransportDTLS /*DTLS*/ }SalTransport; -bool_t sal_is_transport_enabled(Sal *sal, SalTransport transport); const char* sal_transport_to_string(SalTransport transport); SalTransport sal_transport_parse(const char*); /* Address manipulation API*/ diff --git a/coreapi/sal_eXosip2.c b/coreapi/sal_eXosip2.c index ee6126ee9..b09cae4ff 100644 --- a/coreapi/sal_eXosip2.c +++ b/coreapi/sal_eXosip2.c @@ -284,7 +284,6 @@ Sal * sal_init(){ sal->verify_server_certs=TRUE; sal->expire_old_contact=FALSE; sal->dscp=-1; - sal->exosip_has_ssl=eXosip_tls_verify_certificate(0) != -1; return sal; } @@ -2522,10 +2521,3 @@ int sal_call_update(SalOp *h, const char *subject){ void sal_reuse_authorization(Sal *ctx, bool_t value) { ctx->reuse_authorization=value; } - -bool_t sal_is_transport_enabled(Sal *sal, SalTransport transport) { - if (transport == SalTransportTLS || transport == SalTransportDTLS) { - return sal->exosip_has_ssl; - } - return TRUE; -} diff --git a/coreapi/sal_eXosip2.h b/coreapi/sal_eXosip2.h index 09a0020fb..71463854c 100644 --- a/coreapi/sal_eXosip2.h +++ b/coreapi/sal_eXosip2.h @@ -49,7 +49,6 @@ struct Sal{ bool_t reuse_authorization; bool_t verify_server_certs; bool_t expire_old_contact; - bool_t exosip_has_ssl; }; struct SalOp{ diff --git a/gtk/parameters.ui b/gtk/parameters.ui index c575566c4..7e76c385f 100644 --- a/gtk/parameters.ui +++ b/gtk/parameters.ui @@ -321,14 +321,13 @@ True False - diff --git a/gtk/propertybox.c b/gtk/propertybox.c index 7beb299f8..31c76f93b 100644 --- a/gtk/propertybox.c +++ b/gtk/propertybox.c @@ -875,56 +875,6 @@ static void linphone_gtk_show_media_encryption(GtkWidget *pb){ g_object_unref(G_OBJECT(model)); } -static void linphone_gtk_show_transports(GtkWidget *pb){ - LinphoneCore *lc=linphone_gtk_get_core(); - GtkWidget *combo=linphone_gtk_get_widget(pb,"proto_combo"); - GtkTreeModel *model; - GtkListStore *store; - GtkTreeIter iter; - GtkCellRenderer *renderer=gtk_cell_renderer_text_new(); - LCSipTransports enabled,tr; - - model=GTK_TREE_MODEL((store=gtk_list_store_new(1,G_TYPE_STRING))); - gtk_combo_box_set_model(GTK_COMBO_BOX(combo),model); - gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo),renderer,TRUE); - gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(combo),renderer,"text",0,NULL); - - gtk_list_store_append(store,&iter); - gtk_list_store_set(store,&iter,0,_("UDP"),-1); - - gtk_list_store_append(store,&iter); - gtk_list_store_set(store,&iter,0,_("TCP"),-1); - - linphone_core_get_transports_supported(lc, &enabled); - if (enabled.tls_port != 0){ - gtk_list_store_append(store,&iter); - gtk_list_store_set(store,&iter,0,_("TLS"),-1); - } - - linphone_core_get_sip_transports(lc,&tr); - - if (tr.tcp_port > 0) { - gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 1); - gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), - tr.tcp_port); - } - else if (tr.tls_port > 0) { - gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 2); - gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), - tr.tls_port); - } - else { - gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 0); - gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), - tr.udp_port); - } - - g_signal_connect(G_OBJECT(combo),"changed",(GCallback)linphone_gtk_proto_changed,NULL); - g_object_unref(G_OBJECT(model)); -} - - - void linphone_gtk_parameters_destroyed(GtkWidget *pb){ GtkWidget *mw=linphone_gtk_get_main_window(); g_object_set_data(G_OBJECT(mw),"parameters",NULL); @@ -957,6 +907,7 @@ void linphone_gtk_show_parameters(void){ GtkWidget *codec_list; int mtu; int ui_advanced; + LCSipTransports tr; if (pb==NULL) { pb=linphone_gtk_create_window("parameters"); @@ -970,8 +921,28 @@ void linphone_gtk_show_parameters(void){ /* NETWORK CONFIG */ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(linphone_gtk_get_widget(pb,"ipv6_enabled")), linphone_core_ipv6_enabled(lc)); + linphone_core_get_sip_transports(lc,&tr); - linphone_gtk_show_transports(pb); + if (tr.tcp_port > 0) { + gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 1); + gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), + tr.tcp_port); + } + else if (tr.tls_port > 0) { + gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 2); + gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), + tr.tls_port); + } + else { + gtk_combo_box_set_active(GTK_COMBO_BOX(linphone_gtk_get_widget(pb,"proto_combo")), 0); + gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"proto_port")), + tr.udp_port); + } + + gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"audio_rtp_port")), + linphone_core_get_audio_port(lc)); + gtk_spin_button_set_value(GTK_SPIN_BUTTON(linphone_gtk_get_widget(pb,"video_rtp_port")), + linphone_core_get_video_port(lc)); linphone_gtk_show_media_encryption(pb); @@ -1049,6 +1020,8 @@ void linphone_gtk_show_parameters(void){ linphone_gtk_ui_level_adapt(pb); g_signal_connect(G_OBJECT(linphone_gtk_get_widget(pb,"proto_port")),"value-changed",(GCallback)linphone_gtk_update_my_port,NULL); + g_signal_connect(G_OBJECT(linphone_gtk_get_widget(pb,"proto_combo")),"changed",(GCallback)linphone_gtk_proto_changed,NULL); + if (linphone_core_tunnel_available()){ gtk_widget_set_visible(GTK_WIDGET(linphone_gtk_get_widget(pb,"tunnel_edit_button")), TRUE);