Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9930889

Browse files
committed
Remove references to sa_family_t, except when SOCKADDR_STORAGE requires
it.Also handle __ss_family as a synonym for ss_family.Kurt Roeckx
1 parent6403a67 commit9930889

File tree

6 files changed

+156
-11
lines changed

6 files changed

+156
-11
lines changed

‎config/c-library.m4

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Macros that test various C library quirks
2-
# $Header: /cvsroot/pgsql/config/c-library.m4,v 1.21 2003/06/12 16:05:10 tgl Exp $
2+
# $Header: /cvsroot/pgsql/config/c-library.m4,v 1.22 2003/06/23 23:51:59 momjian Exp $
33

44

55
# PGAC_VAR_INT_TIMEZONE
@@ -110,6 +110,19 @@ AC_DEFUN([PGAC_STRUCT_SOCKADDR_STORAGE],
110110
#endif
111111
])])# PGAC_STRUCT_SOCKADDR_STORAGE
112112

113+
# PGAC_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
114+
# --------------------------------------
115+
# This checks if the struct sockaddr has a proper ss_family and not an
116+
# __ss_family as rfc2553 defined.
117+
AC_DEFUN([PGAC_STRUCT_SOCKADDR_STORAGE_SS_FAMILY],
118+
[AC_CHECK_MEMBERS([struct sockaddr_storage.ss_family,
119+
struct sockaddr_storage.__ss_family],[],[],
120+
[#include <sys/types.h>
121+
#ifdef HAVE_SYS_SOCKET_H
122+
#include <sys/socket.h>
123+
#endif
124+
])])# PGAC_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
125+
113126

114127
# PGAC_STRUCT_ADDRINFO
115128
# -----------------------

