Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : > On 1/19/21 6:54 PM, Laurent Vivier wrote: >> From: Shu-Chun Weng <[email protected]> >> >> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >> >> Signed-off-by: Shu-Chun Weng <[email protected]> >> Reviewed-by: Laurent Vivier <[email protected]> >> Message-Id: <[email protected]> >> Signed-off-by: Laurent Vivier <[email protected]> >> --- >> linux-user/syscall.c | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >> index 969db2008104..70c61d15ebf8 100644 >> --- a/linux-user/syscall.c >> +++ b/linux-user/syscall.c >> @@ -51,6 +51,7 @@ >> #include <sys/sysinfo.h> >> #include <sys/signalfd.h> >> //#include <sys/user.h> >> +#include <netinet/in.h> >> #include <netinet/ip.h> >> #include <netinet/tcp.h> >> #include <netinet/udp.h> >> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, >> int optname, >> case IPV6_RECVDSTOPTS: >> case IPV6_2292DSTOPTS: >> case IPV6_TCLASS: >> + case IPV6_ADDR_PREFERENCES: >> #ifdef IPV6_RECVPATHMTU >> case IPV6_RECVPATHMTU: >> #endif >> @@ -2926,6 +2928,7 @@ get_timeout: >> case IPV6_RECVDSTOPTS: >> case IPV6_2292DSTOPTS: >> case IPV6_TCLASS: >> + case IPV6_ADDR_PREFERENCES: >> #ifdef IPV6_RECVPATHMTU >> case IPV6_RECVPATHMTU: >> #endif >> > > Building on Centos7: > > ../linux-user/syscall.c: In function 'do_setsockopt': > ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' > undeclared (first use in this function) > case IPV6_ADDR_PREFERENCES: > ^ > ../linux-user/syscall.c:2276:14: note: each undeclared identifier is > reported only once for each function it appears in > ../linux-user/syscall.c: In function 'do_getsockopt': > ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' > undeclared (first use in this function) > case IPV6_ADDR_PREFERENCES: > ^ >
Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). Could try adding the include? Thanks, Laurent
