Patch from Stephen Wilson:
POSIX does not define sockaddr_un.sun_len. Set only when required by the platform. llvm-svn: 122266
This commit is contained in:
parent
eaff500c7b
commit
a6846833ea
|
@ -432,7 +432,9 @@ ConnectionFileDescriptor::NamedSocketAccept (const char *socket_name, Error *err
|
||||||
saddr_un.sun_family = AF_UNIX;
|
saddr_un.sun_family = AF_UNIX;
|
||||||
::strncpy(saddr_un.sun_path, socket_name, sizeof(saddr_un.sun_path) - 1);
|
::strncpy(saddr_un.sun_path, socket_name, sizeof(saddr_un.sun_path) - 1);
|
||||||
saddr_un.sun_path[sizeof(saddr_un.sun_path) - 1] = '\0';
|
saddr_un.sun_path[sizeof(saddr_un.sun_path) - 1] = '\0';
|
||||||
|
#if defined(__APPLE__) || defined(__FreeBSD__)
|
||||||
saddr_un.sun_len = SUN_LEN (&saddr_un);
|
saddr_un.sun_len = SUN_LEN (&saddr_un);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (::bind (listen_socket, (struct sockaddr *)&saddr_un, SUN_LEN (&saddr_un)) == 0)
|
if (::bind (listen_socket, (struct sockaddr *)&saddr_un, SUN_LEN (&saddr_un)) == 0)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue