about summary refs log tree commit diff
path: root/include/sys
diff options
context:
space:
mode:
Diffstat (limited to 'include/sys')
-rw-r--r--include/sys/un.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/sys/un.h b/include/sys/un.h
index 769dac6b..7494f1a3 100644
--- a/include/sys/un.h
+++ b/include/sys/un.h
@@ -1,7 +1,17 @@
 #ifndef	_SYS_UN_H
 #define	_SYS_UN_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <features.h>
+
 #define __NEED_sa_family_t
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+#define __NEED_size_t
+#endif
+
 #include <bits/alltypes.h>
 
 struct sockaddr_un
@@ -10,4 +20,13 @@ struct sockaddr_un
 	char sun_path[108];
 };
 
+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+size_t strlen(const char *);
+#define SUN_LEN(s) (2+strlen((s)->sun_path))
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif