Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Mar 2016 17:27:22 -0600
From:      Joe Love <joe@getsomewhere.net>
To:        freebsd-emulation@freebsd.org
Subject:   linux(64)-compat and ipv6 setsockopt
Message-ID:  <7B0DAB1F-3C71-4E20-BC50-8EF4541B8D91@getsomewhere.net>

next in thread | raw e-mail | index | archive | help
I=E2=80=99ve been using FreeBSD 11 with the linux64 support, and have =
been using the not-included centos6.7-64bit ports patch to run some =
programs which depend on a more modern linux installation.  =
Specifically, I=E2=80=99ve been using them for Steamcmd, Ark:Survival =
Evolved, and Factorio (headless).  The latest of which started this =
journey.

It seems that a piece of code related to setting a particular socket =
option for IPv6 sockets fails under the linux compat layer:

int ipv6only =3D 1;
setsockopt(this->fd6, IPPROTO_IPV6, IPV6_V6ONLY, &ipv6only, =
sizeof(ipv6only));

Both Steamcmd and Factorio would spit out error messages like this (this =
one being from Factorio):
1.132 Error MultiplayerManager.cpp:108: MultiplayerManager failed: =
"Setsockopt failed: Protocol not available=E2=80=9D

One of the devs for Factorio looked through a more complete trace, and =
their code, and realized that the above line of code was singled out as =
causing the error.


In trying to understand the issue, I tried their advice - disable IPv6 =
(which involved a buildworld/buildkernel) and tried the process again.  =
In doing so, their code completely skips trying to setup IPv6 at all, so =
the program runs fine.  Steamcmd also stopped producing the message, so =
I assume its issue is similar, or at least also related to  IPv6 =
support.  I think steamcmd is actually 32bit, so it should be able to =
verify that same message on a 10.2 system.

Ultimately, I=E2=80=99m wondering if there=E2=80=99s a known issue with =
IPv6 support of linux apps running using the linux compat module.

Thanks,
-Joe




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7B0DAB1F-3C71-4E20-BC50-8EF4541B8D91>