-/*\r
+/** @file\r
+ Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials are licensed and made available under\r
+ the terms and conditions of the BSD License that accompanies this distribution.\r
+ The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.\r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
* Copyright (C) 1995, 1996, 1997, 1998, and 1999 WIDE Project.\r
* All rights reserved.\r
*\r
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\r
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\r
* SUCH DAMAGE.\r
- */\r
+**/\r
\r
#ifndef HAVE_GETADDRINFO\r
\r
\r
#endif /* !HAVE_GETNAMEINFO */\r
\r
-#ifndef HAVE_ADDRINFO\r
-struct addrinfo {\r
- int ai_flags; /* AI_PASSIVE, AI_CANONNAME */\r
- int ai_family; /* PF_xxx */\r
- int ai_socktype; /* SOCK_xxx */\r
- int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */\r
- size_t ai_addrlen; /* length of ai_addr */\r
- char *ai_canonname; /* canonical name for hostname */\r
- struct sockaddr *ai_addr; /* binary address */\r
- struct addrinfo *ai_next; /* next structure in linked list */\r
-};\r
-#endif /* !HAVE_ADDRINFO */\r
-\r
-#ifndef HAVE_SOCKADDR_STORAGE\r
-/*\r
- * RFC 2553: protocol-independent placeholder for socket addresses\r
- */\r
-#define _SS_MAXSIZE 128\r
-#ifdef HAVE_LONG_LONG\r
-#define _SS_ALIGNSIZE (sizeof(PY_LONG_LONG))\r
-#else\r
-#define _SS_ALIGNSIZE (sizeof(double))\r
-#endif /* HAVE_LONG_LONG */\r
-#define _SS_PAD1SIZE (_SS_ALIGNSIZE - sizeof(u_char) * 2)\r
-#define _SS_PAD2SIZE (_SS_MAXSIZE - sizeof(u_char) * 2 - \\r
- _SS_PAD1SIZE - _SS_ALIGNSIZE)\r
-\r
-struct sockaddr_storage {\r
-#ifdef HAVE_SOCKADDR_SA_LEN\r
- unsigned char ss_len; /* address length */\r
- unsigned char ss_family; /* address family */\r
-#else\r
- unsigned short ss_family; /* address family */\r
-#endif /* HAVE_SOCKADDR_SA_LEN */\r
- char __ss_pad1[_SS_PAD1SIZE];\r
-#ifdef HAVE_LONG_LONG\r
- PY_LONG_LONG __ss_align; /* force desired structure storage alignment */\r
-#else\r
- double __ss_align; /* force desired structure storage alignment */\r
-#endif /* HAVE_LONG_LONG */\r
- char __ss_pad2[_SS_PAD2SIZE];\r
-};\r
-#endif /* !HAVE_SOCKADDR_STORAGE */\r
+#ifndef _SYS_SOCKET_H_\r
+ #ifndef HAVE_ADDRINFO\r
+ struct addrinfo {\r
+ int ai_flags; /* AI_PASSIVE, AI_CANONNAME */\r
+ int ai_family; /* PF_xxx */\r
+ int ai_socktype; /* SOCK_xxx */\r
+ int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */\r
+ size_t ai_addrlen; /* length of ai_addr */\r
+ char *ai_canonname; /* canonical name for hostname */\r
+ struct sockaddr *ai_addr; /* binary address */\r
+ struct addrinfo *ai_next; /* next structure in linked list */\r
+ };\r
+ #endif /* !HAVE_ADDRINFO */\r
+\r
+ #ifndef HAVE_SOCKADDR_STORAGE\r
+ /*\r
+ * RFC 2553: protocol-independent placeholder for socket addresses\r
+ */\r
+ #define _SS_MAXSIZE 128\r
+ #ifdef HAVE_LONG_LONG\r
+ #define _SS_ALIGNSIZE (sizeof(PY_LONG_LONG))\r
+ #else\r
+ #define _SS_ALIGNSIZE (sizeof(double))\r
+ #endif /* HAVE_LONG_LONG */\r
+ #define _SS_PAD1SIZE (_SS_ALIGNSIZE - sizeof(u_char) * 2)\r
+ #define _SS_PAD2SIZE (_SS_MAXSIZE - sizeof(u_char) * 2 - \\r
+ _SS_PAD1SIZE - _SS_ALIGNSIZE)\r
+\r
+ struct sockaddr_storage {\r
+ #ifdef HAVE_SOCKADDR_SA_LEN\r
+ unsigned char ss_len; /* address length */\r
+ unsigned char ss_family; /* address family */\r
+ #else\r
+ unsigned short ss_family; /* address family */\r
+ #endif /* HAVE_SOCKADDR_SA_LEN */\r
+ char __ss_pad1[_SS_PAD1SIZE];\r
+ #ifdef HAVE_LONG_LONG\r
+ PY_LONG_LONG __ss_align; /* force desired structure storage alignment */\r
+ #else\r
+ double __ss_align; /* force desired structure storage alignment */\r
+ #endif /* HAVE_LONG_LONG */\r
+ char __ss_pad2[_SS_PAD2SIZE];\r
+ };\r
+ #endif /* !HAVE_SOCKADDR_STORAGE */\r
+#endif /* _SYS_SOCKET_H_ */\r
\r
#ifdef __cplusplus\r
extern "C" {\r