Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] The test TestIPv6.v6_calls_v4 hangs on FreeBSD #2007

Closed
yurivict opened this issue May 17, 2021 · 5 comments · Fixed by #2420
Closed

[BUG] The test TestIPv6.v6_calls_v4 hangs on FreeBSD #2007

yurivict opened this issue May 17, 2021 · 5 comments · Fixed by #2420
Labels
help wanted Indicates that a maintainer wants help on an issue or pull request [tests] Area: Unit tests Type: Bug Indicates an unexpected problem or unintended behavior
Milestone

Comments

@yurivict
Copy link

IPv6-IPv4 mapping works differently on FreeBSD, this is probably the reason.

@yurivict yurivict added the Type: Bug Indicates an unexpected problem or unintended behavior label May 17, 2021
@maxsharabayko maxsharabayko added the [tests] Area: Unit tests label May 18, 2021
@maxsharabayko maxsharabayko added this to the v1.4.4 milestone May 18, 2021
@maxsharabayko
Copy link
Collaborator

Related Issue #1972.

@maxsharabayko maxsharabayko modified the milestones: v1.4.4, Backlog Aug 12, 2021
@maxsharabayko maxsharabayko added the help wanted Indicates that a maintainer wants help on an issue or pull request label Aug 12, 2021
@maxsharabayko
Copy link
Collaborator

IPv6-IPv4 mapping works differently on FreeBSD, this is probably the reason.

@yurivict Could you please describe the difference or reference something to read?

@maxsharabayko
Copy link
Collaborator

From #2390:

105/218 Test #105: TestIPv6.v6_calls_v4 ................................***Failed    3.05 sec
Running main() from /disk-samsung/freebsd-ports/www/srt/work/.build/googletest/googletest-src/googletest/src/gtest_main.cc
Note: Google Test filter = TestIPv6.v6_calls_v4
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestIPv6
[ RUN      ] TestIPv6.v6_calls_v4
Calling: 0::FFFF:127.0.0.1(IPv6)
/disk-samsung/freebsd-ports/www/srt/work/srt-1.5.0/test/test_ipv6.cpp:58: Failure
Expected: (connect_res) != (SRT_ERROR), actual: -1 vs -1
srt_connect() failed with: Connection setup failure: connection timed out
CALLER Sock name: : :::27781 (IPv6)
CALLER Peer name: : :::27781 (IPv6)
08:25:33.363202/T0x801012000*E:SRT.cn: srt_accept: listener socket @699377275 is already closed
/disk-samsung/freebsd-ports/www/srt/work/srt-1.5.0/test/test_ipv6.cpp:78: Failure
Expected: (accepted_sock) != (SRT_INVALID_SOCK), actual: -1 vs -1
accept() failed with: Connection setup failure: socket closed during operation
/disk-samsung/freebsd-ports/www/srt/work/srt-1.5.0/test/test_ipv6.cpp:190: Failure
Expected equality of these values:
  sa_accepted.str()
    Which is: "unknown:0"
  "127.0.0.1:4200"
[  FAILED  ] TestIPv6.v6_calls_v4 (3042 ms)
[----------] 1 test from TestIPv6 (3042 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (3043 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] TestIPv6.v6_calls_v4

 1 FAILED TEST

Version: 1.5.0
clang-13
FreeBSD 13.1

@yurivict
Copy link
Author

@maxsharabayko

Could you please describe the difference or reference something to read?

On Linux ipv6 is mapped to ipv4 by default. On FreeBSD it is not.

The net.inet6.ip6.v6only sysctl value control this. Default is 1 (no mapping). Alternative is 0 (mapping, like in Linux).

Another way to control the same option is: ipv6_ipv4mapping=YES in /etc/rc.conf

@maxsharabayko
Copy link
Collaborator

@yurivict
PR #2420 (merged to the master) should resolve the issue. Please feel free to reopen if it has not.

@mbakholdina mbakholdina modified the milestones: Backlog, v1.5.1 Sep 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Indicates that a maintainer wants help on an issue or pull request [tests] Area: Unit tests Type: Bug Indicates an unexpected problem or unintended behavior
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants