neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/31771 )
Change subject: error log: osmo_sock_init2_multiaddr() v4/v6 mix ......................................................................
error log: osmo_sock_init2_multiaddr() v4/v6 mix
Provide some more information for the error case when local and remote addresses mix v4 and v6.
Change-Id: I0fd12b08e0788ce3af6dc519ff8c82ad196a115f --- M src/core/socket.c M tests/socket/socket_sctp_test.err 2 files changed, 21 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/71/31771/1
diff --git a/src/core/socket.c b/src/core/socket.c index 9e0f84e..1b14794 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -776,7 +776,11 @@ if (((flags & OSMO_SOCK_F_BIND) && (flags & OSMO_SOCK_F_CONNECT)) && !addrinfo_has_in6addr_any((const struct addrinfo **)res_loc, local_hosts_cnt) && (loc_has_v4addr != rem_has_v4addr || loc_has_v6addr != rem_has_v6addr)) { - LOGP(DLGLOBAL, LOGL_ERROR, "Invalid v4 vs v6 in local vs remote addresses\n"); + LOGP(DLGLOBAL, LOGL_ERROR, "Invalid v4 vs v6 in local vs remote addresses: " + "local:%s%s remote:%s%s\n", + loc_has_v4addr ? " v4" : "", loc_has_v6addr ? " v6" : "", + rem_has_v4addr ? " v4" : "", rem_has_v6addr ? " v6" : "" + ); rc = -EINVAL; goto ret_freeaddrinfo; } diff --git a/tests/socket/socket_sctp_test.err b/tests/socket/socket_sctp_test.err index 996d092..7583a2a 100644 --- a/tests/socket/socket_sctp_test.err +++ b/tests/socket/socket_sctp_test.err @@ -1,8 +1,8 @@ invalid: you have to specify either BIND or CONNECT flags -Invalid v4 vs v6 in local vs remote addresses -Invalid v4 vs v6 in local vs remote addresses +Invalid v4 vs v6 in local vs remote addresses: local: v4 remote: v6 +Invalid v4 vs v6 in local vs remote addresses: local: v6 remote: v4 invalid: you have to specify either BIND or CONNECT flags -Invalid v4 vs v6 in local vs remote addresses -Invalid v4 vs v6 in local vs remote addresses +Invalid v4 vs v6 in local vs remote addresses: local: v4 remote: v6 +Invalid v4 vs v6 in local vs remote addresses: local: v6 remote: v4 getaddrinfo(::1, 0) failed: Address family for hostname not supported getaddrinfo(127.0.0.1, 0) failed: Address family for hostname not supported