- (djm) SUN_LEN macro for systems which lack it
diff --git a/ChangeLog b/ChangeLog
index 2fd41fa..ae8ae56 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -47,6 +47,7 @@
    Charles Levert <charles@comm.polymtl.ca>
  - (djm) Seperate arc4random into seperate file and use OpenSSL's RC4 
    implementation.
+ - (djm) SUN_LEN macro for systems which lack it
 
 20000815
  - (djm) More SunOS 4.1.x fixes from Nate Itkin <nitkin@europa.com>
diff --git a/defines.h b/defines.h
index 0480006..cd322f9 100644
--- a/defines.h
+++ b/defines.h
@@ -6,6 +6,7 @@
 #include <sys/types.h> /* For [u]intxx_t */
 #include <sys/socket.h> /* For SHUT_XXXX */
 #include <sys/param.h> /* For MAXPATHLEN */
+#include <sys/un.h> /* For SUN_LEN */
 #include <netinet/in_systm.h> /* For typedefs */
 #include <netinet/in.h> /* For IPv6 macros */
 #include <netinet/ip.h> /* For IPTOS macros */
@@ -282,6 +283,11 @@
 # define USE_PAM
 #endif /* defined(HAVE_SECURITY_PAM_APPL_H) && !defined(DISABLE_PAM) */
 
+#ifndef SUN_LEN
+#define SUN_LEN(su) \
+        (sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path))
+#endif /* SUN_LEN */
+
 /* Function replacement / compatibility hacks */
 
 /* In older versions of libpam, pam_strerror takes a single argument */
diff --git a/includes.h b/includes.h
index 13042fd..5102c97 100644
--- a/includes.h
+++ b/includes.h
@@ -27,7 +27,6 @@
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <sys/wait.h>
-#include <sys/un.h>
 #include <sys/resource.h>
 
 #include <netinet/tcp.h>