diff --git a/libguile/socket.c b/libguile/socket.c index c0faae1aa..5b17a741a 100644 --- a/libguile/socket.c +++ b/libguile/socket.c @@ -64,7 +64,7 @@ #if defined (HAVE_UNIX_DOMAIN_SOCKETS) && !defined (SUN_LEN) -#define SUN_LEN(ptr) ((size_t) (((struct sockaddr_un *) 0)->sun_path) \ +#define SUN_LEN(ptr) (offsetof (struct sockaddr_un, sun_path) \ + strlen ((ptr)->sun_path)) #endif