X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=net.h;h=79c5994c43ec2b0b6ae8fee1933b492c9f97a20d;hp=80f5794466fe74b8dbb429ad2ae2d38415945dba;hb=f6a289781404811986a11030ea7552fa5b0ca9bf;hpb=13f672993a23637fe8ad76d9ebc64fe774528f5d diff --git a/net.h b/net.h index 80f57944..79c5994c 100644 --- a/net.h +++ b/net.h @@ -8,13 +8,15 @@ /** \file net.h exported symbols from net.c */ /** - * the buffer size of the sun_path component of struct sockaddr_un + * The buffer size of the sun_path component of struct sockaddr_un. * - * While glibc doesn't define \p UNIX_PATH_MAX, it - * documents it has being limited to 108 bytes. + * While glibc doesn't define \p UNIX_PATH_MAX, it documents it has being + * limited to 108 bytes. On NetBSD it is only 104 bytes though. We trust \p + * UNIX_PATH_MAX if it is defined and use the size of the ->sun_path member + * otherwise. This should be safe everywhere. */ #ifndef UNIX_PATH_MAX -#define UNIX_PATH_MAX 108 +#define UNIX_PATH_MAX (sizeof(((struct sockaddr_un *)0)->sun_path)) #endif /* Userland defines for Linux DCCP support. */