ws2_32: Move the setsockopt(IPV6_UNICAST_IF) implementation to ntdll.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2021-07-30 00:00:45 -05:00 committed by Alexandre Julliard
parent a6b880a042
commit 81ba59bb21
3 changed files with 7 additions and 5 deletions

View File

@ -1891,6 +1891,9 @@ NTSTATUS sock_ioctl( HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc, void *apc
#ifdef IPV6_UNICAST_IF #ifdef IPV6_UNICAST_IF
case IOCTL_AFD_WINE_GET_IPV6_UNICAST_IF: case IOCTL_AFD_WINE_GET_IPV6_UNICAST_IF:
return do_getsockopt( handle, io, IPPROTO_IPV6, IPV6_UNICAST_IF, out_buffer, out_size ); return do_getsockopt( handle, io, IPPROTO_IPV6, IPV6_UNICAST_IF, out_buffer, out_size );
case IOCTL_AFD_WINE_SET_IPV6_UNICAST_IF:
return do_setsockopt( handle, io, IPPROTO_IPV6, IPV6_UNICAST_IF, in_buffer, in_size );
#endif #endif
default: default:

View File

@ -3642,11 +3642,6 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname,
case WS_IPV6_MULTICAST_LOOP: case WS_IPV6_MULTICAST_LOOP:
return server_setsockopt( s, IOCTL_AFD_WINE_SET_IPV6_MULTICAST_LOOP, optval, optlen ); return server_setsockopt( s, IOCTL_AFD_WINE_SET_IPV6_MULTICAST_LOOP, optval, optlen );
#ifdef IPV6_UNICAST_IF
case WS_IPV6_UNICAST_IF:
#endif
convert_sockopt(&level, &optname);
break;
case WS_IPV6_PROTECTION_LEVEL: case WS_IPV6_PROTECTION_LEVEL:
FIXME("IPV6_PROTECTION_LEVEL is ignored!\n"); FIXME("IPV6_PROTECTION_LEVEL is ignored!\n");
return 0; return 0;
@ -3654,6 +3649,9 @@ int WINAPI WS_setsockopt(SOCKET s, int level, int optname,
case WS_IPV6_UNICAST_HOPS: case WS_IPV6_UNICAST_HOPS:
return server_setsockopt( s, IOCTL_AFD_WINE_SET_IPV6_UNICAST_HOPS, optval, optlen ); return server_setsockopt( s, IOCTL_AFD_WINE_SET_IPV6_UNICAST_HOPS, optval, optlen );
case WS_IPV6_UNICAST_IF:
return server_setsockopt( s, IOCTL_AFD_WINE_SET_IPV6_UNICAST_IF, optval, optlen );
case WS_IPV6_V6ONLY: case WS_IPV6_V6ONLY:
{ {
union generic_unix_sockaddr uaddr; union generic_unix_sockaddr uaddr;

View File

@ -220,6 +220,7 @@ struct afd_get_events_params
#define IOCTL_AFD_WINE_GET_IPV6_UNICAST_HOPS WINE_AFD_IOC(275) #define IOCTL_AFD_WINE_GET_IPV6_UNICAST_HOPS WINE_AFD_IOC(275)
#define IOCTL_AFD_WINE_SET_IPV6_UNICAST_HOPS WINE_AFD_IOC(276) #define IOCTL_AFD_WINE_SET_IPV6_UNICAST_HOPS WINE_AFD_IOC(276)
#define IOCTL_AFD_WINE_GET_IPV6_UNICAST_IF WINE_AFD_IOC(277) #define IOCTL_AFD_WINE_GET_IPV6_UNICAST_IF WINE_AFD_IOC(277)
#define IOCTL_AFD_WINE_SET_IPV6_UNICAST_IF WINE_AFD_IOC(278)
struct afd_create_params struct afd_create_params
{ {