From d409373b9d0482bbce312539d02a648cbb1c790a Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Tue, 2 Aug 2022 15:51:58 +0800 Subject: util/qemu-sockets: Enable unix socket support on Windows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Support for the unix socket has existed both in BSD and Linux for the longest time, but not on Windows. Since Windows 10 build 17063 [1], the native support for the unix socket has come to Windows. Starting this build, two Win32 processes can use the AF_UNIX address family over Winsock API to communicate with each other. [1] https://devblogs.microsoft.com/commandline/af_unix-comes-to-windows/ Signed-off-by: Xuzhou Cheng Signed-off-by: Bin Meng Reviewed-by: Marc-André Lureau Message-Id: <20220802075200.907360-3-bmeng.cn@gmail.com> --- include/sysemu/os-win32.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'include/sysemu/os-win32.h') diff --git a/include/sysemu/os-win32.h b/include/sysemu/os-win32.h index edc3b38..5b38c7b 100644 --- a/include/sysemu/os-win32.h +++ b/include/sysemu/os-win32.h @@ -30,6 +30,23 @@ #include #include +#ifdef HAVE_AFUNIX_H +#include +#else +/* + * Fallback definitions of things we need in afunix.h, if not available from + * the used Windows SDK or MinGW headers. + */ +#define UNIX_PATH_MAX 108 + +typedef struct sockaddr_un { + ADDRESS_FAMILY sun_family; + char sun_path[UNIX_PATH_MAX]; +} SOCKADDR_UN, *PSOCKADDR_UN; + +#define SIO_AF_UNIX_GETPEERPID _WSAIOR(IOC_VENDOR, 256) +#endif + #ifdef __cplusplus extern "C" { #endif -- cgit v1.1