From de42bc3ac8f7205f2c302b402e40704ceb46a70c Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Sun, 14 Aug 2022 08:52:08 +1200 Subject: [PATCH] Remove configure probe for struct sockaddr_storage. provides sockaddr_storage in SUSv3 and all targeted Unix systems have it. Windows has it too. Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CA%2BhUKG%2BL_3brvh%3D8e0BW_VfX9h7MtwgN%3DnFHP5o7X2oZucY9dg%40mail.gmail.com --- config/c-library.m4 | 14 +------------- configure | 13 ------------- configure.ac | 1 - src/include/libpq/pqcomm.h | 23 ----------------------- src/include/pg_config.h.in | 3 --- src/tools/msvc/Solution.pm | 1 - 6 files changed, 1 insertion(+), 54 deletions(-) diff --git a/config/c-library.m4 b/config/c-library.m4 index f6b171d923..7a79033730 100644 --- a/config/c-library.m4 +++ b/config/c-library.m4 @@ -73,23 +73,11 @@ AC_DEFUN([PGAC_UNION_SEMUN], ])])# PGAC_UNION_SEMUN -# PGAC_STRUCT_SOCKADDR_STORAGE -# ---------------------------- -# If `struct sockaddr_storage' exists, define HAVE_STRUCT_SOCKADDR_STORAGE. -# If it is missing then one could define it. -AC_DEFUN([PGAC_STRUCT_SOCKADDR_STORAGE], -[AC_CHECK_TYPES([struct sockaddr_storage], [], [], -[#include -#include -])])# PGAC_STRUCT_SOCKADDR_STORAGE - # PGAC_STRUCT_SOCKADDR_STORAGE_MEMBERS # -------------------------------------- # Check the members of `struct sockaddr_storage'. We need to know about # ss_family and ss_len. (Some platforms follow RFC 2553 and call them -# __ss_family and __ss_len.) We also check struct sockaddr's sa_len; -# if we have to define our own `struct sockaddr_storage', this tells us -# whether we need to provide an ss_len field. +# __ss_family and __ss_len.) We also check struct sockaddr's sa_len. AC_DEFUN([PGAC_STRUCT_SOCKADDR_STORAGE_MEMBERS], [AC_CHECK_MEMBERS([struct sockaddr_storage.ss_family, struct sockaddr_storage.__ss_family, diff --git a/configure b/configure index 7a6cec1e47..028434b56e 100755 --- a/configure +++ b/configure @@ -15058,19 +15058,6 @@ cat >>confdefs.h <<_ACEOF _ACEOF -fi - -ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" "#include -#include - -" -if test "x$ac_cv_type_struct_sockaddr_storage" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_SOCKADDR_STORAGE 1 -_ACEOF - - fi ac_fn_c_check_member "$LINENO" "struct sockaddr_storage" "ss_family" "ac_cv_member_struct_sockaddr_storage_ss_family" "#include diff --git a/configure.ac b/configure.ac index f5462ee7a0..f8ab273674 100644 --- a/configure.ac +++ b/configure.ac @@ -1618,7 +1618,6 @@ PGAC_C_COMPUTED_GOTO PGAC_STRUCT_TIMEZONE PGAC_UNION_SEMUN AC_CHECK_TYPES(socklen_t, [], [], [#include ]) -PGAC_STRUCT_SOCKADDR_STORAGE PGAC_STRUCT_SOCKADDR_STORAGE_MEMBERS PGAC_STRUCT_ADDRINFO diff --git a/src/include/libpq/pqcomm.h b/src/include/libpq/pqcomm.h index 3bcc06b2d6..7e2f1495f3 100644 --- a/src/include/libpq/pqcomm.h +++ b/src/include/libpq/pqcomm.h @@ -21,8 +21,6 @@ #include #include -#ifdef HAVE_STRUCT_SOCKADDR_STORAGE - #ifndef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY #ifdef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY #define ss_family __ss_family @@ -35,27 +33,6 @@ #define ss_len __ss_len #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 #endif -#else /* !HAVE_STRUCT_SOCKADDR_STORAGE */ - -/* Define a struct sockaddr_storage if we don't have one. */ - -struct sockaddr_storage -{ - union - { - struct sockaddr sa; /* get the system-dependent fields */ - int64 ss_align; /* ensures struct is properly aligned */ - char ss_pad[128]; /* ensures struct has desired size */ - } ss_stuff; -}; - -#define ss_family ss_stuff.sa.sa_family -/* It should have an ss_len field if sockaddr has sa_len. */ -#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN -#define ss_len ss_stuff.sa.sa_len -#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 -#endif -#endif /* HAVE_STRUCT_SOCKADDR_STORAGE */ typedef struct { diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 6dc4b976c7..85150f90b2 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -460,9 +460,6 @@ /* Define to 1 if `sa_len' is a member of `struct sockaddr'. */ #undef HAVE_STRUCT_SOCKADDR_SA_LEN -/* Define to 1 if the system has the type `struct sockaddr_storage'. */ -#undef HAVE_STRUCT_SOCKADDR_STORAGE - /* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */ #undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm index 6300053dbe..5f2d97a217 100644 --- a/src/tools/msvc/Solution.pm +++ b/src/tools/msvc/Solution.pm @@ -349,7 +349,6 @@ sub GenerateFiles HAVE_STRUCT_CMSGCRED => undef, HAVE_STRUCT_OPTION => undef, HAVE_STRUCT_SOCKADDR_SA_LEN => undef, - HAVE_STRUCT_SOCKADDR_STORAGE => 1, HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY => 1, HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN => undef, HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY => undef,