From: "Jonathan T. Looney" <j...@freebsd.org>

specified by a #define. Also, add a comment describing the historical context
for this length.

Reviewed by:    bz, jhb, kbowling (previous version)
MFC after:      2 weeks
Sponsored by:   Netflix, Inc.
Differential Revision:  https://reviews.freebsd.org/D24272
---
 newlib/libc/sys/rtems/include/sys/un.h | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/newlib/libc/sys/rtems/include/sys/un.h 
b/newlib/libc/sys/rtems/include/sys/un.h
index f83652e07..3c408628c 100644
--- a/newlib/libc/sys/rtems/include/sys/un.h
+++ b/newlib/libc/sys/rtems/include/sys/un.h
@@ -43,13 +43,21 @@ typedef     __sa_family_t   sa_family_t;
 #define        _SA_FAMILY_T_DECLARED
 #endif
 
+/*
+ * Historically, (struct sockaddr) needed to fit inside an mbuf.
+ * For this reason, UNIX domain sockets were therefore limited to
+ * 104 bytes. While this limit is no longer necessary, it is kept for
+ * binary compatibility reasons.
+ */
+#define        SUNPATHLEN      104
+
 /*
  * Definitions for UNIX IPC domain.
  */
 struct sockaddr_un {
        unsigned char   sun_len;        /* sockaddr len including null */
        sa_family_t     sun_family;     /* AF_UNIX */
-       char    sun_path[104];          /* path name (gag) */
+       char    sun_path[SUNPATHLEN];   /* path name (gag) */
 };
 
 #if __BSD_VISIBLE
-- 
2.35.3

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to