Index: src/include/libpq/pqcomm.h
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/libpq/pqcomm.h,v
retrieving revision 1.86
diff -c -c -r1.86 pqcomm.h
*** src/include/libpq/pqcomm.h	12 Jun 2003 07:36:51 -0000	1.86
--- src/include/libpq/pqcomm.h	16 Jun 2003 21:11:09 -0000
***************
*** 43,57 ****
  /*
   * Definitions used for sockaddr_storage structure paddings design.
   */
! #define	_SS_PAD1SIZE	(_SS_ALIGNSIZE - sizeof (sa_family_t))
! #define	_SS_PAD2SIZE	(_SS_MAXSIZE - (sizeof (sa_family_t) + \
  				_SS_PAD1SIZE + _SS_ALIGNSIZE))
  
  struct sockaddr_storage {
  #ifdef SALEN
      uint8_t	__ss_len;        /* address length */
  #endif
!     sa_family_t	ss_family;	/* address family */
  
      char	__ss_pad1[_SS_PAD1SIZE];
  		/* 6 byte pad, this is to make implementation
--- 43,60 ----
  /*
   * Definitions used for sockaddr_storage structure paddings design.
   */
! /* Some platforms don't have sa_family_t, so we compute it ourselves */
! #define SIZEOF_SOCKADDR_FAMILY		sizeof(((struct sockaddr *)0)->sa_family)
! 
! #define	_SS_PAD1SIZE	(_SS_ALIGNSIZE - SIZEOF_SOCKADDR_FAMILY)
! #define	_SS_PAD2SIZE	(_SS_MAXSIZE - (SIZEOF_SOCKADDR_FAMILY + \
  				_SS_PAD1SIZE + _SS_ALIGNSIZE))
  
  struct sockaddr_storage {
  #ifdef SALEN
      uint8_t	__ss_len;        /* address length */
  #endif
!     char dummy_sa_family[SIZEOF_SOCKADDR_FAMILY];
  
      char	__ss_pad1[_SS_PAD1SIZE];
  		/* 6 byte pad, this is to make implementation
