diff options
author | Rich Felker <dalias@aerifal.cx> | 2013-08-21 21:46:57 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2013-08-21 21:46:57 -0400 |
commit | ecf4e24d811085804033b76542acfd87d3f14bcb (patch) | |
tree | 90d89d009f4cd4642a24a31a62d0105f47b17b2a | |
parent | 580b8d8c52624f17e39b19e8cc9e0cbea1510b45 (diff) | |
download | musl-ecf4e24d811085804033b76542acfd87d3f14bcb.tar.gz musl-ecf4e24d811085804033b76542acfd87d3f14bcb.tar.xz musl-ecf4e24d811085804033b76542acfd87d3f14bcb.zip |
add SUN_LEN macro to sys/un.h under appropriate feature tests
this is ugly and useless, but it seems to be the least-ugly way to provide it...
-rw-r--r-- | include/sys/un.h | 19 |
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 |