Hex Artifact Content

Not logged in

Artifact 93c2ee9c88a504a9a9c795bbff2f9995ef542b82:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 20  ********\.*     
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 69 70 74 79 70 65            iptype
0070: 73 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  s.d             
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20    *.*           
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20              *.* 
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00f0: 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 50        Windows AP
0100: 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 20  I header module 
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0120: 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20        *.*       
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  *.*             
0180: 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20 66      Translated f
0190: 72 6f 6d 20 4d 69 6e 47 57 20 57 69 6e 64 6f 77  rom MinGW Window
01a0: 73 20 68 65 61 64 65 72 73 20 20 20 20 20 20 20  s headers       
01b0: 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20            *.*   
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01d0: 20 20 20 20 20 20 20 20 62 79 20 53 74 65 77 61          by Stewa
01e0: 72 74 20 47 6f 72 64 6f 6e 20 20 20 20 20 20 20  rt Gordon       
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20      *.*         
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a                *.
0250: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *               
0260: 20 20 20 20 20 20 20 20 50 6c 61 63 65 64 20 69          Placed i
0270: 6e 74 6f 20 70 75 62 6c 69 63 20 64 6f 6d 61 69  nto public domai
0280: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  n               
0290: 20 20 20 20 20 20 20 20 2a 0a 5c 2a 2a 2a 2a 2a          *.\*****
02a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02e0: 2a 2a 2f 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32  **/.module win32
02f0: 2e 69 70 74 79 70 65 73 3b 0a 0a 69 6d 70 6f 72  .iptypes;..impor
0300: 74 20 77 69 6e 33 32 2e 77 69 6e 64 65 66 3b 0a  t win32.windef;.
0310: 76 65 72 73 69 6f 6e 28 54 61 6e 67 6f 29 7b 0a  version(Tango){.
0320: 20 20 20 20 70 72 69 76 61 74 65 20 69 6d 70 6f      private impo
0330: 72 74 20 74 61 6e 67 6f 2e 73 74 64 63 2e 74 69  rt tango.stdc.ti
0340: 6d 65 3b 0a 7d 65 6c 73 65 7b 0a 20 20 20 20 70  me;.}else{.    p
0350: 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 73 74  rivate import st
0360: 64 2e 63 2e 74 69 6d 65 3b 0a 7d 0a 2f 2f 23 69  d.c.time;.}.//#i
0370: 6e 63 6c 75 64 65 20 3c 73 79 73 2f 74 79 70 65  nclude <sys/type
0380: 73 2e 68 3e 0a 0a 63 6f 6e 73 74 20 73 69 7a 65  s.h>..const size
0390: 5f 74 0a 09 44 45 46 41 55 4c 54 5f 4d 49 4e 49  _t..DEFAULT_MINI
03a0: 4d 55 4d 5f 45 4e 54 49 54 49 45 53 20 20 20 20  MUM_ENTITIES    
03b0: 20 20 20 3d 20 20 33 32 2c 0a 09 4d 41 58 5f 41     =  32,..MAX_A
03c0: 44 41 50 54 45 52 5f 41 44 44 52 45 53 53 5f 4c  DAPTER_ADDRESS_L
03d0: 45 4e 47 54 48 20 20 20 20 20 3d 20 20 20 38 2c  ENGTH     =   8,
03e0: 0a 09 4d 41 58 5f 41 44 41 50 54 45 52 5f 44 45  ..MAX_ADAPTER_DE
03f0: 53 43 52 49 50 54 49 4f 4e 5f 4c 45 4e 47 54 48  SCRIPTION_LENGTH
0400: 20 3d 20 31 32 38 2c 0a 09 4d 41 58 5f 41 44 41   = 128,..MAX_ADA
0410: 50 54 45 52 5f 4e 41 4d 45 5f 4c 45 4e 47 54 48  PTER_NAME_LENGTH
0420: 20 20 20 20 20 20 20 20 3d 20 32 35 36 2c 0a 09          = 256,..
0430: 4d 41 58 5f 44 4f 4d 41 49 4e 5f 4e 41 4d 45 5f  MAX_DOMAIN_NAME_
0440: 4c 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 3d  LEN            =
0450: 20 31 32 38 2c 0a 09 4d 41 58 5f 48 4f 53 54 4e   128,..MAX_HOSTN
0460: 41 4d 45 5f 4c 45 4e 20 20 20 20 20 20 20 20 20  AME_LEN         
0470: 20 20 20 20 20 20 3d 20 31 32 38 2c 0a 09 4d 41        = 128,..MA
0480: 58 5f 53 43 4f 50 45 5f 49 44 5f 4c 45 4e 20 20  X_SCOPE_ID_LEN  
0490: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 32               = 2
04a0: 35 36 3b 0a 0a 63 6f 6e 73 74 20 55 49 4e 54 0a  56;..const UINT.
04b0: 09 42 52 4f 41 44 43 41 53 54 5f 4e 4f 44 45 54  .BROADCAST_NODET
04c0: 59 50 45 20 20 20 20 3d 20 31 2c 0a 09 50 45 45  YPE    = 1,..PEE
04d0: 52 5f 54 4f 5f 50 45 45 52 5f 4e 4f 44 45 54 59  R_TO_PEER_NODETY
04e0: 50 45 20 3d 20 32 2c 0a 09 4d 49 58 45 44 5f 4e  PE = 2,..MIXED_N
04f0: 4f 44 45 54 59 50 45 20 20 20 20 20 20 20 20 3d  ODETYPE        =
0500: 20 34 2c 0a 09 48 59 42 52 49 44 5f 4e 4f 44 45   4,..HYBRID_NODE
0510: 54 59 50 45 20 20 20 20 20 20 20 3d 20 38 3b 0a  TYPE       = 8;.
0520: 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0a 09  .enum : UINT {..
0530: 49 46 5f 4f 54 48 45 52 5f 41 44 41 50 54 45 52  IF_OTHER_ADAPTER
0540: 54 59 50 45 2c 0a 09 49 46 5f 45 54 48 45 52 4e  TYPE,..IF_ETHERN
0550: 45 54 5f 41 44 41 50 54 45 52 54 59 50 45 2c 0a  ET_ADAPTERTYPE,.
0560: 09 49 46 5f 54 4f 4b 45 4e 5f 52 49 4e 47 5f 41  .IF_TOKEN_RING_A
0570: 44 41 50 54 45 52 54 59 50 45 2c 0a 09 49 46 5f  DAPTERTYPE,..IF_
0580: 46 44 44 49 5f 41 44 41 50 54 45 52 54 59 50 45  FDDI_ADAPTERTYPE
0590: 2c 0a 09 49 46 5f 50 50 50 5f 41 44 41 50 54 45  ,..IF_PPP_ADAPTE
05a0: 52 54 59 50 45 2c 0a 09 49 46 5f 4c 4f 4f 50 42  RTYPE,..IF_LOOPB
05b0: 41 43 4b 5f 41 44 41 50 54 45 52 54 59 50 45 20  ACK_ADAPTERTYPE 
05c0: 2f 2f 20 3d 20 35 0a 7d 0a 0a 73 74 72 75 63 74  // = 5.}..struct
05d0: 20 49 50 5f 41 44 44 52 45 53 53 5f 53 54 52 49   IP_ADDRESS_STRI
05e0: 4e 47 20 7b 0a 09 63 68 61 72 5b 31 36 5d 20 53  NG {..char[16] S
05f0: 74 72 69 6e 67 3b 0a 7d 0a 61 6c 69 61 73 20 49  tring;.}.alias I
0600: 50 5f 41 44 44 52 45 53 53 5f 53 54 52 49 4e 47  P_ADDRESS_STRING
0610: 20 49 50 5f 4d 41 53 4b 5f 53 54 52 49 4e 47 3b   IP_MASK_STRING;
0620: 0a 61 6c 69 61 73 20 49 50 5f 41 44 44 52 45 53  .alias IP_ADDRES
0630: 53 5f 53 54 52 49 4e 47 2a 20 50 49 50 5f 41 44  S_STRING* PIP_AD
0640: 44 52 45 53 53 5f 53 54 52 49 4e 47 2c 20 50 49  DRESS_STRING, PI
0650: 50 5f 4d 41 53 4b 5f 53 54 52 49 4e 47 3b 0a 0a  P_MASK_STRING;..
0660: 73 74 72 75 63 74 20 49 50 5f 41 44 44 52 5f 53  struct IP_ADDR_S
0670: 54 52 49 4e 47 20 7b 0a 09 49 50 5f 41 44 44 52  TRING {..IP_ADDR
0680: 5f 53 54 52 49 4e 47 2a 20 20 20 4e 65 78 74 3b  _STRING*   Next;
0690: 0a 09 49 50 5f 41 44 44 52 45 53 53 5f 53 54 52  ..IP_ADDRESS_STR
06a0: 49 4e 47 20 49 70 41 64 64 72 65 73 73 3b 0a 09  ING IpAddress;..
06b0: 49 50 5f 4d 41 53 4b 5f 53 54 52 49 4e 47 20 20  IP_MASK_STRING  
06c0: 20 20 49 70 4d 61 73 6b 3b 0a 09 44 57 4f 52 44    IpMask;..DWORD
06d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 43 6f 6e               Con
06e0: 74 65 78 74 3b 0a 7d 0a 61 6c 69 61 73 20 49 50  text;.}.alias IP
06f0: 5f 41 44 44 52 5f 53 54 52 49 4e 47 2a 20 50 49  _ADDR_STRING* PI
0700: 50 5f 41 44 44 52 5f 53 54 52 49 4e 47 3b 0a 0a  P_ADDR_STRING;..
0710: 73 74 72 75 63 74 20 49 50 5f 41 44 41 50 54 45  struct IP_ADAPTE
0720: 52 5f 49 4e 46 4f 20 7b 0a 09 49 50 5f 41 44 41  R_INFO {..IP_ADA
0730: 50 54 45 52 5f 49 4e 46 4f 2a 20 4e 65 78 74 3b  PTER_INFO* Next;
0740: 0a 09 44 57 4f 52 44 20 43 6f 6d 62 6f 49 6e 64  ..DWORD ComboInd
0750: 65 78 3b 0a 09 63 68 61 72 5b 4d 41 58 5f 41 44  ex;..char[MAX_AD
0760: 41 50 54 45 52 5f 4e 41 4d 45 5f 4c 45 4e 47 54  APTER_NAME_LENGT
0770: 48 2b 34 5d 20 20 20 20 20 20 20 20 41 64 61 70  H+4]        Adap
0780: 74 65 72 4e 61 6d 65 3b 0a 09 63 68 61 72 5b 4d  terName;..char[M
0790: 41 58 5f 41 44 41 50 54 45 52 5f 44 45 53 43 52  AX_ADAPTER_DESCR
07a0: 49 50 54 49 4f 4e 5f 4c 45 4e 47 54 48 2b 34 5d  IPTION_LENGTH+4]
07b0: 20 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 09 55   Description;..U
07c0: 49 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20  INT             
07d0: 41 64 64 72 65 73 73 4c 65 6e 67 74 68 3b 0a 09  AddressLength;..
07e0: 42 59 54 45 5b 4d 41 58 5f 41 44 41 50 54 45 52  BYTE[MAX_ADAPTER
07f0: 5f 41 44 44 52 45 53 53 5f 4c 45 4e 47 54 48 5d  _ADDRESS_LENGTH]
0800: 20 20 20 20 20 20 20 41 64 64 72 65 73 73 3b 0a         Address;.
0810: 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20  .DWORD          
0820: 20 20 49 6e 64 65 78 3b 0a 09 55 49 4e 54 20 20    Index;..UINT  
0830: 20 20 20 20 20 20 20 20 20 20 20 54 79 70 65 3b             Type;
0840: 0a 09 55 49 4e 54 20 20 20 20 20 20 20 20 20 20  ..UINT          
0850: 20 20 20 44 68 63 70 45 6e 61 62 6c 65 64 3b 0a     DhcpEnabled;.
0860: 09 50 49 50 5f 41 44 44 52 5f 53 54 52 49 4e 47  .PIP_ADDR_STRING
0870: 20 20 43 75 72 72 65 6e 74 49 70 41 64 64 72 65    CurrentIpAddre
0880: 73 73 3b 0a 09 49 50 5f 41 44 44 52 5f 53 54 52  ss;..IP_ADDR_STR
0890: 49 4e 47 20 20 20 49 70 41 64 64 72 65 73 73 4c  ING   IpAddressL
08a0: 69 73 74 3b 0a 09 49 50 5f 41 44 44 52 5f 53 54  ist;..IP_ADDR_ST
08b0: 52 49 4e 47 20 20 20 47 61 74 65 77 61 79 4c 69  RING   GatewayLi
08c0: 73 74 3b 0a 09 49 50 5f 41 44 44 52 5f 53 54 52  st;..IP_ADDR_STR
08d0: 49 4e 47 20 20 20 44 68 63 70 53 65 72 76 65 72  ING   DhcpServer
08e0: 3b 0a 09 42 4f 4f 4c 20 20 20 20 20 20 20 20 20  ;..BOOL         
08f0: 20 20 20 20 48 61 76 65 57 69 6e 73 3b 0a 09 49      HaveWins;..I
0900: 50 5f 41 44 44 52 5f 53 54 52 49 4e 47 20 20 20  P_ADDR_STRING   
0910: 50 72 69 6d 61 72 79 57 69 6e 73 53 65 72 76 65  PrimaryWinsServe
0920: 72 3b 0a 09 49 50 5f 41 44 44 52 5f 53 54 52 49  r;..IP_ADDR_STRI
0930: 4e 47 20 20 20 53 65 63 6f 6e 64 61 72 79 57 69  NG   SecondaryWi
0940: 6e 73 53 65 72 76 65 72 3b 0a 09 74 69 6d 65 5f  nsServer;..time_
0950: 74 20 20 20 20 20 20 20 20 20 20 20 4c 65 61 73  t           Leas
0960: 65 4f 62 74 61 69 6e 65 64 3b 0a 09 74 69 6d 65  eObtained;..time
0970: 5f 74 20 20 20 20 20 20 20 20 20 20 20 4c 65 61  _t           Lea
0980: 73 65 45 78 70 69 72 65 73 3b 0a 7d 0a 61 6c 69  seExpires;.}.ali
0990: 61 73 20 49 50 5f 41 44 41 50 54 45 52 5f 49 4e  as IP_ADAPTER_IN
09a0: 46 4f 2a 20 50 49 50 5f 41 44 41 50 54 45 52 5f  FO* PIP_ADAPTER_
09b0: 49 4e 46 4f 3b 0a 0a 73 74 72 75 63 74 20 49 50  INFO;..struct IP
09c0: 5f 50 45 52 5f 41 44 41 50 54 45 52 5f 49 4e 46  _PER_ADAPTER_INF
09d0: 4f 20 7b 0a 09 55 49 4e 54 20 41 75 74 6f 63 6f  O {..UINT Autoco
09e0: 6e 66 69 67 45 6e 61 62 6c 65 64 3b 0a 09 55 49  nfigEnabled;..UI
09f0: 4e 54 20 41 75 74 6f 63 6f 6e 66 69 67 41 63 74  NT AutoconfigAct
0a00: 69 76 65 3b 0a 09 50 49 50 5f 41 44 44 52 5f 53  ive;..PIP_ADDR_S
0a10: 54 52 49 4e 47 20 43 75 72 72 65 6e 74 44 6e 73  TRING CurrentDns
0a20: 53 65 72 76 65 72 3b 0a 09 49 50 5f 41 44 44 52  Server;..IP_ADDR
0a30: 5f 53 54 52 49 4e 47 20 44 6e 73 53 65 72 76 65  _STRING DnsServe
0a40: 72 4c 69 73 74 3b 0a 7d 0a 61 6c 69 61 73 20 49  rList;.}.alias I
0a50: 50 5f 50 45 52 5f 41 44 41 50 54 45 52 5f 49 4e  P_PER_ADAPTER_IN
0a60: 46 4f 2a 20 50 49 50 5f 50 45 52 5f 41 44 41 50  FO* PIP_PER_ADAP
0a70: 54 45 52 5f 49 4e 46 4f 3b 0a 0a 73 74 72 75 63  TER_INFO;..struc
0a80: 74 20 46 49 58 45 44 5f 49 4e 46 4f 20 7b 0a 09  t FIXED_INFO {..
0a90: 63 68 61 72 5b 4d 41 58 5f 48 4f 53 54 4e 41 4d  char[MAX_HOSTNAM
0aa0: 45 5f 4c 45 4e 2b 34 5d 20 20 20 20 48 6f 73 74  E_LEN+4]    Host
0ab0: 4e 61 6d 65 3b 0a 09 63 68 61 72 5b 4d 41 58 5f  Name;..char[MAX_
0ac0: 44 4f 4d 41 49 4e 5f 4e 41 4d 45 5f 4c 45 4e 2b  DOMAIN_NAME_LEN+
0ad0: 34 5d 20 44 6f 6d 61 69 6e 4e 61 6d 65 3b 0a 09  4] DomainName;..
0ae0: 50 49 50 5f 41 44 44 52 5f 53 54 52 49 4e 47 20  PIP_ADDR_STRING 
0af0: 20 20 20 20 20 20 20 20 20 20 20 20 43 75 72 72              Curr
0b00: 65 6e 74 44 6e 73 53 65 72 76 65 72 3b 0a 09 49  entDnsServer;..I
0b10: 50 5f 41 44 44 52 5f 53 54 52 49 4e 47 20 20 20  P_ADDR_STRING   
0b20: 20 20 20 20 20 20 20 20 20 20 20 44 6e 73 53 65             DnsSe
0b30: 72 76 65 72 4c 69 73 74 3b 0a 09 55 49 4e 54 20  rverList;..UINT 
0b40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0b50: 20 20 20 20 20 20 20 4e 6f 64 65 54 79 70 65 3b         NodeType;
0b60: 0a 09 63 68 61 72 5b 4d 41 58 5f 53 43 4f 50 45  ..char[MAX_SCOPE
0b70: 5f 49 44 5f 4c 45 4e 2b 34 5d 20 20 20 20 53 63  _ID_LEN+4]    Sc
0b80: 6f 70 65 49 64 3b 0a 09 55 49 4e 54 20 20 20 20  opeId;..UINT    
0b90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0ba0: 20 20 20 20 45 6e 61 62 6c 65 52 6f 75 74 69 6e      EnableRoutin
0bb0: 67 3b 0a 09 55 49 4e 54 20 20 20 20 20 20 20 20  g;..UINT        
0bc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0bd0: 45 6e 61 62 6c 65 50 72 6f 78 79 3b 0a 09 55 49  EnableProxy;..UI
0be0: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NT              
0bf0: 20 20 20 20 20 20 20 20 20 20 45 6e 61 62 6c 65            Enable
0c00: 44 6e 73 3b 0a 7d 0a 61 6c 69 61 73 20 46 49 58  Dns;.}.alias FIX
0c10: 45 44 5f 49 4e 46 4f 2a 20 50 46 49 58 45 44 5f  ED_INFO* PFIXED_
0c20: 49 4e 46 4f 3b 0a                                INFO;.