From c9818798147a4eec00bba61a05fa9bc88398ec3b Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Tue, 23 Aug 2022 23:52:17 +1200 Subject: [PATCH] Don't bother to set sockaddr_un.sun_len. It's not necessary to fill in sun_len when calling bind() or connect(), on all known systems that have it. Discussion: https://postgr.es/m/2781112.1644819528%40sss.pgh.pa.us --- src/common/ip.c | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/common/ip.c b/src/common/ip.c index 9b611cdc8c3..6343f49a70a 100644 --- a/src/common/ip.c +++ b/src/common/ip.c @@ -218,20 +218,6 @@ getaddrinfo_unix(const char *path, const struct addrinfo *hintsp, aip->ai_addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(path); } - /* - * The standard recommendation for filling sun_len is to set it to the - * struct size (independently of the actual path length). However, that - * draws an integer-overflow warning on AIX 7.1, where sun_len is just - * uint8 yet the struct size exceeds 255 bytes. It's likely that nothing - * is paying attention to sun_len on that platform, but we have to do - * something with it. To suppress the warning, clamp the struct size to - * what will fit in sun_len. - */ -#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN - unp->sun_len = Min(sizeof(struct sockaddr_un), - ((size_t) 1 << (sizeof(unp->sun_len) * BITS_PER_BYTE)) - 1); -#endif - return 0; } -- 2.39.5