‎configure

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9869,6 +9869,127 @@ cat >>confdefs.h <<_ACEOF
98699869
_ACEOF
98709870
98719871
9872+
fi
9873+
9874+
echo"$as_me:$LINENO: checking for struct sockaddr_storage.ss_family">&5
9875+
echo$ECHO_N"checking for struct sockaddr_storage.ss_family...$ECHO_C">&6
9876+
iftest"${ac_cv_member_struct_sockaddr_storage_ss_family+set}" =set;then
9877+
echo$ECHO_N"(cached)$ECHO_C">&6
9878+
else
9879+
cat>conftest.$ac_ext<<_ACEOF
9880+
#line$LINENO "configure"
9881+
#include "confdefs.h"
9882+
#include <sys/types.h>
9883+
#ifdef HAVE_SYS_SOCKET_H
9884+
#include <sys/socket.h>
9885+
#endif
9886+
9887+
9888+
#ifdef F77_DUMMY_MAIN
9889+
# ifdef __cplusplus
9890+
extern "C"
9891+
# endif
9892+
int F77_DUMMY_MAIN() { return 1; }
9893+
#endif
9894+
int
9895+
main ()
9896+
{
9897+
static struct sockaddr_storage ac_aggr;
9898+
if (ac_aggr.ss_family)
9899+
return 0;
9900+
;
9901+
return 0;
9902+
}
9903+
_ACEOF
9904+
rm -f conftest.$ac_objext
9905+
if { (evalecho"$as_me:$LINENO:\"$ac_compile\"")>&5
9906+
(eval$ac_compile)2>&5
9907+
ac_status=$?
9908+
echo"$as_me:$LINENO:\$? =$ac_status">&5
9909+
(exit$ac_status); }&&
9910+
{ ac_try='test -s conftest.$ac_objext'
9911+
{ (evalecho"$as_me:$LINENO:\"$ac_try\"")>&5
9912+
(eval$ac_try)2>&5
9913+
ac_status=$?
9914+
echo"$as_me:$LINENO:\$? =$ac_status">&5
9915+
(exit$ac_status); }; };then
9916+
ac_cv_member_struct_sockaddr_storage_ss_family=yes
9917+
else
9918+
echo"$as_me: failed program was:">&5
9919+
cat conftest.$ac_ext>&5
9920+
ac_cv_member_struct_sockaddr_storage_ss_family=no
9921+
fi
9922+
rm -f conftest.$ac_objext conftest.$ac_ext
9923+
fi
9924+
echo"$as_me:$LINENO: result:$ac_cv_member_struct_sockaddr_storage_ss_family">&5
9925+
echo"${ECHO_T}$ac_cv_member_struct_sockaddr_storage_ss_family">&6
9926+
iftest$ac_cv_member_struct_sockaddr_storage_ss_family = yes;then
9927+
9928+
cat>>confdefs.h<<_ACEOF
9929+
#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1
9930+
_ACEOF
9931+
9932+
9933+
fi
9934+
echo"$as_me:$LINENO: checking for struct sockaddr_storage.__ss_family">&5
9935+
echo$ECHO_N"checking for struct sockaddr_storage.__ss_family...$ECHO_C">&6
9936+
iftest"${ac_cv_member_struct_sockaddr_storage___ss_family+set}" =set;then
9937+
echo$ECHO_N"(cached)$ECHO_C">&6
9938+
else
9939+
cat>conftest.$ac_ext<<_ACEOF
9940+
#line$LINENO "configure"
9941+
#include "confdefs.h"
9942+
#include <sys/types.h>
9943+
#ifdef HAVE_SYS_SOCKET_H
9944+
#include <sys/socket.h>
9945+
#endif
9946+
9947+
9948+
#ifdef F77_DUMMY_MAIN
9949+
# ifdef __cplusplus
9950+
extern "C"
9951+
# endif
9952+
int F77_DUMMY_MAIN() { return 1; }
9953+
#endif
9954+
int
9955+
main ()
9956+
{
9957+
static struct sockaddr_storage ac_aggr;
9958+
if (ac_aggr.__ss_family)
9959+
return 0;
9960+
;
9961+
return 0;
9962+
}
9963+
_ACEOF
9964+
rm -f conftest.$ac_objext
9965+
if { (evalecho"$as_me:$LINENO:\"$ac_compile\"")>&5
9966+
(eval$ac_compile)2>&5
9967+
ac_status=$?
9968+
echo"$as_me:$LINENO:\$? =$ac_status">&5
9969+
(exit$ac_status); }&&
9970+
{ ac_try='test -s conftest.$ac_objext'
9971+
{ (evalecho"$as_me:$LINENO:\"$ac_try\"")>&5
9972+
(eval$ac_try)2>&5
9973+
ac_status=$?
9974+
echo"$as_me:$LINENO:\$? =$ac_status">&5
9975+
(exit$ac_status); }; };then
9976+
ac_cv_member_struct_sockaddr_storage___ss_family=yes
9977+
else
9978+
echo"$as_me: failed program was:">&5
9979+
cat conftest.$ac_ext>&5
9980+
ac_cv_member_struct_sockaddr_storage___ss_family=no
9981+
fi
9982+
rm -f conftest.$ac_objext conftest.$ac_ext
9983+
fi
9984+
echo"$as_me:$LINENO: result:$ac_cv_member_struct_sockaddr_storage___ss_family">&5
9985+
echo"${ECHO_T}$ac_cv_member_struct_sockaddr_storage___ss_family">&6
9986+
iftest$ac_cv_member_struct_sockaddr_storage___ss_family = yes;then
9987+
9988+
cat>>confdefs.h<<_ACEOF
9989+
#define HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY 1
9990+
_ACEOF
9991+
9992+
98729993
fi
98739994
98749995
echo"$as_me:$LINENO: checking for struct addrinfo">&5

‎configure.in

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
dnl Process this file with autoconf to produce a configure script.
2-
dnl $Header: /cvsroot/pgsql/configure.in,v 1.266 2003/06/18 16:04:15 momjian Exp $
2+
dnl $Header: /cvsroot/pgsql/configure.in,v 1.267 2003/06/23 23:51:59 momjian Exp $
33
dnl
44
dnl Developers, please strive to achieve this order:
55
dnl
@@ -778,6 +778,7 @@ PGAC_STRUCT_TIMEZONE
778778
PGAC_UNION_SEMUN
779779
PGAC_STRUCT_SOCKADDR_UN
780780
PGAC_STRUCT_SOCKADDR_STORAGE
781+
PGAC_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
781782
PGAC_STRUCT_ADDRINFO
782783

