diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c
index 45932f360532363da3a774a55917599812661fb5..f9920a9e6281f4bac02852647303525c6b056672 100644
--- a/coreapi/linphonecall.c
+++ b/coreapi/linphonecall.c
@@ -349,7 +349,7 @@ LinphoneCall * linphone_call_new_incoming(LinphoneCore *lc, LinphoneAddress *fro
 		/*the following sends an option request back to the caller so that
 		 we get a chance to discover our nat'd address before answering.*/
 		call->ping_op=sal_op_new(lc->sal);
-		from_str=linphone_address_as_string(from);
+		from_str=linphone_address_as_string_uri_only(from);
 		sal_op_set_route(call->ping_op,sal_op_get_network_origin(call->op));
 		sal_op_set_user_pointer(call->ping_op,call);
 		sal_ping(call->ping_op,linphone_core_find_best_identity(lc,from,NULL),from_str);
diff --git a/coreapi/sal_eXosip2.c b/coreapi/sal_eXosip2.c
index cc747d9a52f7f94e9a0c990d626c9dfcbf7320d3..533fa860abd0cc53111ed1f892948ffe12fcbfcf 100644
--- a/coreapi/sal_eXosip2.c
+++ b/coreapi/sal_eXosip2.c
@@ -722,6 +722,7 @@ int sal_ping(SalOp *op, const char *from, const char *to){
 	
 	sal_op_set_from(op,from);
 	sal_op_set_to(op,to);
+
 	/*bug here: eXosip2 does not honor the route argument*/
 	eXosip_options_build_request (&options, sal_op_get_to(op),
 			sal_op_get_from(op),sal_op_get_route(op));