struct sockaddr_un dummy_un;
+/**
+ Struct for holding sockaddr.
+
+ It's called "MegaAddr" because we use a trick to extend the historical UNIX domain socket
+ path length of 108 bytes to PATH_MAX by declaring a large enough buffer
+ at the end of the union.
+
+ This works as long as the POSIX functions don't verify the buffer length.
+ For glibc on linux this is true.
+*/
union MegaAddr {
struct sockaddr m_addr;
struct sockaddr_in m_addr_in;