diff --git a/NEWS b/NEWS index 3791448b8..1e8481d78 100644 --- a/NEWS +++ b/NEWS @@ -28,7 +28,7 @@ linphone-3.8.2 -- May 7th, 2015 * add support of the StatusNotifierItem standard to display a status icon on KDE5 * auto-answering can be set through the preferences panel * bug fixes - + Liblinphone level improvements: * fix audio bug with opus codec * fix ICE corner case not properly handled and resulting bad final ice status @@ -76,14 +76,14 @@ linphone-3.7.0 -- February 20th, 2014 * Keyboard can be used for DTMF input * Faster and higly responsive UI thanks to fully asynchronous operation of the liblinphone. * Addon of opus codec - * Possibility to specify a remote provisionning http URI for configuration + * Possibility to specify a remote provisioning http URI for configuration * LDAP search integration for Linux and MacOSX - * is-composing notification in chat area + * is-composing notification in chat area Liblinphone level improvements thanks to new "belle-sip" SIP stack: * multiple SIP transports simultaneously now allowed * IP dual stack: can use IPv6 and IPv4 simultaneously - * fully asynchronous behavior: no more lengthly DNS or connections + * fully asynchronous behavior: no more lengthly DNS or connections * +sip.instance parameter (RFC5626) * alias parameter (RFC5923) * better management of network disconnections @@ -101,7 +101,7 @@ linphone-3.7.0 -- February 20th, 2014 linphone-3.6.1 -- June 17, 2013 * fix memory leak with some video cameras on windows. - + Requires: mediastreamer2 = 2.9.1 and ortp = 0.22.0 linphone-3.6.0 -- May 27, 2013 @@ -166,9 +166,9 @@ linphone-3.4.1 -- February 17th, 2011 Requires mediastreamer-2.7.1 linphone-3.4.0 -- February 7th, 2011 - * implement multiple calls feature: + * implement multiple calls feature: - call hold (with possibility to play a music file) - - call resume + - call resume - acceptance of 2nd call while putting the others on hold - creation of another outgoing call while already in call - blind call transfer @@ -339,7 +339,7 @@ linphone-1.4.1 -- September 18, 2006 * do not change mixer settings at startup linphone-1.4.0 -- September 11, 2006 - * no more glib dependency at all + * no more glib dependency at all * new mediastreamer2 framework for audio/video streaming * stable video support with H.263-1998 * echo cancelation diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index 60a704ca5..d2920ad34 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -3926,7 +3926,7 @@ typedef void (*ContactSearchCallback)( LinphoneContactSearch* id, MSList* friend * Calling this function does not load the configuration. It will write the value into configuration so that configuration * from remote URI will take place at next LinphoneCore start. * @param lc the linphone core - * @param uri the http or https uri to use in order to download the configuration. Passing NULL will disable remote provisionning. + * @param uri the http or https uri to use in order to download the configuration. Passing NULL will disable remote provisioning. * @return -1 if uri could not be parsed, 0 otherwise. Note that this does not check validity of URI endpoint nor scheme and download may still fail. * @ingroup initializing **/ diff --git a/coreapi/remote_provisioning.c b/coreapi/remote_provisioning.c index 9d638307c..d79598758 100644 --- a/coreapi/remote_provisioning.c +++ b/coreapi/remote_provisioning.c @@ -108,8 +108,10 @@ int linphone_remote_provisioning_download_and_apply(LinphoneCore *lc, const char if( scheme && (strcmp(scheme,"file") == 0) ){ // We allow for 'local remote-provisioning' in case the file is to be opened from the hard drive. const char* file_path = remote_provisioning_uri + strlen("file://"); // skip scheme + if (uri) { + belle_sip_object_unref(uri); + } return linphone_remote_provisioning_load_file(lc, file_path); - } else if( scheme && strncmp(scheme, "http", 4) == 0 && host && strlen(host) > 0) { belle_http_request_listener_callbacks_t belle_request_listener={0}; belle_http_request_t *request; @@ -122,9 +124,13 @@ int linphone_remote_provisioning_download_and_apply(LinphoneCore *lc, const char lc->provisioning_http_listener = belle_http_request_listener_create_from_callbacks(&belle_request_listener, lc); request=belle_http_request_create("GET",uri, NULL); + return belle_http_provider_send_request(lc->http_provider, request, lc->provisioning_http_listener); } else { ms_error("Invalid provisioning URI [%s] (missing scheme or host ?)",remote_provisioning_uri); + if (uri) { + belle_sip_object_unref(uri); + } return -1; } } @@ -133,6 +139,9 @@ int linphone_core_set_provisioning_uri(LinphoneCore *lc, const char *remote_prov belle_generic_uri_t *uri=remote_provisioning_uri?belle_generic_uri_parse(remote_provisioning_uri):NULL; if (!remote_provisioning_uri||uri) { lp_config_set_string(lc->config,"misc","config-uri",remote_provisioning_uri); + if (uri) { + belle_sip_object_unref(uri); + } return 0; } ms_error("Invalid provisioning URI [%s] (could not be parsed)",remote_provisioning_uri); diff --git a/gtk/main.ui b/gtk/main.ui index b40737c07..98dc3400a 100644 --- a/gtk/main.ui +++ b/gtk/main.ui @@ -171,7 +171,7 @@ - + True False Set configuration URI