1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef s_addr
8
9#ifdef __LP64__
10#pragma push_macro("u_long")
11#undef u_long
12#define u_long __ms_u_long
13#endif
14
15#include <_bsd_types.h>
16
17typedef struct in_addr {
18  union {
19    struct { u_char  s_b1, s_b2, s_b3, s_b4; } S_un_b;
20    struct { u_short s_w1, s_w2; } S_un_w;
21    u_long S_addr;
22  } S_un;
23} IN_ADDR, *PIN_ADDR, *LPIN_ADDR;
24
25#define s_addr	S_un.S_addr
26#define s_host	S_un.S_un_b.s_b2
27#define s_net	S_un.S_un_b.s_b1
28#define s_imp	S_un.S_un_w.s_w2
29#define s_impno	S_un.S_un_b.s_b4
30#define s_lh	S_un.S_un_b.s_b3
31
32#ifdef __LP64__
33#pragma pop_macro("u_long")
34#endif
35
36#endif /* s_addr */
37
38