783784
AC_CHECK_TYPES([struct cmsgcred, struct fcred, struct sockcred], [], [],

‎src/include/libpq/pqcomm.h

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
1010
* Portions Copyright (c) 1994, Regents of the University of California
1111
*
12-
* $Id: pqcomm.h,v 1.86 2003/06/12 07:36:51 momjian Exp $
12+
* $Id: pqcomm.h,v 1.87 2003/06/23 23:51:59 momjian Exp $
1313
*
1414
*-------------------------------------------------------------------------
1515
*/
@@ -65,6 +65,12 @@ struct sockaddr_storage {
6565
* _SS_MAXSIZE value minus size of ss_family
6666
* __ss_pad1, __ss_align fields is 112 */
6767
};
68+
#elif !defined(HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY)
69+
# ifdefHAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY
70+
# definess_family __ss_family
71+
# else
72+
# error struct sockaddr_storage does not provide an ss_family member
73+
# endif
6874
#endif
6975

7076
typedefstruct {

‎src/include/pg_config.h.in

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -423,6 +423,12 @@
423423
/* Define to 1 if the system has the type `struct sockaddr_storage'. */
424424
#undef HAVE_STRUCT_SOCKADDR_STORAGE
425425

426+
/* Define to 1 if `ss_family' is member of `struct sockaddr_storage'. */
427+
#undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
428+
429+
/* Define to 1 if `__ss_family' is member of `struct sockaddr_storage'. */
430+
#undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY
431+
426432
/* Define to 1 if the system has the type `struct sockaddr_un'. */
427433
#undef HAVE_STRUCT_SOCKADDR_UN
428434

‎src/port/getaddrinfo.c

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/port/getaddrinfo.c,v 1.8 2003/06/14 18:20:33 momjian Exp $
11+
* $Header: /cvsroot/pgsql/src/port/getaddrinfo.c,v 1.9 2003/06/23 23:52:00 momjian Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -220,7 +220,6 @@ getnameinfo(const struct sockaddr *sa, int salen,
220220
char*node,intnodelen,
221221
char*service,intservicelen,intflags)
222222
{
223-
sa_family_tfamily;
224223
intret=-1;
225224

226225
/* Invalid arguments. */
@@ -236,23 +235,22 @@ getnameinfo(const struct sockaddr *sa, int salen,
236235
returnEAI_FAIL;
237236
}
238237

239-
family=sa->sa_family;
240238
#ifdefHAVE_IPV6
241-
if (family==AF_INET6)
239+
if (sa->sa_family==AF_INET6)
242240
{
243241
returnEAI_FAMILY;
244242
}
245243
#endif
246244

247245
if (service)
248246
{
249-
if (family==AF_INET)
247+
if (sa->sa_family==AF_INET)
250248
{
251249
ret=snprintf(service,servicelen,"%d",
252250
ntohs(((structsockaddr_in*)sa)->sin_port));
253251
}
254252
#ifdefHAVE_UNIX_SOCKETS
255-
elseif (family==AF_UNIX)
253+
elseif (sa->sa_family==AF_UNIX)
256254
{
257255
ret=snprintf(service,servicelen,"%s",
258256
((structsockaddr_un*)sa)->sun_path);
@@ -266,14 +264,14 @@ getnameinfo(const struct sockaddr *sa, int salen,
266264

267265
if (node)
268266
{
269-
if (family==AF_INET)
267+
if (sa->sa_family==AF_INET)
270268
{
271269
char*p;
272270
p=inet_ntoa(((structsockaddr_in*)sa)->sin_addr);
273271
ret=snprintf(node,nodelen,"%s",p);
274272
}
275273
#ifdefHAVE_UNIX_SOCKETS
276-
elseif (family==AF_UNIX)
274+
elseif (sa->sa_family==AF_UNIX)
277275
{
278276
ret=snprintf(node,nodelen,"%s","localhost");
279277
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp