summaryrefslogtreecommitdiff
path: root/gio/giowin32-afunix.h
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2022-01-18 23:59:47 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2022-01-26 18:19:23 +0400
commit4339192b5391a37ecd55816c713537fb1990cd07 (patch)
tree4f7f76bd024b92e5060e16c921992fc66c53ca25 /gio/giowin32-afunix.h
parentfd1e2c80196e1d0901e317a1770f5df64023b8f9 (diff)
downloadglib-4339192b5391a37ecd55816c713537fb1990cd07.tar.gz
gio: add fallback afunix.h header
afunix.h is only recently distributed with Windows SDK & MinGW. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Diffstat (limited to 'gio/giowin32-afunix.h')
-rw-r--r--gio/giowin32-afunix.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/gio/giowin32-afunix.h b/gio/giowin32-afunix.h
new file mode 100644
index 000000000..0e8e27f08
--- /dev/null
+++ b/gio/giowin32-afunix.h
@@ -0,0 +1,40 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright (C) 2022 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef GIOWIN32_AFUNIX_H_
+#define GIOWIN32_AFUNIX_H_
+
+#ifdef HAVE_AFUNIX_H
+#include <afunix.h>
+#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
+
+#endif /* GIOWIN32_AFUNIX_H_*/