diff --git a/src/include/slirp/libslirp.h b/src/include/slirp/libslirp.h index 27e1f61bb..7c4340390 100644 --- a/src/include/slirp/libslirp.h +++ b/src/include/slirp/libslirp.h @@ -16,6 +16,17 @@ #include "libslirp-version.h" +/* Windows does not define ssize_t, so we need to define it here. */ +#ifndef _SSIZE_T_DEFINED +# define _SSIZE_T_DEFINED +# undef ssize_t +# ifdef _WIN64 +# define ssize_t int64_t +# else +# define ssize_t int32_t +# endif +#endif + #ifdef __cplusplus extern "C" { #endif diff --git a/src/include/tinyglib.h b/src/include/tinyglib.h index e510cbc85..fabdefcfc 100644 --- a/src/include/tinyglib.h +++ b/src/include/tinyglib.h @@ -77,6 +77,17 @@ /* Types */ +/* Windows does not define ssize_t, so we need to define it here. */ +#ifndef _SSIZE_T_DEFINED +# define _SSIZE_T_DEFINED +# undef ssize_t +# ifdef _WIN64 +# define ssize_t int64_t +# else +# define ssize_t int32_t +# endif +#endif + #define gboolean int #define gchar char #define gint int diff --git a/src/network/slirp/libslirp.h b/src/network/slirp/libslirp.h index 27e1f61bb..7c4340390 100644 --- a/src/network/slirp/libslirp.h +++ b/src/network/slirp/libslirp.h @@ -16,6 +16,17 @@ #include "libslirp-version.h" +/* Windows does not define ssize_t, so we need to define it here. */ +#ifndef _SSIZE_T_DEFINED +# define _SSIZE_T_DEFINED +# undef ssize_t +# ifdef _WIN64 +# define ssize_t int64_t +# else +# define ssize_t int32_t +# endif +#endif + #ifdef __cplusplus extern "C" { #endif