forked from mirrors/linphone-iphone
enable ice when ipv6 is enabled but call is ipv4
This commit is contained in:
parent
593bb0c1a6
commit
e5b8464110
8 changed files with 130 additions and 8 deletions
|
|
@ -626,7 +626,7 @@ static void transfer_already_assigned_payload_types(SalMediaDescription *old, Sa
|
|||
|
||||
static const char *linphone_call_get_bind_ip_for_stream(LinphoneCall *call, int stream_index){
|
||||
const char *bind_ip = lp_config_get_string(call->core->config,"rtp","bind_address",
|
||||
linphone_core_ipv6_enabled(call->core) ? "::0" : "0.0.0.0");
|
||||
call->af == AF_INET6 ? "::0" : "0.0.0.0");
|
||||
|
||||
if (stream_index<2 && call->media_ports[stream_index].multicast_ip[0]!='\0'){
|
||||
if (call->dir==LinphoneCallOutgoing){
|
||||
|
|
|
|||
|
|
@ -6406,6 +6406,21 @@ static void v6_call_over_nat_64(void){
|
|||
}else ms_warning("Test skipped, no ipv6 nat64 available");
|
||||
}
|
||||
|
||||
static void call_with_ice_in_ipv4_with_v6_enabled(void) {
|
||||
if (liblinphone_tester_ipv4_available() && liblinphone_tester_ipv6_available()){
|
||||
bool_t liblinphonetester_ipv6_save=liblinphonetester_ipv6; /*this test nee v6*/
|
||||
liblinphonetester_ipv6=TRUE;
|
||||
|
||||
LinphoneCoreManager* marie = linphone_core_manager_new("marie_v4proxy_rc");
|
||||
LinphoneCoreManager* pauline = linphone_core_manager_new("pauline_v4proxy_rc");
|
||||
_call_with_ice_base(pauline,marie,TRUE,TRUE,TRUE,FALSE);
|
||||
linphone_core_manager_destroy(marie);
|
||||
linphone_core_manager_destroy(pauline);
|
||||
liblinphonetester_ipv6=liblinphonetester_ipv6_save; /*this test nee v6*/
|
||||
|
||||
} else ms_warning("Test skipped, need both ipv6 and v4 available");
|
||||
}
|
||||
|
||||
|
||||
test_t call_tests[] = {
|
||||
TEST_NO_TAG("Early declined call", early_declined_call),
|
||||
|
|
@ -6422,6 +6437,7 @@ test_t call_tests[] = {
|
|||
TEST_NO_TAG("Call with timeouted bye", call_with_timeouted_bye),
|
||||
TEST_NO_TAG("Direct call over IPv6", direct_call_over_ipv6),
|
||||
TEST_NO_TAG("IPv6 call over NAT64", v6_call_over_nat_64),
|
||||
TEST_NO_TAG("Call with ICE in IPv4 with IPv6 enabled", call_with_ice_in_ipv4_with_v6_enabled),
|
||||
TEST_NO_TAG("Outbound call with multiple proxy possible", call_outbound_with_multiple_proxy),
|
||||
TEST_NO_TAG("Audio call recording", audio_call_recording_test),
|
||||
#if 0 /* not yet activated because not implemented */
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ auto-respawn=true
|
|||
# List of white space separated host names pointing to this machine.
|
||||
# This is to prevent loops while routing SIP messages.
|
||||
# Default value: localhost
|
||||
aliases=localhost sip2.linphone.org sipopen.example.org sip.example.org auth.example.org auth1.example.org auth2.example.org client.example.org
|
||||
aliases=localhost sip2.linphone.org sipopen.example.org sip.example.org auth.example.org auth1.example.org auth2.example.org client.example.org sipv4.example.org sipv4-nat64.example.org
|
||||
|
||||
# List of white space separated SIP uris where the proxy must listen.Wildcard
|
||||
# (*) can be used to mean 'all local ip addresses'. If 'transport'
|
||||
|
|
|
|||
|
|
@ -16,8 +16,8 @@ realm=sip.example.org
|
|||
|
||||
|
||||
[proxy_0]
|
||||
reg_proxy=sipv4.example.org;transport=tcp
|
||||
reg_route=sipv4.example.org;transport=tcp;lr
|
||||
reg_proxy=sipv4-nat64.example.org;transport=tcp
|
||||
reg_route=sipv4-nat64.example.org;transport=tcp;lr
|
||||
reg_identity="Super Marie" <sip:marie@sip.example.org>
|
||||
reg_expires=3600
|
||||
reg_sendregister=1
|
||||
|
|
|
|||
55
tester/rcfiles/marie_v4proxy_rc
Normal file
55
tester/rcfiles/marie_v4proxy_rc
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
[sip]
|
||||
sip_port=-1
|
||||
sip_tcp_port=-1
|
||||
sip_tls_port=-1
|
||||
default_proxy=0
|
||||
ping_with_options=0
|
||||
use_ipv6=1
|
||||
composing_idle_timeout=1
|
||||
store_ha1_passwd=0 #used for sipp
|
||||
|
||||
[auth_info_0]
|
||||
username=marie
|
||||
userid=marie
|
||||
passwd=secret
|
||||
realm=sip.example.org
|
||||
|
||||
|
||||
[proxy_0]
|
||||
reg_proxy=sipv4.example.org;transport=tcp
|
||||
reg_route=sipv4.example.org;transport=tcp;lr
|
||||
reg_identity="Super Marie" <sip:marie@sip.example.org>
|
||||
reg_expires=3600
|
||||
reg_sendregister=1
|
||||
publish=0
|
||||
dial_escape_plus=0
|
||||
|
||||
[friend_0]
|
||||
url="Paupoche" <sip:pauline@sip.example.org>
|
||||
pol=accept
|
||||
subscribe=0
|
||||
|
||||
|
||||
[rtp]
|
||||
audio_rtp_port=18070-28000
|
||||
video_rtp_port=28070-38000
|
||||
text_rtp_port=39000-49000
|
||||
|
||||
[video]
|
||||
display=0
|
||||
capture=0
|
||||
show_local=0
|
||||
size=qcif
|
||||
enabled=0
|
||||
self_view=0
|
||||
automatically_initiate=0
|
||||
automatically_accept=0
|
||||
device=StaticImage: Static picture
|
||||
|
||||
[sound]
|
||||
echocancellation=0 #to not overload cpu in case of VG
|
||||
|
||||
[net]
|
||||
dns_srv_enabled=0 #no srv needed in general
|
||||
stun_server=stun.linphone.org
|
||||
|
||||
|
|
@ -15,8 +15,8 @@ realm=sip.example.org
|
|||
|
||||
|
||||
[proxy_0]
|
||||
reg_proxy=sipv4.example.org;transport=tls
|
||||
reg_route=sipv4.example.org;transport=tls
|
||||
reg_proxy=sipv4-nat64.example.org;transport=tls
|
||||
reg_route=sipv4-nat64.example.org;transport=tls
|
||||
reg_identity=sip:pauline@sip.example.org
|
||||
reg_expires=3600
|
||||
reg_sendregister=1
|
||||
|
|
|
|||
51
tester/rcfiles/pauline_v4proxy_rc
Normal file
51
tester/rcfiles/pauline_v4proxy_rc
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
[sip]
|
||||
sip_port=-1
|
||||
sip_tcp_port=-1
|
||||
sip_tls_port=-1
|
||||
default_proxy=0
|
||||
ping_with_options=0
|
||||
use_ipv6=1
|
||||
composing_idle_timeout=1
|
||||
|
||||
[auth_info_0]
|
||||
username=pauline
|
||||
userid=pauline
|
||||
passwd=secret
|
||||
realm=sip.example.org
|
||||
|
||||
|
||||
[proxy_0]
|
||||
reg_proxy=sipv4.example.org;transport=tls
|
||||
reg_route=sipv4.example.org;transport=tls
|
||||
reg_identity=sip:pauline@sip.example.org
|
||||
reg_expires=3600
|
||||
reg_sendregister=1
|
||||
publish=0
|
||||
dial_escape_plus=0
|
||||
|
||||
#[friend_0]
|
||||
#url="Mariette" <sip:marie@sip.example.org>
|
||||
#pol=accept
|
||||
#subscribe=0
|
||||
|
||||
[rtp]
|
||||
audio_rtp_port=18070-28000
|
||||
video_rtp_port=39072-49000
|
||||
|
||||
[video]
|
||||
display=0
|
||||
capture=0
|
||||
show_local=0
|
||||
size=qcif
|
||||
enabled=0
|
||||
self_view=0
|
||||
automatically_initiate=0
|
||||
automatically_accept=0
|
||||
device=StaticImage: Static picture
|
||||
|
||||
[sound]
|
||||
echocancellation=0 #to not overload cpu in case of VG
|
||||
|
||||
[net]
|
||||
dns_srv_enabled=0 #no srv needed in general
|
||||
stun_server=stun.linphone.org
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
94.23.19.176 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org
|
||||
94.23.19.176 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org sipv4.example.org
|
||||
2001:41d0:2:14b0::1 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org
|
||||
188.165.46.90 tunnel.wildcard2.linphone.org
|
||||
64:ff9b::94.23.19.176 sipv4.example.org
|
||||
64:ff9b::94.23.19.176 sipv4-nat64.example.org
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue