Hex Artifact Content

Not logged in

Artifact ed6eabc89b35f750cdee6dfa8cea7da09f6fdb61:


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 20 72 70 63 64 63             rpcdc
0070: 65 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  e.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 20 20 20 20 20 20 20 20                  
01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
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 50 6c                Pl
0220: 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c 69 63  aced into public
0230: 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 20   domain         
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a                *.
0250: 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  \***************
0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0290: 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 6d 6f 64 75 6c 65  ********/.module
02a0: 20 77 69 6e 33 32 2e 72 70 63 64 63 65 3b 0a 70   win32.rpcdce;.p
02b0: 72 61 67 6d 61 28 6c 69 62 2c 20 22 52 70 63 72  ragma(lib, "Rpcr
02c0: 74 34 2e 6c 69 62 22 29 3b 0a 0a 2f 2f 20 54 4f  t4.lib");..// TO
02d0: 44 4f 3a 20 49 20 74 68 69 6e 6b 20 4d 69 6e 47  DO: I think MinG
02e0: 57 20 67 6f 74 20 74 68 69 73 20 77 72 6f 6e 67  W got this wrong
02f0: 2e 20 52 50 43 5f 55 4e 49 43 4f 44 45 5f 53 55  . RPC_UNICODE_SU
0300: 50 50 4f 52 54 45 44 20 73 68 6f 75 6c 64 20 62  PPORTED should b
0310: 65 0a 2f 2f 20 72 65 70 6c 61 63 65 64 20 61 6c  e.// replaced al
0320: 69 61 73 65 73 20 66 6f 72 20 76 65 72 73 69 6f  iases for versio
0330: 6e 28 55 6e 69 63 6f 64 65 29 0a 0a 70 75 62 6c  n(Unicode)..publ
0340: 69 63 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e  ic import win32.
0350: 72 70 63 64 63 65 70 3b 0a 70 72 69 76 61 74 65  rpcdcep;.private
0360: 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 62 61   import win32.ba
0370: 73 65 74 79 70 73 2c 20 77 69 6e 33 32 2e 77 33  setyps, win32.w3
0380: 32 61 70 69 2c 20 77 69 6e 33 32 2e 77 69 6e 64  2api, win32.wind
0390: 65 66 3b 0a 0a 2f 2f 20 46 49 58 4d 45 3a 20 63  ef;..// FIXME: c
03a0: 6c 65 61 6e 20 75 70 20 57 69 6e 64 6f 77 73 20  lean up Windows 
03b0: 76 65 72 73 69 6f 6e 20 73 75 70 70 6f 72 74 0a  version support.
03c0: 0a 61 6c 69 61 73 20 55 55 49 44 20 75 75 69 64  .alias UUID uuid
03d0: 5f 74 3b 0a 61 6c 69 61 73 20 55 55 49 44 5f 56  _t;.alias UUID_V
03e0: 45 43 54 4f 52 20 75 75 69 64 5f 76 65 63 74 6f  ECTOR uuid_vecto
03f0: 72 5f 74 3b 0a 61 6c 69 61 73 20 76 6f 69 64 20  r_t;.alias void 
0400: 52 50 43 5f 4d 47 52 5f 45 50 56 3b 0a 0a 2f 2f  RPC_MGR_EPV;..//
0410: 20 66 6f 72 20 52 70 63 4d 67 6d 74 53 65 74 43   for RpcMgmtSetC
0420: 6f 6d 54 69 6d 65 6f 75 74 28 29 0a 65 6e 75 6d  omTimeout().enum
0430: 20 3a 20 75 69 6e 74 20 7b 0a 09 52 50 43 5f 43   : uint {..RPC_C
0440: 5f 42 49 4e 44 49 4e 47 5f 4d 49 4e 5f 54 49 4d  _BINDING_MIN_TIM
0450: 45 4f 55 54 20 20 20 20 20 20 3d 20 30 2c 0a 09  EOUT      = 0,..
0460: 52 50 43 5f 43 5f 42 49 4e 44 49 4e 47 5f 44 45  RPC_C_BINDING_DE
0470: 46 41 55 4c 54 5f 54 49 4d 45 4f 55 54 20 20 3d  FAULT_TIMEOUT  =
0480: 20 35 2c 0a 09 52 50 43 5f 43 5f 42 49 4e 44 49   5,..RPC_C_BINDI
0490: 4e 47 5f 4d 41 58 5f 54 49 4d 45 4f 55 54 20 20  NG_MAX_TIMEOUT  
04a0: 20 20 20 20 3d 20 39 2c 0a 09 52 50 43 5f 43 5f      = 9,..RPC_C_
04b0: 42 49 4e 44 49 4e 47 5f 49 4e 46 49 4e 49 54 45  BINDING_INFINITE
04c0: 5f 54 49 4d 45 4f 55 54 20 3d 20 31 30 0a 7d 0a  _TIMEOUT = 10.}.
04d0: 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 43 41 4e  .const RPC_C_CAN
04e0: 43 45 4c 5f 49 4e 46 49 4e 49 54 45 5f 54 49 4d  CEL_INFINITE_TIM
04f0: 45 4f 55 54 3d 20 2d 31 3b 0a 63 6f 6e 73 74 20  EOUT= -1;.const 
0500: 52 50 43 5f 43 5f 4c 49 53 54 45 4e 5f 4d 41 58  RPC_C_LISTEN_MAX
0510: 5f 43 41 4c 4c 53 5f 44 45 46 41 55 4c 54 3d 31  _CALLS_DEFAULT=1
0520: 32 33 34 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43  234;.const RPC_C
0530: 5f 50 52 4f 54 53 45 51 5f 4d 41 58 5f 52 45 51  _PROTSEQ_MAX_REQ
0540: 53 5f 44 45 46 41 55 4c 54 3d 31 30 3b 0a 63 6f  S_DEFAULT=10;.co
0550: 6e 73 74 20 52 50 43 5f 43 5f 42 49 4e 44 5f 54  nst RPC_C_BIND_T
0560: 4f 5f 41 4c 4c 5f 4e 49 43 53 3d 31 3b 0a 63 6f  O_ALL_NICS=1;.co
0570: 6e 73 74 20 52 50 43 5f 43 5f 55 53 45 5f 49 4e  nst RPC_C_USE_IN
0580: 54 45 52 4e 45 54 5f 50 4f 52 54 3d 31 3b 0a 63  TERNET_PORT=1;.c
0590: 6f 6e 73 74 20 52 50 43 5f 43 5f 55 53 45 5f 49  onst RPC_C_USE_I
05a0: 4e 54 52 41 4e 45 54 5f 50 4f 52 54 3d 32 3b 0a  NTRANET_PORT=2;.
05b0: 0a 2f 2f 20 66 6f 72 20 52 50 43 5f 53 54 41 54  .// for RPC_STAT
05c0: 53 5f 56 45 43 54 4f 52 2c 20 75 73 65 64 20 62  S_VECTOR, used b
05d0: 79 20 52 70 63 4d 67 6d 79 49 6e 71 53 74 61 74  y RpcMgmyInqStat
05e0: 73 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 0a  s.enum : uint {.
05f0: 09 52 50 43 5f 43 5f 53 54 41 54 53 5f 43 41 4c  .RPC_C_STATS_CAL
0600: 4c 53 5f 49 4e 20 20 3d 20 30 2c 0a 09 52 50 43  LS_IN  = 0,..RPC
0610: 5f 43 5f 53 54 41 54 53 5f 43 41 4c 4c 53 5f 4f  _C_STATS_CALLS_O
0620: 55 54 2c 0a 09 52 50 43 5f 43 5f 53 54 41 54 53  UT,..RPC_C_STATS
0630: 5f 50 4b 54 53 5f 49 4e 2c 0a 09 52 50 43 5f 43  _PKTS_IN,..RPC_C
0640: 5f 53 54 41 54 53 5f 50 4b 54 53 5f 4f 55 54 0a  _STATS_PKTS_OUT.
0650: 7d 0a 0a 63 6f 6e 73 74 20 52 50 43 5f 49 46 5f  }..const RPC_IF_
0660: 41 55 54 4f 4c 49 53 54 45 4e 3d 30 78 30 30 30  AUTOLISTEN=0x000
0670: 31 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 49 46 5f  1;.const RPC_IF_
0680: 4f 4c 45 3d 32 3b 0a 63 6f 6e 73 74 20 52 50 43  OLE=2;.const RPC
0690: 5f 43 5f 4d 47 4d 54 5f 49 4e 51 5f 49 46 5f 49  _C_MGMT_INQ_IF_I
06a0: 44 53 3d 30 3b 0a 63 6f 6e 73 74 20 52 50 43 5f  DS=0;.const RPC_
06b0: 43 5f 4d 47 4d 54 5f 49 4e 51 5f 50 52 49 4e 43  C_MGMT_INQ_PRINC
06c0: 5f 4e 41 4d 45 3d 31 3b 0a 63 6f 6e 73 74 20 52  _NAME=1;.const R
06d0: 50 43 5f 43 5f 4d 47 4d 54 5f 49 4e 51 5f 53 54  PC_C_MGMT_INQ_ST
06e0: 41 54 53 3d 32 3b 0a 63 6f 6e 73 74 20 52 50 43  ATS=2;.const RPC
06f0: 5f 43 5f 4d 47 4d 54 5f 49 53 5f 53 45 52 56 45  _C_MGMT_IS_SERVE
0700: 52 5f 4c 49 53 54 45 4e 3d 33 3b 0a 63 6f 6e 73  R_LISTEN=3;.cons
0710: 74 20 52 50 43 5f 43 5f 4d 47 4d 54 5f 53 54 4f  t RPC_C_MGMT_STO
0720: 50 5f 53 45 52 56 45 52 5f 4c 49 53 54 45 4e 3d  P_SERVER_LISTEN=
0730: 34 3b 0a 0a 2f 2f 20 49 6e 71 75 69 72 79 20 54  4;..// Inquiry T
0740: 79 70 65 20 66 6f 72 20 52 70 63 4d 67 6d 74 45  ype for RpcMgmtE
0750: 70 45 6c 74 49 6e 71 42 65 67 69 6e 28 29 0a 65  pEltInqBegin().e
0760: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 0a 09 52 50  num : uint {..RP
0770: 43 5f 43 5f 45 50 5f 41 4c 4c 5f 45 4c 54 53 20  C_C_EP_ALL_ELTS 
0780: 3d 20 30 2c 0a 09 52 50 43 5f 43 5f 45 50 5f 4d  = 0,..RPC_C_EP_M
0790: 41 54 43 48 5f 42 59 5f 49 46 2c 0a 09 52 50 43  ATCH_BY_IF,..RPC
07a0: 5f 43 5f 45 50 5f 4d 41 54 43 48 5f 42 59 5f 4f  _C_EP_MATCH_BY_O
07b0: 42 4a 2c 0a 09 52 50 43 5f 43 5f 45 50 5f 4d 41  BJ,..RPC_C_EP_MA
07c0: 54 43 48 5f 42 59 5f 42 4f 54 48 0a 7d 0a 0a 2f  TCH_BY_BOTH.}../
07d0: 2f 20 66 6f 72 20 52 70 63 4d 67 6d 74 45 70 45  / for RpcMgmtEpE
07e0: 6c 74 49 6e 71 4e 65 78 74 28 29 0a 65 6e 75 6d  ltInqNext().enum
07f0: 20 3a 20 75 69 6e 74 20 7b 0a 09 52 50 43 5f 43   : uint {..RPC_C
0800: 5f 56 45 52 53 5f 41 4c 4c 20 3d 20 31 2c 0a 09  _VERS_ALL = 1,..
0810: 52 50 43 5f 43 5f 56 45 52 53 5f 43 4f 4d 50 41  RPC_C_VERS_COMPA
0820: 54 49 42 4c 45 2c 0a 09 52 50 43 5f 43 5f 56 45  TIBLE,..RPC_C_VE
0830: 52 53 5f 45 58 41 43 54 2c 0a 09 52 50 43 5f 43  RS_EXACT,..RPC_C
0840: 5f 56 45 52 53 5f 4d 41 4a 4f 52 5f 4f 4e 4c 59  _VERS_MAJOR_ONLY
0850: 2c 0a 09 52 50 43 5f 43 5f 56 45 52 53 5f 55 50  ,..RPC_C_VERS_UP
0860: 54 4f 0a 7d 0a 0a 63 6f 6e 73 74 20 44 43 45 5f  TO.}..const DCE_
0870: 43 5f 45 52 52 4f 52 5f 53 54 52 49 4e 47 5f 4c  C_ERROR_STRING_L
0880: 45 4e 3d 32 35 36 3b 0a 63 6f 6e 73 74 20 52 50  EN=256;.const RP
0890: 43 5f 43 5f 50 41 52 4d 5f 4d 41 58 5f 50 41 43  C_C_PARM_MAX_PAC
08a0: 4b 45 54 5f 4c 45 4e 47 54 48 3d 31 3b 0a 63 6f  KET_LENGTH=1;.co
08b0: 6e 73 74 20 52 50 43 5f 43 5f 50 41 52 4d 5f 42  nst RPC_C_PARM_B
08c0: 55 46 46 45 52 5f 4c 45 4e 47 54 48 3d 32 3b 0a  UFFER_LENGTH=2;.
08d0: 63 6f 6e 73 74 20 52 50 43 5f 43 5f 41 55 54 48  const RPC_C_AUTH
08e0: 4e 5f 4c 45 56 45 4c 5f 44 45 46 41 55 4c 54 3d  N_LEVEL_DEFAULT=
08f0: 30 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 41  0;.const RPC_C_A
0900: 55 54 48 4e 5f 4c 45 56 45 4c 5f 4e 4f 4e 45 3d  UTHN_LEVEL_NONE=
0910: 31 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 41  1;.const RPC_C_A
0920: 55 54 48 4e 5f 4c 45 56 45 4c 5f 43 4f 4e 4e 45  UTHN_LEVEL_CONNE
0930: 43 54 3d 32 3b 0a 63 6f 6e 73 74 20 52 50 43 5f  CT=2;.const RPC_
0940: 43 5f 41 55 54 48 4e 5f 4c 45 56 45 4c 5f 43 41  C_AUTHN_LEVEL_CA
0950: 4c 4c 3d 33 3b 0a 63 6f 6e 73 74 20 52 50 43 5f  LL=3;.const RPC_
0960: 43 5f 41 55 54 48 4e 5f 4c 45 56 45 4c 5f 50 4b  C_AUTHN_LEVEL_PK
0970: 54 3d 34 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43  T=4;.const RPC_C
0980: 5f 41 55 54 48 4e 5f 4c 45 56 45 4c 5f 50 4b 54  _AUTHN_LEVEL_PKT
0990: 5f 49 4e 54 45 47 52 49 54 59 3d 35 3b 0a 63 6f  _INTEGRITY=5;.co
09a0: 6e 73 74 20 52 50 43 5f 43 5f 41 55 54 48 4e 5f  nst RPC_C_AUTHN_
09b0: 4c 45 56 45 4c 5f 50 4b 54 5f 50 52 49 56 41 43  LEVEL_PKT_PRIVAC
09c0: 59 3d 36 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43  Y=6;.const RPC_C
09d0: 5f 49 4d 50 5f 4c 45 56 45 4c 5f 41 4e 4f 4e 59  _IMP_LEVEL_ANONY
09e0: 4d 4f 55 53 3d 31 3b 0a 63 6f 6e 73 74 20 52 50  MOUS=1;.const RP
09f0: 43 5f 43 5f 49 4d 50 5f 4c 45 56 45 4c 5f 49 44  C_C_IMP_LEVEL_ID
0a00: 45 4e 54 49 46 59 3d 32 3b 0a 63 6f 6e 73 74 20  ENTIFY=2;.const 
0a10: 52 50 43 5f 43 5f 49 4d 50 5f 4c 45 56 45 4c 5f  RPC_C_IMP_LEVEL_
0a20: 49 4d 50 45 52 53 4f 4e 41 54 45 3d 33 3b 0a 63  IMPERSONATE=3;.c
0a30: 6f 6e 73 74 20 52 50 43 5f 43 5f 49 4d 50 5f 4c  onst RPC_C_IMP_L
0a40: 45 56 45 4c 5f 44 45 4c 45 47 41 54 45 3d 34 3b  EVEL_DELEGATE=4;
0a50: 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 51 4f 53  .const RPC_C_QOS
0a60: 5f 49 44 45 4e 54 49 54 59 5f 53 54 41 54 49 43  _IDENTITY_STATIC
0a70: 3d 30 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f  =0;.const RPC_C_
0a80: 51 4f 53 5f 49 44 45 4e 54 49 54 59 5f 44 59 4e  QOS_IDENTITY_DYN
0a90: 41 4d 49 43 3d 31 3b 0a 63 6f 6e 73 74 20 52 50  AMIC=1;.const RP
0aa0: 43 5f 43 5f 51 4f 53 5f 43 41 50 41 42 49 4c 49  C_C_QOS_CAPABILI
0ab0: 54 49 45 53 5f 44 45 46 41 55 4c 54 3d 30 3b 0a  TIES_DEFAULT=0;.
0ac0: 63 6f 6e 73 74 20 52 50 43 5f 43 5f 51 4f 53 5f  const RPC_C_QOS_
0ad0: 43 41 50 41 42 49 4c 49 54 49 45 53 5f 4d 55 54  CAPABILITIES_MUT
0ae0: 55 41 4c 5f 41 55 54 48 3d 31 3b 0a 0a 2f 2f 20  UAL_AUTH=1;..// 
0af0: 54 68 65 73 65 20 65 6e 75 6d 73 20 77 65 72 65  These enums were
0b00: 20 62 75 67 67 79 20 69 6e 20 4d 69 6e 47 57 20   buggy in MinGW 
0b10: 21 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 50 52  !.const RPC_C_PR
0b20: 4f 54 45 43 54 5f 4c 45 56 45 4c 5f 44 45 46 41  OTECT_LEVEL_DEFA
0b30: 55 4c 54 20 3d 20 52 50 43 5f 43 5f 41 55 54 48  ULT = RPC_C_AUTH
0b40: 4e 5f 4c 45 56 45 4c 5f 44 45 46 41 55 4c 54 3b  N_LEVEL_DEFAULT;
0b50: 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 50 52 4f  .const RPC_C_PRO
0b60: 54 45 43 54 5f 4c 45 56 45 4c 5f 4e 4f 4e 45 20  TECT_LEVEL_NONE 
0b70: 3d 20 52 50 43 5f 43 5f 41 55 54 48 4e 5f 4c 45  = RPC_C_AUTHN_LE
0b80: 56 45 4c 5f 4e 4f 4e 45 3b 0a 63 6f 6e 73 74 20  VEL_NONE;.const 
0b90: 52 50 43 5f 43 5f 50 52 4f 54 45 43 54 5f 4c 45  RPC_C_PROTECT_LE
0ba0: 56 45 4c 5f 43 4f 4e 4e 45 43 54 20 3d 20 52 50  VEL_CONNECT = RP
0bb0: 43 5f 43 5f 41 55 54 48 4e 5f 4c 45 56 45 4c 5f  C_C_AUTHN_LEVEL_
0bc0: 43 4f 4e 4e 45 43 54 3b 0a 63 6f 6e 73 74 20 52  CONNECT;.const R
0bd0: 50 43 5f 43 5f 50 52 4f 54 45 43 54 5f 4c 45 56  PC_C_PROTECT_LEV
0be0: 45 4c 5f 43 41 4c 4c 20 3d 20 52 50 43 5f 43 5f  EL_CALL = RPC_C_
0bf0: 41 55 54 48 4e 5f 4c 45 56 45 4c 5f 43 41 4c 4c  AUTHN_LEVEL_CALL
0c00: 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 50 52  ;.const RPC_C_PR
0c10: 4f 54 45 43 54 5f 4c 45 56 45 4c 5f 50 4b 54 20  OTECT_LEVEL_PKT 
0c20: 3d 20 52 50 43 5f 43 5f 41 55 54 48 4e 5f 4c 45  = RPC_C_AUTHN_LE
0c30: 56 45 4c 5f 50 4b 54 3b 0a 63 6f 6e 73 74 20 52  VEL_PKT;.const R
0c40: 50 43 5f 43 5f 50 52 4f 54 45 43 54 5f 4c 45 56  PC_C_PROTECT_LEV
0c50: 45 4c 5f 50 4b 54 5f 49 4e 54 45 47 52 49 54 59  EL_PKT_INTEGRITY
0c60: 20 3d 20 52 50 43 5f 43 5f 41 55 54 48 4e 5f 4c   = RPC_C_AUTHN_L
0c70: 45 56 45 4c 5f 50 4b 54 5f 49 4e 54 45 47 52 49  EVEL_PKT_INTEGRI
0c80: 54 59 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f  TY;.const RPC_C_
0c90: 50 52 4f 54 45 43 54 5f 4c 45 56 45 4c 5f 50 4b  PROTECT_LEVEL_PK
0ca0: 54 5f 50 52 49 56 41 43 59 20 3d 20 52 50 43 5f  T_PRIVACY = RPC_
0cb0: 43 5f 41 55 54 48 4e 5f 4c 45 56 45 4c 5f 50 4b  C_AUTHN_LEVEL_PK
0cc0: 54 5f 50 52 49 56 41 43 59 3b 0a 0a 63 6f 6e 73  T_PRIVACY;..cons
0cd0: 74 20 52 50 43 5f 43 5f 41 55 54 48 4e 5f 4e 4f  t RPC_C_AUTHN_NO
0ce0: 4e 45 3d 30 3b 0a 63 6f 6e 73 74 20 52 50 43 5f  NE=0;.const RPC_
0cf0: 43 5f 41 55 54 48 4e 5f 44 43 45 5f 50 52 49 56  C_AUTHN_DCE_PRIV
0d00: 41 54 45 3d 31 3b 0a 63 6f 6e 73 74 20 52 50 43  ATE=1;.const RPC
0d10: 5f 43 5f 41 55 54 48 4e 5f 44 43 45 5f 50 55 42  _C_AUTHN_DCE_PUB
0d20: 4c 49 43 3d 32 3b 0a 63 6f 6e 73 74 20 52 50 43  LIC=2;.const RPC
0d30: 5f 43 5f 41 55 54 48 4e 5f 44 45 43 5f 50 55 42  _C_AUTHN_DEC_PUB
0d40: 4c 49 43 3d 34 3b 0a 63 6f 6e 73 74 20 52 50 43  LIC=4;.const RPC
0d50: 5f 43 5f 41 55 54 48 4e 5f 57 49 4e 4e 54 3d 31  _C_AUTHN_WINNT=1
0d60: 30 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 41  0;.const RPC_C_A
0d70: 55 54 48 4e 5f 44 45 46 41 55 4c 54 3d 30 78 46  UTHN_DEFAULT=0xF
0d80: 46 46 46 46 46 46 46 3b 0a 2f 2f 63 6f 6e 73 74  FFFFFFF;.//const
0d90: 20 52 50 43 5f 43 5f 53 45 43 55 52 49 54 59 5f   RPC_C_SECURITY_
0da0: 51 4f 53 5f 56 45 52 53 49 4f 4e 3d 4c 3b 20 2f  QOS_VERSION=L; /
0db0: 2f 20 46 49 58 4d 45 28 4d 69 6e 47 57 29 3a 20  / FIXME(MinGW): 
0dc0: 54 68 69 73 20 69 73 20 6e 6f 6e 73 65 6e 73 65  This is nonsense
0dd0: 21 0a 63 6f 6e 73 74 20 53 45 43 5f 57 49 4e 4e  !.const SEC_WINN
0de0: 54 5f 41 55 54 48 5f 49 44 45 4e 54 49 54 59 5f  T_AUTH_IDENTITY_
0df0: 41 4e 53 49 3d 30 78 31 3b 0a 63 6f 6e 73 74 20  ANSI=0x1;.const 
0e00: 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f 49  SEC_WINNT_AUTH_I
0e10: 44 45 4e 54 49 54 59 5f 55 4e 49 43 4f 44 45 3d  DENTITY_UNICODE=
0e20: 30 78 32 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43  0x2;.const RPC_C
0e30: 5f 41 55 54 48 5a 5f 4e 4f 4e 45 3d 30 3b 0a 63  _AUTHZ_NONE=0;.c
0e40: 6f 6e 73 74 20 52 50 43 5f 43 5f 41 55 54 48 5a  onst RPC_C_AUTHZ
0e50: 5f 4e 41 4d 45 3d 31 3b 0a 63 6f 6e 73 74 20 52  _NAME=1;.const R
0e60: 50 43 5f 43 5f 41 55 54 48 5a 5f 44 43 45 3d 32  PC_C_AUTHZ_DCE=2
0e70: 3b 0a 63 6f 6e 73 74 20 52 50 43 5f 43 5f 41 55  ;.const RPC_C_AU
0e80: 54 48 5a 5f 44 45 46 41 55 4c 54 3d 30 78 46 46  THZ_DEFAULT=0xFF
0e90: 46 46 46 46 46 46 3b 0a 0a 61 6c 69 61 73 20 49  FFFFFF;..alias I
0ea0: 5f 52 50 43 5f 48 41 4e 44 4c 45 20 52 50 43 5f  _RPC_HANDLE RPC_
0eb0: 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 3b 0a  BINDING_HANDLE;.
0ec0: 61 6c 69 61 73 20 52 50 43 5f 42 49 4e 44 49 4e  alias RPC_BINDIN
0ed0: 47 5f 48 41 4e 44 4c 45 20 68 61 6e 64 6c 65 5f  G_HANDLE handle_
0ee0: 74 3b 0a 0a 73 74 72 75 63 74 20 52 50 43 5f 42  t;..struct RPC_B
0ef0: 49 4e 44 49 4e 47 5f 56 45 43 54 4f 52 20 7b 0a  INDING_VECTOR {.
0f00: 09 75 69 6e 74 20 43 6f 75 6e 74 3b 0a 09 52 50  .uint Count;..RP
0f10: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
0f20: 20 42 69 6e 64 69 6e 67 48 5b 31 5d 3b 0a 7d 0a   BindingH[1];.}.
0f30: 0a 61 6c 69 61 73 20 52 50 43 5f 42 49 4e 44 49  .alias RPC_BINDI
0f40: 4e 47 5f 48 41 4e 44 4c 45 20 72 70 63 5f 62 69  NG_HANDLE rpc_bi
0f50: 6e 64 69 6e 67 5f 68 61 6e 64 6c 65 5f 74 3b 0a  nding_handle_t;.
0f60: 61 6c 69 61 73 20 52 50 43 5f 42 49 4e 44 49 4e  alias RPC_BINDIN
0f70: 47 5f 56 45 43 54 4f 52 20 72 70 63 5f 62 69 6e  G_VECTOR rpc_bin
0f80: 64 69 6e 67 5f 76 65 63 74 6f 72 5f 74 3b 0a 0a  ding_vector_t;..
0f90: 0a 73 74 72 75 63 74 20 55 55 49 44 5f 56 45 43  .struct UUID_VEC
0fa0: 54 4f 52 20 7b 0a 09 75 69 6e 74 20 43 6f 75 6e  TOR {..uint Coun
0fb0: 74 3b 0a 09 55 55 49 44 2a 20 55 75 69 64 5b 31  t;..UUID* Uuid[1
0fc0: 5d 3b 0a 7d 0a 0a 61 6c 69 61 73 20 76 6f 69 64  ];.}..alias void
0fd0: 2a 20 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 3b  * RPC_IF_HANDLE;
0fe0: 0a 0a 73 74 72 75 63 74 20 52 50 43 5f 49 46 5f  ..struct RPC_IF_
0ff0: 49 44 20 7b 0a 09 55 55 49 44 20 55 75 69 64 3b  ID {..UUID Uuid;
1000: 0a 09 75 73 68 6f 72 74 20 56 65 72 73 4d 61 6a  ..ushort VersMaj
1010: 6f 72 3b 0a 09 75 73 68 6f 72 74 20 56 65 72 73  or;..ushort Vers
1020: 4d 69 6e 6f 72 3b 0a 7d 0a 0a 73 74 72 75 63 74  Minor;.}..struct
1030: 20 52 50 43 5f 50 4f 4c 49 43 59 20 7b 0a 09 75   RPC_POLICY {..u
1040: 69 6e 74 20 4c 65 6e 67 74 68 3b 0a 09 75 69 6e  int Length;..uin
1050: 74 20 45 6e 64 70 6f 69 6e 74 46 6c 61 67 73 3b  t EndpointFlags;
1060: 0a 09 75 69 6e 74 20 4e 49 43 46 6c 61 67 73 3b  ..uint NICFlags;
1070: 0a 7d 0a 61 6c 69 61 73 20 52 50 43 5f 50 4f 4c  .}.alias RPC_POL
1080: 49 43 59 2a 20 50 52 50 43 5f 50 4f 4c 49 43 59  ICY* PRPC_POLICY
1090: 3b 0a 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f  ;..extern (Windo
10a0: 77 73 29 20 7b 0a 09 61 6c 69 61 73 20 76 6f 69  ws) {..alias voi
10b0: 64 20 66 75 6e 63 74 69 6f 6e 28 55 55 49 44 2a  d function(UUID*
10c0: 2c 20 55 55 49 44 2a 2c 20 52 50 43 5f 53 54 41  , UUID*, RPC_STA
10d0: 54 55 53 2a 29 20 52 50 43 5f 4f 42 4a 45 43 54  TUS*) RPC_OBJECT
10e0: 5f 49 4e 51 5f 46 4e 3b 0a 09 61 6c 69 61 73 20  _INQ_FN;..alias 
10f0: 52 50 43 5f 53 54 41 54 55 53 20 66 75 6e 63 74  RPC_STATUS funct
1100: 69 6f 6e 28 52 50 43 5f 49 46 5f 48 41 4e 44 4c  ion(RPC_IF_HANDL
1110: 45 2c 20 76 6f 69 64 2a 29 20 52 50 43 5f 49 46  E, void*) RPC_IF
1120: 5f 43 41 4c 4c 42 41 43 4b 5f 46 4e 3b 0a 7d 0a  _CALLBACK_FN;.}.
1130: 0a 73 74 72 75 63 74 20 52 50 43 5f 53 54 41 54  .struct RPC_STAT
1140: 53 5f 56 45 43 54 4f 52 20 7b 0a 09 75 69 6e 74  S_VECTOR {..uint
1150: 20 20 20 20 43 6f 75 6e 74 3b 0a 09 75 69 6e 74      Count;..uint
1160: 5b 31 5d 20 53 74 61 74 73 3b 0a 7d 0a 0a 73 74  [1] Stats;.}..st
1170: 72 75 63 74 20 52 50 43 5f 49 46 5f 49 44 5f 56  ruct RPC_IF_ID_V
1180: 45 43 54 4f 52 20 7b 0a 09 75 69 6e 74 20 20 20  ECTOR {..uint   
1190: 20 20 20 20 20 20 20 43 6f 75 6e 74 3b 0a 09 52         Count;..R
11a0: 50 43 5f 49 46 5f 49 44 2a 5b 31 5d 20 49 66 49  PC_IF_ID*[1] IfI
11b0: 64 3b 0a 7d 0a 61 6c 69 61 73 20 48 41 4e 44 4c  d;.}.alias HANDL
11c0: 45 20 52 50 43 5f 41 55 54 48 5f 49 44 45 4e 54  E RPC_AUTH_IDENT
11d0: 49 54 59 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f  ITY_HANDLE, RPC_
11e0: 41 55 54 48 5a 5f 48 41 4e 44 4c 45 3b 0a 0a 73  AUTHZ_HANDLE;..s
11f0: 74 72 75 63 74 20 52 50 43 5f 53 45 43 55 52 49  truct RPC_SECURI
1200: 54 59 5f 51 4f 53 20 7b 0a 09 75 69 6e 74 20 56  TY_QOS {..uint V
1210: 65 72 73 69 6f 6e 3b 0a 09 75 69 6e 74 20 43 61  ersion;..uint Ca
1220: 70 61 62 69 6c 69 74 69 65 73 3b 0a 09 75 69 6e  pabilities;..uin
1230: 74 20 49 64 65 6e 74 69 74 79 54 72 61 63 6b 69  t IdentityTracki
1240: 6e 67 3b 0a 09 75 69 6e 74 20 49 6d 70 65 72 73  ng;..uint Impers
1250: 6f 6e 61 74 69 6f 6e 54 79 70 65 3b 0a 7d 0a 61  onationType;.}.a
1260: 6c 69 61 73 20 52 50 43 5f 53 45 43 55 52 49 54  lias RPC_SECURIT
1270: 59 5f 51 4f 53 2a 20 50 52 50 43 5f 53 45 43 55  Y_QOS* PRPC_SECU
1280: 52 49 54 59 5f 51 4f 53 3b 0a 0a 73 74 72 75 63  RITY_QOS;..struc
1290: 74 20 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54 48  t SEC_WINNT_AUTH
12a0: 5f 49 44 45 4e 54 49 54 59 5f 57 20 7b 0a 09 75  _IDENTITY_W {..u
12b0: 73 68 6f 72 74 2a 20 55 73 65 72 3b 0a 09 75 69  short* User;..ui
12c0: 6e 74 20 55 73 65 72 4c 65 6e 67 74 68 3b 0a 09  nt UserLength;..
12d0: 75 73 68 6f 72 74 2a 20 44 6f 6d 61 69 6e 3b 0a  ushort* Domain;.
12e0: 09 75 69 6e 74 20 44 6f 6d 61 69 6e 4c 65 6e 67  .uint DomainLeng
12f0: 74 68 3b 0a 09 75 73 68 6f 72 74 2a 20 50 61 73  th;..ushort* Pas
1300: 73 77 6f 72 64 3b 0a 09 75 69 6e 74 20 50 61 73  sword;..uint Pas
1310: 73 77 6f 72 64 4c 65 6e 67 74 68 3b 0a 09 75 69  swordLength;..ui
1320: 6e 74 20 46 6c 61 67 73 3b 0a 7d 0a 61 6c 69 61  nt Flags;.}.alia
1330: 73 20 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54 48  s SEC_WINNT_AUTH
1340: 5f 49 44 45 4e 54 49 54 59 5f 57 2a 20 50 53 45  _IDENTITY_W* PSE
1350: 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f 49 44 45  C_WINNT_AUTH_IDE
1360: 4e 54 49 54 59 5f 57 3b 0a 0a 73 74 72 75 63 74  NTITY_W;..struct
1370: 20 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f   SEC_WINNT_AUTH_
1380: 49 44 45 4e 54 49 54 59 5f 41 20 7b 0a 09 75 62  IDENTITY_A {..ub
1390: 79 74 65 2a 20 55 73 65 72 3b 0a 09 75 69 6e 74  yte* User;..uint
13a0: 20 55 73 65 72 4c 65 6e 67 74 68 3b 0a 09 75 62   UserLength;..ub
13b0: 79 74 65 2a 20 44 6f 6d 61 69 6e 3b 0a 09 75 69  yte* Domain;..ui
13c0: 6e 74 20 44 6f 6d 61 69 6e 4c 65 6e 67 74 68 3b  nt DomainLength;
13d0: 0a 09 75 62 79 74 65 2a 20 50 61 73 73 77 6f 72  ..ubyte* Passwor
13e0: 64 3b 0a 09 75 69 6e 74 20 50 61 73 73 77 6f 72  d;..uint Passwor
13f0: 64 4c 65 6e 67 74 68 3b 0a 09 75 69 6e 74 20 46  dLength;..uint F
1400: 6c 61 67 73 3b 0a 7d 0a 61 6c 69 61 73 20 53 45  lags;.}.alias SE
1410: 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f 49 44 45  C_WINNT_AUTH_IDE
1420: 4e 54 49 54 59 5f 41 2a 20 50 53 45 43 5f 57 49  NTITY_A* PSEC_WI
1430: 4e 4e 54 5f 41 55 54 48 5f 49 44 45 4e 54 49 54  NNT_AUTH_IDENTIT
1440: 59 5f 41 3b 0a 0a 73 74 72 75 63 74 20 52 50 43  Y_A;..struct RPC
1450: 5f 43 4c 49 45 4e 54 5f 49 4e 46 4f 52 4d 41 54  _CLIENT_INFORMAT
1460: 49 4f 4e 31 20 7b 0a 09 75 62 79 74 65 2a 20 55  ION1 {..ubyte* U
1470: 73 65 72 4e 61 6d 65 3b 0a 09 75 62 79 74 65 2a  serName;..ubyte*
1480: 20 43 6f 6d 70 75 74 65 72 4e 61 6d 65 3b 0a 09   ComputerName;..
1490: 75 73 68 6f 72 74 20 50 72 69 76 69 6c 65 67 65  ushort Privilege
14a0: 3b 0a 09 75 69 6e 74 20 41 75 74 68 46 6c 61 67  ;..uint AuthFlag
14b0: 73 3b 0a 7d 0a 61 6c 69 61 73 20 52 50 43 5f 43  s;.}.alias RPC_C
14c0: 4c 49 45 4e 54 5f 49 4e 46 4f 52 4d 41 54 49 4f  LIENT_INFORMATIO
14d0: 4e 31 2a 20 50 52 50 43 5f 43 4c 49 45 4e 54 5f  N1* PRPC_CLIENT_
14e0: 49 4e 46 4f 52 4d 41 54 49 4f 4e 31 3b 0a 61 6c  INFORMATION1;.al
14f0: 69 61 73 20 49 5f 52 50 43 5f 48 41 4e 44 4c 45  ias I_RPC_HANDLE
1500: 2a 20 52 50 43 5f 45 50 5f 49 4e 51 5f 48 41 4e  * RPC_EP_INQ_HAN
1510: 44 4c 45 3b 0a 65 78 74 65 72 6e 20 28 57 69 6e  DLE;.extern (Win
1520: 64 6f 77 73 29 20 7b 0a 09 61 6c 69 61 73 20 69  dows) {..alias i
1530: 6e 74 20 66 75 6e 63 74 69 6f 6e 28 52 50 43 5f  nt function(RPC_
1540: 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20  BINDING_HANDLE, 
1550: 75 69 6e 74 2c 20 52 50 43 5f 53 54 41 54 55 53  uint, RPC_STATUS
1560: 2a 29 20 52 50 43 5f 4d 47 4d 54 5f 41 55 54 48  *) RPC_MGMT_AUTH
1570: 4f 52 49 5a 41 54 49 4f 4e 5f 46 4e 3b 0a 7d 0a  ORIZATION_FN;.}.
1580: 0a 73 74 61 74 69 63 20 69 66 28 5f 57 49 4e 33  .static if(_WIN3
1590: 32 5f 57 49 4e 4e 54 5f 4f 4e 4c 59 29 20 7b 0a  2_WINNT_ONLY) {.
15a0: 0a 09 73 74 72 75 63 74 20 52 50 43 5f 50 52 4f  ..struct RPC_PRO
15b0: 54 53 45 51 5f 56 45 43 54 4f 52 41 20 7b 0a 09  TSEQ_VECTORA {..
15c0: 09 75 69 6e 74 20 43 6f 75 6e 74 3b 0a 09 09 75  .uint Count;...u
15d0: 62 79 74 65 2a 5b 31 5d 20 50 72 6f 74 73 65 71  byte*[1] Protseq
15e0: 3b 0a 09 7d 0a 0a 09 73 74 72 75 63 74 20 52 50  ;..}...struct RP
15f0: 43 5f 50 52 4f 54 53 45 51 5f 56 45 43 54 4f 52  C_PROTSEQ_VECTOR
1600: 57 20 7b 0a 09 09 75 69 6e 74 20 43 6f 75 6e 74  W {...uint Count
1610: 3b 0a 09 09 75 73 68 6f 72 74 2a 5b 31 5d 20 50  ;...ushort*[1] P
1620: 72 6f 74 73 65 71 3b 0a 09 7d 0a 0a 09 65 78 74  rotseq;..}...ext
1630: 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 20 7b 0a  ern (Windows) {.
1640: 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ..RPC_STATUS Rpc
1650: 42 69 6e 64 69 6e 67 46 72 6f 6d 53 74 72 69 6e  BindingFromStrin
1660: 67 42 69 6e 64 69 6e 67 41 28 63 68 61 72 2a 2c  gBindingA(char*,
1670: 20 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e   RPC_BINDING_HAN
1680: 44 4c 45 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41  DLE*);...RPC_STA
1690: 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67 46 72  TUS RpcBindingFr
16a0: 6f 6d 53 74 72 69 6e 67 42 69 6e 64 69 6e 67 57  omStringBindingW
16b0: 28 77 63 68 61 72 2a 2c 20 52 50 43 5f 42 49 4e  (wchar*, RPC_BIN
16c0: 44 49 4e 47 5f 48 41 4e 44 4c 45 2a 29 3b 0a 09  DING_HANDLE*);..
16d0: 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 42  .RPC_STATUS RpcB
16e0: 69 6e 64 69 6e 67 54 6f 53 74 72 69 6e 67 42 69  indingToStringBi
16f0: 6e 64 69 6e 67 41 28 52 50 43 5f 42 49 4e 44 49  ndingA(RPC_BINDI
1700: 4e 47 5f 48 41 4e 44 4c 45 2c 20 63 68 61 72 2a  NG_HANDLE, char*
1710: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
1720: 20 52 70 63 42 69 6e 64 69 6e 67 54 6f 53 74 72   RpcBindingToStr
1730: 69 6e 67 42 69 6e 64 69 6e 67 57 28 52 50 43 5f  ingBindingW(RPC_
1740: 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20  BINDING_HANDLE, 
1750: 77 63 68 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f  wchar**);...RPC_
1760: 53 54 41 54 55 53 20 52 70 63 53 74 72 69 6e 67  STATUS RpcString
1770: 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 65 41 28  BindingComposeA(
1780: 63 68 61 72 2a 2c 20 63 68 61 72 2a 2c 20 63 68  char*, char*, ch
1790: 61 72 2a 2c 20 63 68 61 72 2a 2c 20 63 68 61 72  ar*, char*, char
17a0: 2a 2c 20 63 68 61 72 2a 2a 29 3b 0a 09 09 52 50  *, char**);...RP
17b0: 43 5f 53 54 41 54 55 53 20 52 70 63 53 74 72 69  C_STATUS RpcStri
17c0: 6e 67 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 65  ngBindingCompose
17d0: 57 28 77 63 68 61 72 2a 2c 20 77 63 68 61 72 2a  W(wchar*, wchar*
17e0: 2c 20 77 63 68 61 72 2a 2c 20 77 63 68 61 72 2a  , wchar*, wchar*
17f0: 2c 20 77 63 68 61 72 2a 2c 20 77 63 68 61 72 2a  , wchar*, wchar*
1800: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
1810: 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64 69 6e   RpcStringBindin
1820: 67 50 61 72 73 65 41 28 63 68 61 72 2a 2c 20 63  gParseA(char*, c
1830: 68 61 72 2a 2a 2c 20 63 68 61 72 2a 2a 2c 20 63  har**, char**, c
1840: 68 61 72 2a 2a 2c 20 63 68 61 72 2a 2a 2c 20 63  har**, char**, c
1850: 68 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54  har**);...RPC_ST
1860: 41 54 55 53 20 52 70 63 53 74 72 69 6e 67 42 69  ATUS RpcStringBi
1870: 6e 64 69 6e 67 50 61 72 73 65 57 28 77 63 68 61  ndingParseW(wcha
1880: 72 2a 2c 20 77 63 68 61 72 2a 2a 2c 20 77 63 68  r*, wchar**, wch
1890: 61 72 2a 2a 2c 20 77 63 68 61 72 2a 2a 2c 20 77  ar**, wchar**, w
18a0: 63 68 61 72 2a 2a 2c 20 77 63 68 61 72 2a 2a 29  char**, wchar**)
18b0: 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52  ;...RPC_STATUS R
18c0: 70 63 53 74 72 69 6e 67 46 72 65 65 41 28 63 68  pcStringFreeA(ch
18d0: 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41  ar**);...RPC_STA
18e0: 54 55 53 20 52 70 63 53 74 72 69 6e 67 46 72 65  TUS RpcStringFre
18f0: 65 57 28 77 63 68 61 72 2a 2a 29 3b 0a 09 09 52  eW(wchar**);...R
1900: 50 43 5f 53 54 41 54 55 53 20 52 70 63 4e 65 74  PC_STATUS RpcNet
1910: 77 6f 72 6b 49 73 50 72 6f 74 73 65 71 56 61 6c  workIsProtseqVal
1920: 69 64 41 28 63 68 61 72 2a 29 3b 0a 09 09 52 50  idA(char*);...RP
1930: 43 5f 53 54 41 54 55 53 20 52 70 63 4e 65 74 77  C_STATUS RpcNetw
1940: 6f 72 6b 49 73 50 72 6f 74 73 65 71 56 61 6c 69  orkIsProtseqVali
1950: 64 57 28 77 63 68 61 72 2a 29 3b 0a 09 09 52 50  dW(wchar*);...RP
1960: 43 5f 53 54 41 54 55 53 20 52 70 63 4e 65 74 77  C_STATUS RpcNetw
1970: 6f 72 6b 49 6e 71 50 72 6f 74 73 65 71 73 41 28  orkInqProtseqsA(
1980: 52 50 43 5f 50 52 4f 54 53 45 51 5f 56 45 43 54  RPC_PROTSEQ_VECT
1990: 4f 52 41 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54  ORA**);...RPC_ST
19a0: 41 54 55 53 20 52 70 63 4e 65 74 77 6f 72 6b 49  ATUS RpcNetworkI
19b0: 6e 71 50 72 6f 74 73 65 71 73 57 28 52 50 43 5f  nqProtseqsW(RPC_
19c0: 50 52 4f 54 53 45 51 5f 56 45 43 54 4f 52 57 2a  PROTSEQ_VECTORW*
19d0: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
19e0: 20 52 70 63 50 72 6f 74 73 65 71 56 65 63 74 6f   RpcProtseqVecto
19f0: 72 46 72 65 65 41 28 52 50 43 5f 50 52 4f 54 53  rFreeA(RPC_PROTS
1a00: 45 51 5f 56 45 43 54 4f 52 41 2a 2a 29 3b 0a 09  EQ_VECTORA**);..
1a10: 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 50  .RPC_STATUS RpcP
1a20: 72 6f 74 73 65 71 56 65 63 74 6f 72 46 72 65 65  rotseqVectorFree
1a30: 57 28 52 50 43 5f 50 52 4f 54 53 45 51 5f 56 45  W(RPC_PROTSEQ_VE
1a40: 43 54 4f 52 57 2a 2a 29 3b 0a 09 09 52 50 43 5f  CTORW**);...RPC_
1a50: 53 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72  STATUS RpcServer
1a60: 55 73 65 50 72 6f 74 73 65 71 41 28 63 68 61 72  UseProtseqA(char
1a70: 2a 2c 20 75 69 6e 74 2c 20 76 6f 69 64 2a 29 3b  *, uint, void*);
1a80: 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ...RPC_STATUS Rp
1a90: 63 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65  cServerUseProtse
1aa0: 71 57 28 77 63 68 61 72 2a 2c 20 75 69 6e 74 2c  qW(wchar*, uint,
1ab0: 20 76 6f 69 64 2a 29 3b 0a 09 09 52 50 43 5f 53   void*);...RPC_S
1ac0: 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72 55  TATUS RpcServerU
1ad0: 73 65 50 72 6f 74 73 65 71 45 78 41 28 63 68 61  seProtseqExA(cha
1ae0: 72 2a 2c 20 75 69 6e 74 20 4d 61 78 43 61 6c 6c  r*, uint MaxCall
1af0: 73 2c 20 76 6f 69 64 2a 2c 20 50 52 50 43 5f 50  s, void*, PRPC_P
1b00: 4f 4c 49 43 59 29 3b 0a 09 09 52 50 43 5f 53 54  OLICY);...RPC_ST
1b10: 41 54 55 53 20 52 70 63 53 65 72 76 65 72 55 73  ATUS RpcServerUs
1b20: 65 50 72 6f 74 73 65 71 45 78 57 28 77 63 68 61  eProtseqExW(wcha
1b30: 72 2a 2c 20 75 69 6e 74 2c 20 76 6f 69 64 2a 2c  r*, uint, void*,
1b40: 20 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b 0a 09   PRPC_POLICY);..
1b50: 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53  .RPC_STATUS RpcS
1b60: 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45  erverUseProtseqE
1b70: 70 41 28 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20  pA(char*, uint, 
1b80: 63 68 61 72 2a 2c 20 76 6f 69 64 2a 29 3b 0a 09  char*, void*);..
1b90: 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53  .RPC_STATUS RpcS
1ba0: 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45  erverUseProtseqE
1bb0: 70 45 78 41 28 63 68 61 72 2a 2c 20 75 69 6e 74  pExA(char*, uint
1bc0: 2c 20 63 68 61 72 2a 2c 20 76 6f 69 64 2a 2c 20  , char*, void*, 
1bd0: 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b 0a 09 09  PRPC_POLICY);...
1be0: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53 65  RPC_STATUS RpcSe
1bf0: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45 70  rverUseProtseqEp
1c00: 57 28 77 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20  W(wchar*, uint, 
1c10: 77 63 68 61 72 2a 2c 20 76 6f 69 64 2a 29 3b 0a  wchar*, void*);.
1c20: 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ..RPC_STATUS Rpc
1c30: 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71  ServerUseProtseq
1c40: 45 70 45 78 57 28 77 63 68 61 72 2a 2c 20 75 69  EpExW(wchar*, ui
1c50: 6e 74 2c 20 77 63 68 61 72 2a 2c 20 76 6f 69 64  nt, wchar*, void
1c60: 2a 2c 20 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b  *, PRPC_POLICY);
1c70: 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ...RPC_STATUS Rp
1c80: 63 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65  cServerUseProtse
1c90: 71 49 66 41 28 63 68 61 72 2a 2c 20 75 69 6e 74  qIfA(char*, uint
1ca0: 2c 20 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c  , RPC_IF_HANDLE,
1cb0: 20 76 6f 69 64 2a 29 3b 0a 09 09 52 50 43 5f 53   void*);...RPC_S
1cc0: 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72 55  TATUS RpcServerU
1cd0: 73 65 50 72 6f 74 73 65 71 49 66 45 78 41 28 63  seProtseqIfExA(c
1ce0: 68 61 72 2a 2c 20 75 69 6e 74 2c 20 52 50 43 5f  har*, uint, RPC_
1cf0: 49 46 5f 48 41 4e 44 4c 45 2c 20 76 6f 69 64 2a  IF_HANDLE, void*
1d00: 2c 20 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b 0a  , PRPC_POLICY);.
1d10: 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ..RPC_STATUS Rpc
1d20: 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71  ServerUseProtseq
1d30: 49 66 57 28 77 63 68 61 72 2a 2c 20 75 69 6e 74  IfW(wchar*, uint
1d40: 2c 20 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c  , RPC_IF_HANDLE,
1d50: 20 76 6f 69 64 2a 29 3b 0a 09 09 52 50 43 5f 53   void*);...RPC_S
1d60: 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72 55  TATUS RpcServerU
1d70: 73 65 50 72 6f 74 73 65 71 49 66 45 78 57 28 77  seProtseqIfExW(w
1d80: 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 52 50 43  char*, uint, RPC
1d90: 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 76 6f 69 64  _IF_HANDLE, void
1da0: 2a 2c 20 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b  *, PRPC_POLICY);
1db0: 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ...RPC_STATUS Rp
1dc0: 63 4d 67 6d 74 49 6e 71 53 65 72 76 65 72 50 72  cMgmtInqServerPr
1dd0: 69 6e 63 4e 61 6d 65 41 28 52 50 43 5f 42 49 4e  incNameA(RPC_BIN
1de0: 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 75 69 6e  DING_HANDLE, uin
1df0: 74 2c 20 63 68 61 72 2a 2a 29 3b 0a 09 09 52 50  t, char**);...RP
1e00: 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d 74  C_STATUS RpcMgmt
1e10: 49 6e 71 53 65 72 76 65 72 50 72 69 6e 63 4e 61  InqServerPrincNa
1e20: 6d 65 57 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f  meW(RPC_BINDING_
1e30: 48 41 4e 44 4c 45 2c 20 75 69 6e 74 2c 20 77 63  HANDLE, uint, wc
1e40: 68 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54  har**);...RPC_ST
1e50: 41 54 55 53 20 52 70 63 53 65 72 76 65 72 49 6e  ATUS RpcServerIn
1e60: 71 44 65 66 61 75 6c 74 50 72 69 6e 63 4e 61 6d  qDefaultPrincNam
1e70: 65 41 28 75 69 6e 74 2c 20 63 68 61 72 2a 2a 29  eA(uint, char**)
1e80: 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52  ;...RPC_STATUS R
1e90: 70 63 53 65 72 76 65 72 49 6e 71 44 65 66 61 75  pcServerInqDefau
1ea0: 6c 74 50 72 69 6e 63 4e 61 6d 65 57 28 75 69 6e  ltPrincNameW(uin
1eb0: 74 2c 20 77 63 68 61 72 2a 2a 29 3b 0a 09 09 52  t, wchar**);...R
1ec0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 4e 73 42  PC_STATUS RpcNsB
1ed0: 69 6e 64 69 6e 67 49 6e 71 45 6e 74 72 79 4e 61  indingInqEntryNa
1ee0: 6d 65 41 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f  meA(RPC_BINDING_
1ef0: 48 41 4e 44 4c 45 2c 20 75 69 6e 74 2c 20 63 68  HANDLE, uint, ch
1f00: 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41  ar**);...RPC_STA
1f10: 54 55 53 20 52 70 63 4e 73 42 69 6e 64 69 6e 67  TUS RpcNsBinding
1f20: 49 6e 71 45 6e 74 72 79 4e 61 6d 65 57 28 52 50  InqEntryNameW(RP
1f30: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
1f40: 2c 20 75 69 6e 74 2c 20 77 63 68 61 72 2a 2a 29  , uint, wchar**)
1f50: 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52  ;...RPC_STATUS R
1f60: 70 63 42 69 6e 64 69 6e 67 49 6e 71 41 75 74 68  pcBindingInqAuth
1f70: 43 6c 69 65 6e 74 41 28 52 50 43 5f 42 49 4e 44  ClientA(RPC_BIND
1f80: 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f  ING_HANDLE, RPC_
1f90: 41 55 54 48 5a 5f 48 41 4e 44 4c 45 2a 2c 20 63  AUTHZ_HANDLE*, c
1fa0: 68 61 72 2a 2a 2c 20 75 69 6e 74 2a 2c 20 75 69  har**, uint*, ui
1fb0: 6e 74 2a 2c 20 75 69 6e 74 2a 29 3b 0a 09 09 52  nt*, uint*);...R
1fc0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 42 69 6e  PC_STATUS RpcBin
1fd0: 64 69 6e 67 49 6e 71 41 75 74 68 43 6c 69 65 6e  dingInqAuthClien
1fe0: 74 57 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48  tW(RPC_BINDING_H
1ff0: 41 4e 44 4c 45 2c 20 52 50 43 5f 41 55 54 48 5a  ANDLE, RPC_AUTHZ
2000: 5f 48 41 4e 44 4c 45 2a 2c 20 77 63 68 61 72 2a  _HANDLE*, wchar*
2010: 2a 2c 20 75 69 6e 74 2a 2c 20 75 69 6e 74 2a 2c  *, uint*, uint*,
2020: 20 75 69 6e 74 2a 29 3b 0a 09 09 52 50 43 5f 53   uint*);...RPC_S
2030: 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67  TATUS RpcBinding
2040: 49 6e 71 41 75 74 68 49 6e 66 6f 41 28 52 50 43  InqAuthInfoA(RPC
2050: 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c  _BINDING_HANDLE,
2060: 20 63 68 61 72 2a 2a 2c 20 75 69 6e 74 2a 2c 20   char**, uint*, 
2070: 75 69 6e 74 2a 2c 20 52 50 43 5f 41 55 54 48 5f  uint*, RPC_AUTH_
2080: 49 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2a  IDENTITY_HANDLE*
2090: 2c 20 75 69 6e 74 2a 29 3b 0a 09 09 52 50 43 5f  , uint*);...RPC_
20a0: 53 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e  STATUS RpcBindin
20b0: 67 49 6e 71 41 75 74 68 49 6e 66 6f 57 28 52 50  gInqAuthInfoW(RP
20c0: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
20d0: 2c 20 77 63 68 61 72 2a 2a 2c 20 75 69 6e 74 2a  , wchar**, uint*
20e0: 2c 20 75 69 6e 74 2a 2c 20 52 50 43 5f 41 55 54  , uint*, RPC_AUT
20f0: 48 5f 49 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c  H_IDENTITY_HANDL
2100: 45 2a 2c 20 75 69 6e 74 2a 29 3b 0a 09 09 52 50  E*, uint*);...RP
2110: 43 5f 53 54 41 54 55 53 20 52 70 63 42 69 6e 64  C_STATUS RpcBind
2120: 69 6e 67 53 65 74 41 75 74 68 49 6e 66 6f 41 28  ingSetAuthInfoA(
2130: 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44  RPC_BINDING_HAND
2140: 4c 45 2c 20 63 68 61 72 2a 2c 20 75 69 6e 74 2c  LE, char*, uint,
2150: 20 75 69 6e 74 2c 20 52 50 43 5f 41 55 54 48 5f   uint, RPC_AUTH_
2160: 49 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2c  IDENTITY_HANDLE,
2170: 20 75 69 6e 74 29 3b 0a 09 09 52 50 43 5f 53 54   uint);...RPC_ST
2180: 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67 53  ATUS RpcBindingS
2190: 65 74 41 75 74 68 49 6e 66 6f 45 78 41 28 52 50  etAuthInfoExA(RP
21a0: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
21b0: 2c 20 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 75  , char*, uint, u
21c0: 69 6e 74 2c 20 52 50 43 5f 41 55 54 48 5f 49 44  int, RPC_AUTH_ID
21d0: 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2c 20 75  ENTITY_HANDLE, u
21e0: 69 6e 74 2c 20 52 50 43 5f 53 45 43 55 52 49 54  int, RPC_SECURIT
21f0: 59 5f 51 4f 53 2a 29 3b 0a 09 09 52 50 43 5f 53  Y_QOS*);...RPC_S
2200: 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67  TATUS RpcBinding
2210: 53 65 74 41 75 74 68 49 6e 66 6f 57 28 52 50 43  SetAuthInfoW(RPC
2220: 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c  _BINDING_HANDLE,
2230: 20 77 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 75   wchar*, uint, u
2240: 69 6e 74 2c 20 52 50 43 5f 41 55 54 48 5f 49 44  int, RPC_AUTH_ID
2250: 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2c 20 75  ENTITY_HANDLE, u
2260: 69 6e 74 29 3b 0a 09 09 52 50 43 5f 53 54 41 54  int);...RPC_STAT
2270: 55 53 20 52 70 63 42 69 6e 64 69 6e 67 53 65 74  US RpcBindingSet
2280: 41 75 74 68 49 6e 66 6f 45 78 57 28 52 50 43 5f  AuthInfoExW(RPC_
2290: 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20  BINDING_HANDLE, 
22a0: 77 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 75 69  wchar*, uint, ui
22b0: 6e 74 2c 20 52 50 43 5f 41 55 54 48 5f 49 44 45  nt, RPC_AUTH_IDE
22c0: 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2c 20 75 69  NTITY_HANDLE, ui
22d0: 6e 74 2c 20 52 50 43 5f 53 45 43 55 52 49 54 59  nt, RPC_SECURITY
22e0: 5f 51 4f 53 2a 29 3b 0a 09 09 52 50 43 5f 53 54  _QOS*);...RPC_ST
22f0: 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67 49  ATUS RpcBindingI
2300: 6e 71 41 75 74 68 49 6e 66 6f 45 78 41 28 52 50  nqAuthInfoExA(RP
2310: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
2320: 2c 20 63 68 61 72 2a 2a 2c 20 75 69 6e 74 2a 2c  , char**, uint*,
2330: 20 75 69 6e 74 2a 2c 20 52 50 43 5f 41 55 54 48   uint*, RPC_AUTH
2340: 5f 49 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45  _IDENTITY_HANDLE
2350: 2a 2c 20 75 69 6e 74 2a 2c 20 75 69 6e 74 2c 20  *, uint*, uint, 
2360: 52 50 43 5f 53 45 43 55 52 49 54 59 5f 51 4f 53  RPC_SECURITY_QOS
2370: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
2380: 20 52 70 63 42 69 6e 64 69 6e 67 49 6e 71 41 75   RpcBindingInqAu
2390: 74 68 49 6e 66 6f 45 78 57 28 52 50 43 5f 42 49  thInfoExW(RPC_BI
23a0: 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 77 63  NDING_HANDLE, wc
23b0: 68 61 72 2a 2a 2c 20 75 69 6e 74 2a 2c 20 75 69  har**, uint*, ui
23c0: 6e 74 2a 2c 20 52 50 43 5f 41 55 54 48 5f 49 44  nt*, RPC_AUTH_ID
23d0: 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2a 2c 20  ENTITY_HANDLE*, 
23e0: 75 69 6e 74 2a 2c 20 75 69 6e 74 2c 20 52 50 43  uint*, uint, RPC
23f0: 5f 53 45 43 55 52 49 54 59 5f 51 4f 53 2a 29 3b  _SECURITY_QOS*);
2400: 0a 09 09 61 6c 69 61 73 20 76 6f 69 64 20 66 75  ...alias void fu
2410: 6e 63 74 69 6f 6e 28 76 6f 69 64 2a 2c 20 77 63  nction(void*, wc
2420: 68 61 72 2a 2c 20 75 69 6e 74 2c 20 76 6f 69 64  har*, uint, void
2430: 2a 2a 2c 20 52 50 43 5f 53 54 41 54 55 53 2a 29  **, RPC_STATUS*)
2440: 20 52 50 43 5f 41 55 54 48 5f 4b 45 59 5f 52 45   RPC_AUTH_KEY_RE
2450: 54 52 49 45 56 41 4c 5f 46 4e 3b 0a 09 09 52 50  TRIEVAL_FN;...RP
2460: 43 5f 53 54 41 54 55 53 20 52 70 63 53 65 72 76  C_STATUS RpcServ
2470: 65 72 52 65 67 69 73 74 65 72 41 75 74 68 49 6e  erRegisterAuthIn
2480: 66 6f 41 28 63 68 61 72 2a 2c 20 75 69 6e 74 2c  foA(char*, uint,
2490: 20 52 50 43 5f 41 55 54 48 5f 4b 45 59 5f 52 45   RPC_AUTH_KEY_RE
24a0: 54 52 49 45 56 41 4c 5f 46 4e 2c 20 76 6f 69 64  TRIEVAL_FN, void
24b0: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
24c0: 20 52 70 63 53 65 72 76 65 72 52 65 67 69 73 74   RpcServerRegist
24d0: 65 72 41 75 74 68 49 6e 66 6f 57 28 77 63 68 61  erAuthInfoW(wcha
24e0: 72 2a 2c 20 75 69 6e 74 2c 20 52 50 43 5f 41 55  r*, uint, RPC_AU
24f0: 54 48 5f 4b 45 59 5f 52 45 54 52 49 45 56 41 4c  TH_KEY_RETRIEVAL
2500: 5f 46 4e 2c 20 76 6f 69 64 2a 29 3b 0a 09 09 52  _FN, void*);...R
2510: 50 43 5f 53 54 41 54 55 53 20 55 75 69 64 54 6f  PC_STATUS UuidTo
2520: 53 74 72 69 6e 67 41 28 55 55 49 44 2a 2c 20 63  StringA(UUID*, c
2530: 68 61 72 2a 2a 29 3b 0a 09 09 52 50 43 5f 53 54  har**);...RPC_ST
2540: 41 54 55 53 20 55 75 69 64 46 72 6f 6d 53 74 72  ATUS UuidFromStr
2550: 69 6e 67 41 28 63 68 61 72 2a 2c 20 55 55 49 44  ingA(char*, UUID
2560: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
2570: 20 55 75 69 64 54 6f 53 74 72 69 6e 67 57 28 55   UuidToStringW(U
2580: 55 49 44 2a 2c 20 77 63 68 61 72 2a 2a 29 3b 0a  UID*, wchar**);.
2590: 09 09 52 50 43 5f 53 54 41 54 55 53 20 55 75 69  ..RPC_STATUS Uui
25a0: 64 46 72 6f 6d 53 74 72 69 6e 67 57 28 77 63 68  dFromStringW(wch
25b0: 61 72 2a 2c 20 55 55 49 44 2a 29 3b 0a 09 09 52  ar*, UUID*);...R
25c0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 45 70 52  PC_STATUS RpcEpR
25d0: 65 67 69 73 74 65 72 4e 6f 52 65 70 6c 61 63 65  egisterNoReplace
25e0: 41 28 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c  A(RPC_IF_HANDLE,
25f0: 20 52 50 43 5f 42 49 4e 44 49 4e 47 5f 56 45 43   RPC_BINDING_VEC
2600: 54 4f 52 2a 2c 20 55 55 49 44 5f 56 45 43 54 4f  TOR*, UUID_VECTO
2610: 52 2a 2c 20 63 68 61 72 2a 29 3b 0a 09 09 52 50  R*, char*);...RP
2620: 43 5f 53 54 41 54 55 53 20 52 70 63 45 70 52 65  C_STATUS RpcEpRe
2630: 67 69 73 74 65 72 4e 6f 52 65 70 6c 61 63 65 57  gisterNoReplaceW
2640: 28 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c 20  (RPC_IF_HANDLE, 
2650: 52 50 43 5f 42 49 4e 44 49 4e 47 5f 56 45 43 54  RPC_BINDING_VECT
2660: 4f 52 2a 2c 20 55 55 49 44 5f 56 45 43 54 4f 52  OR*, UUID_VECTOR
2670: 2a 2c 20 77 63 68 61 72 2a 29 3b 0a 09 09 52 50  *, wchar*);...RP
2680: 43 5f 53 54 41 54 55 53 20 52 70 63 45 70 52 65  C_STATUS RpcEpRe
2690: 67 69 73 74 65 72 41 28 52 50 43 5f 49 46 5f 48  gisterA(RPC_IF_H
26a0: 41 4e 44 4c 45 2c 20 52 50 43 5f 42 49 4e 44 49  ANDLE, RPC_BINDI
26b0: 4e 47 5f 56 45 43 54 4f 52 2a 2c 20 55 55 49 44  NG_VECTOR*, UUID
26c0: 5f 56 45 43 54 4f 52 2a 2c 20 63 68 61 72 2a 29  _VECTOR*, char*)
26d0: 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53 20 52  ;...RPC_STATUS R
26e0: 70 63 45 70 52 65 67 69 73 74 65 72 57 28 52 50  pcEpRegisterW(RP
26f0: 43 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 52 50 43  C_IF_HANDLE, RPC
2700: 5f 42 49 4e 44 49 4e 47 5f 56 45 43 54 4f 52 2a  _BINDING_VECTOR*
2710: 2c 20 55 55 49 44 5f 56 45 43 54 4f 52 2a 2c 20  , UUID_VECTOR*, 
2720: 77 63 68 61 72 2a 29 3b 0a 09 09 52 50 43 5f 53  wchar*);...RPC_S
2730: 54 41 54 55 53 20 44 63 65 45 72 72 6f 72 49 6e  TATUS DceErrorIn
2740: 71 54 65 78 74 41 28 52 50 43 5f 53 54 41 54 55  qTextA(RPC_STATU
2750: 53 2c 20 63 68 61 72 2a 29 3b 0a 09 09 52 50 43  S, char*);...RPC
2760: 5f 53 54 41 54 55 53 20 44 63 65 45 72 72 6f 72  _STATUS DceError
2770: 49 6e 71 54 65 78 74 57 28 52 50 43 5f 53 54 41  InqTextW(RPC_STA
2780: 54 55 53 2c 20 77 63 68 61 72 2a 29 3b 0a 09 09  TUS, wchar*);...
2790: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67  RPC_STATUS RpcMg
27a0: 6d 74 45 70 45 6c 74 49 6e 71 4e 65 78 74 41 28  mtEpEltInqNextA(
27b0: 52 50 43 5f 45 50 5f 49 4e 51 5f 48 41 4e 44 4c  RPC_EP_INQ_HANDL
27c0: 45 2c 20 52 50 43 5f 49 46 5f 49 44 2a 2c 20 52  E, RPC_IF_ID*, R
27d0: 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c  PC_BINDING_HANDL
27e0: 45 2a 2c 20 55 55 49 44 2a 2c 20 63 68 61 72 2a  E*, UUID*, char*
27f0: 2a 29 3b 0a 09 09 52 50 43 5f 53 54 41 54 55 53  *);...RPC_STATUS
2800: 20 52 70 63 4d 67 6d 74 45 70 45 6c 74 49 6e 71   RpcMgmtEpEltInq
2810: 4e 65 78 74 57 28 52 50 43 5f 45 50 5f 49 4e 51  NextW(RPC_EP_INQ
2820: 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 49 46 5f  _HANDLE, RPC_IF_
2830: 49 44 2a 2c 20 52 50 43 5f 42 49 4e 44 49 4e 47  ID*, RPC_BINDING
2840: 5f 48 41 4e 44 4c 45 2a 2c 20 55 55 49 44 2a 2c  _HANDLE*, UUID*,
2850: 20 77 63 68 61 72 2a 2a 29 3b 0a 0a 09 09 2f 2f   wchar**);....//
2860: 20 4d 69 6e 47 57 20 65 72 72 6f 6e 65 6f 75 73   MinGW erroneous
2870: 6c 79 20 68 61 64 20 74 68 65 73 65 20 69 6e 20  ly had these in 
2880: 72 70 63 2e 68 0a 09 09 52 50 43 5f 53 54 41 54  rpc.h...RPC_STAT
2890: 55 53 20 52 70 63 49 6d 70 65 72 73 6f 6e 61 74  US RpcImpersonat
28a0: 65 43 6c 69 65 6e 74 28 52 50 43 5f 42 49 4e 44  eClient(RPC_BIND
28b0: 49 4e 47 5f 48 41 4e 44 4c 45 29 3b 0a 09 09 52  ING_HANDLE);...R
28c0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 52 65 76  PC_STATUS RpcRev
28d0: 65 72 74 54 6f 53 65 6c 66 28 29 3b 0a 09 7d 0a  ertToSelf();..}.
28e0: 0a 09 76 65 72 73 69 6f 6e 28 55 6e 69 63 6f 64  ..version(Unicod
28f0: 65 29 20 7b 0a 09 09 61 6c 69 61 73 20 52 50 43  e) {...alias RPC
2900: 5f 50 52 4f 54 53 45 51 5f 56 45 43 54 4f 52 57  _PROTSEQ_VECTORW
2910: 20 52 50 43 5f 50 52 4f 54 53 45 51 5f 56 45 43   RPC_PROTSEQ_VEC
2920: 54 4f 52 3b 0a 09 09 61 6c 69 61 73 20 53 45 43  TOR;...alias SEC
2930: 5f 57 49 4e 4e 54 5f 41 55 54 48 5f 49 44 45 4e  _WINNT_AUTH_IDEN
2940: 54 49 54 59 5f 57 20 53 45 43 5f 57 49 4e 4e 54  TITY_W SEC_WINNT
2950: 5f 41 55 54 48 5f 49 44 45 4e 54 49 54 59 3b 0a  _AUTH_IDENTITY;.
2960: 09 09 61 6c 69 61 73 20 50 53 45 43 5f 57 49 4e  ..alias PSEC_WIN
2970: 4e 54 5f 41 55 54 48 5f 49 44 45 4e 54 49 54 59  NT_AUTH_IDENTITY
2980: 5f 57 20 50 53 45 43 5f 57 49 4e 4e 54 5f 41 55  _W PSEC_WINNT_AU
2990: 54 48 5f 49 44 45 4e 54 49 54 59 3b 0a 09 09 61  TH_IDENTITY;...a
29a0: 6c 69 61 73 20 52 70 63 4d 67 6d 74 45 70 45 6c  lias RpcMgmtEpEl
29b0: 74 49 6e 71 4e 65 78 74 57 20 52 70 63 4d 67 6d  tInqNextW RpcMgm
29c0: 74 45 70 45 6c 74 49 6e 71 4e 65 78 74 3b 0a 09  tEpEltInqNext;..
29d0: 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64 69 6e  .alias RpcBindin
29e0: 67 46 72 6f 6d 53 74 72 69 6e 67 42 69 6e 64 69  gFromStringBindi
29f0: 6e 67 57 20 52 70 63 42 69 6e 64 69 6e 67 46 72  ngW RpcBindingFr
2a00: 6f 6d 53 74 72 69 6e 67 42 69 6e 64 69 6e 67 3b  omStringBinding;
2a10: 0a 09 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64  ...alias RpcBind
2a20: 69 6e 67 54 6f 53 74 72 69 6e 67 42 69 6e 64 69  ingToStringBindi
2a30: 6e 67 57 20 52 70 63 42 69 6e 64 69 6e 67 54 6f  ngW RpcBindingTo
2a40: 53 74 72 69 6e 67 42 69 6e 64 69 6e 67 3b 0a 09  StringBinding;..
2a50: 09 61 6c 69 61 73 20 52 70 63 53 74 72 69 6e 67  .alias RpcString
2a60: 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 65 57 20  BindingComposeW 
2a70: 52 70 63 53 74 72 69 6e 67 42 69 6e 64 69 6e 67  RpcStringBinding
2a80: 43 6f 6d 70 6f 73 65 3b 0a 09 09 61 6c 69 61 73  Compose;...alias
2a90: 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64 69 6e   RpcStringBindin
2aa0: 67 50 61 72 73 65 57 20 52 70 63 53 74 72 69 6e  gParseW RpcStrin
2ab0: 67 42 69 6e 64 69 6e 67 50 61 72 73 65 3b 0a 09  gBindingParse;..
2ac0: 09 61 6c 69 61 73 20 52 70 63 53 74 72 69 6e 67  .alias RpcString
2ad0: 46 72 65 65 57 20 52 70 63 53 74 72 69 6e 67 46  FreeW RpcStringF
2ae0: 72 65 65 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  ree;...alias Rpc
2af0: 4e 65 74 77 6f 72 6b 49 73 50 72 6f 74 73 65 71  NetworkIsProtseq
2b00: 56 61 6c 69 64 57 20 52 70 63 4e 65 74 77 6f 72  ValidW RpcNetwor
2b10: 6b 49 73 50 72 6f 74 73 65 71 56 61 6c 69 64 3b  kIsProtseqValid;
2b20: 0a 09 09 61 6c 69 61 73 20 52 70 63 4e 65 74 77  ...alias RpcNetw
2b30: 6f 72 6b 49 6e 71 50 72 6f 74 73 65 71 73 57 20  orkInqProtseqsW 
2b40: 52 70 63 4e 65 74 77 6f 72 6b 49 6e 71 50 72 6f  RpcNetworkInqPro
2b50: 74 73 65 71 73 3b 0a 09 09 61 6c 69 61 73 20 52  tseqs;...alias R
2b60: 70 63 50 72 6f 74 73 65 71 56 65 63 74 6f 72 46  pcProtseqVectorF
2b70: 72 65 65 57 20 52 70 63 50 72 6f 74 73 65 71 56  reeW RpcProtseqV
2b80: 65 63 74 6f 72 46 72 65 65 3b 0a 09 09 61 6c 69  ectorFree;...ali
2b90: 61 73 20 52 70 63 53 65 72 76 65 72 55 73 65 50  as RpcServerUseP
2ba0: 72 6f 74 73 65 71 57 20 52 70 63 53 65 72 76 65  rotseqW RpcServe
2bb0: 72 55 73 65 50 72 6f 74 73 65 71 3b 0a 09 09 61  rUseProtseq;...a
2bc0: 6c 69 61 73 20 52 70 63 53 65 72 76 65 72 55 73  lias RpcServerUs
2bd0: 65 50 72 6f 74 73 65 71 45 78 57 20 52 70 63 53  eProtseqExW RpcS
2be0: 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45  erverUseProtseqE
2bf0: 78 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65  x;...alias RpcSe
2c00: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45 70  rverUseProtseqEp
2c10: 57 20 52 70 63 53 65 72 76 65 72 55 73 65 50 72  W RpcServerUsePr
2c20: 6f 74 73 65 71 45 70 3b 0a 09 09 61 6c 69 61 73  otseqEp;...alias
2c30: 20 52 70 63 53 65 72 76 65 72 55 73 65 50 72 6f   RpcServerUsePro
2c40: 74 73 65 71 45 70 45 78 57 20 52 70 63 53 65 72  tseqEpExW RpcSer
2c50: 76 65 72 55 73 65 50 72 6f 74 73 65 71 45 70 45  verUseProtseqEpE
2c60: 78 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65  x;...alias RpcSe
2c70: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 49 66  rverUseProtseqIf
2c80: 57 20 52 70 63 53 65 72 76 65 72 55 73 65 50 72  W RpcServerUsePr
2c90: 6f 74 73 65 71 49 66 3b 0a 09 09 61 6c 69 61 73  otseqIf;...alias
2ca0: 20 52 70 63 53 65 72 76 65 72 55 73 65 50 72 6f   RpcServerUsePro
2cb0: 74 73 65 71 49 66 45 78 57 20 52 70 63 53 65 72  tseqIfExW RpcSer
2cc0: 76 65 72 55 73 65 50 72 6f 74 73 65 71 49 66 45  verUseProtseqIfE
2cd0: 78 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 4d 67  x;...alias RpcMg
2ce0: 6d 74 49 6e 71 53 65 72 76 65 72 50 72 69 6e 63  mtInqServerPrinc
2cf0: 4e 61 6d 65 57 20 52 70 63 4d 67 6d 74 49 6e 71  NameW RpcMgmtInq
2d00: 53 65 72 76 65 72 50 72 69 6e 63 4e 61 6d 65 3b  ServerPrincName;
2d10: 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65 72 76  ...alias RpcServ
2d20: 65 72 49 6e 71 44 65 66 61 75 6c 74 50 72 69 6e  erInqDefaultPrin
2d30: 63 4e 61 6d 65 57 20 52 70 63 53 65 72 76 65 72  cNameW RpcServer
2d40: 49 6e 71 44 65 66 61 75 6c 74 50 72 69 6e 63 4e  InqDefaultPrincN
2d50: 61 6d 65 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  ame;...alias Rpc
2d60: 4e 73 42 69 6e 64 69 6e 67 49 6e 71 45 6e 74 72  NsBindingInqEntr
2d70: 79 4e 61 6d 65 57 20 52 70 63 4e 73 42 69 6e 64  yNameW RpcNsBind
2d80: 69 6e 67 49 6e 71 45 6e 74 72 79 4e 61 6d 65 3b  ingInqEntryName;
2d90: 0a 09 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64  ...alias RpcBind
2da0: 69 6e 67 49 6e 71 41 75 74 68 43 6c 69 65 6e 74  ingInqAuthClient
2db0: 57 20 52 70 63 42 69 6e 64 69 6e 67 49 6e 71 41  W RpcBindingInqA
2dc0: 75 74 68 43 6c 69 65 6e 74 3b 0a 09 09 61 6c 69  uthClient;...ali
2dd0: 61 73 20 52 70 63 42 69 6e 64 69 6e 67 49 6e 71  as RpcBindingInq
2de0: 41 75 74 68 49 6e 66 6f 57 20 52 70 63 42 69 6e  AuthInfoW RpcBin
2df0: 64 69 6e 67 49 6e 71 41 75 74 68 49 6e 66 6f 3b  dingInqAuthInfo;
2e00: 0a 09 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64  ...alias RpcBind
2e10: 69 6e 67 53 65 74 41 75 74 68 49 6e 66 6f 57 20  ingSetAuthInfoW 
2e20: 52 70 63 42 69 6e 64 69 6e 67 53 65 74 41 75 74  RpcBindingSetAut
2e30: 68 49 6e 66 6f 3b 0a 09 09 61 6c 69 61 73 20 52  hInfo;...alias R
2e40: 70 63 53 65 72 76 65 72 52 65 67 69 73 74 65 72  pcServerRegister
2e50: 41 75 74 68 49 6e 66 6f 57 20 52 70 63 53 65 72  AuthInfoW RpcSer
2e60: 76 65 72 52 65 67 69 73 74 65 72 41 75 74 68 49  verRegisterAuthI
2e70: 6e 66 6f 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  nfo;...alias Rpc
2e80: 42 69 6e 64 69 6e 67 49 6e 71 41 75 74 68 49 6e  BindingInqAuthIn
2e90: 66 6f 45 78 57 20 52 70 63 42 69 6e 64 69 6e 67  foExW RpcBinding
2ea0: 49 6e 71 41 75 74 68 49 6e 66 6f 45 78 3b 0a 09  InqAuthInfoEx;..
2eb0: 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64 69 6e  .alias RpcBindin
2ec0: 67 53 65 74 41 75 74 68 49 6e 66 6f 45 78 57 20  gSetAuthInfoExW 
2ed0: 52 70 63 42 69 6e 64 69 6e 67 53 65 74 41 75 74  RpcBindingSetAut
2ee0: 68 49 6e 66 6f 45 78 3b 0a 09 09 61 6c 69 61 73  hInfoEx;...alias
2ef0: 20 55 75 69 64 46 72 6f 6d 53 74 72 69 6e 67 57   UuidFromStringW
2f00: 20 55 75 69 64 46 72 6f 6d 53 74 72 69 6e 67 3b   UuidFromString;
2f10: 0a 09 09 61 6c 69 61 73 20 55 75 69 64 54 6f 53  ...alias UuidToS
2f20: 74 72 69 6e 67 57 20 55 75 69 64 54 6f 53 74 72  tringW UuidToStr
2f30: 69 6e 67 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  ing;...alias Rpc
2f40: 45 70 52 65 67 69 73 74 65 72 4e 6f 52 65 70 6c  EpRegisterNoRepl
2f50: 61 63 65 57 20 52 70 63 45 70 52 65 67 69 73 74  aceW RpcEpRegist
2f60: 65 72 4e 6f 52 65 70 6c 61 63 65 3b 0a 09 09 61  erNoReplace;...a
2f70: 6c 69 61 73 20 52 70 63 45 70 52 65 67 69 73 74  lias RpcEpRegist
2f80: 65 72 57 20 52 70 63 45 70 52 65 67 69 73 74 65  erW RpcEpRegiste
2f90: 72 3b 0a 09 09 61 6c 69 61 73 20 44 63 65 45 72  r;...alias DceEr
2fa0: 72 6f 72 49 6e 71 54 65 78 74 57 20 44 63 65 45  rorInqTextW DceE
2fb0: 72 72 6f 72 49 6e 71 54 65 78 74 3b 0a 09 7d 20  rrorInqText;..} 
2fc0: 65 6c 73 65 20 7b 20 2f 2f 20 41 6e 73 69 0a 09  else { // Ansi..
2fd0: 09 61 6c 69 61 73 20 52 50 43 5f 50 52 4f 54 53  .alias RPC_PROTS
2fe0: 45 51 5f 56 45 43 54 4f 52 41 20 52 50 43 5f 50  EQ_VECTORA RPC_P
2ff0: 52 4f 54 53 45 51 5f 56 45 43 54 4f 52 3b 0a 09  ROTSEQ_VECTOR;..
3000: 09 61 6c 69 61 73 20 53 45 43 5f 57 49 4e 4e 54  .alias SEC_WINNT
3010: 5f 41 55 54 48 5f 49 44 45 4e 54 49 54 59 5f 41  _AUTH_IDENTITY_A
3020: 20 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f   SEC_WINNT_AUTH_
3030: 49 44 45 4e 54 49 54 59 3b 0a 09 09 61 6c 69 61  IDENTITY;...alia
3040: 73 20 50 53 45 43 5f 57 49 4e 4e 54 5f 41 55 54  s PSEC_WINNT_AUT
3050: 48 5f 49 44 45 4e 54 49 54 59 5f 41 20 50 53 45  H_IDENTITY_A PSE
3060: 43 5f 57 49 4e 4e 54 5f 41 55 54 48 5f 49 44 45  C_WINNT_AUTH_IDE
3070: 4e 54 49 54 59 3b 0a 09 09 61 6c 69 61 73 20 52  NTITY;...alias R
3080: 70 63 4d 67 6d 74 45 70 45 6c 74 49 6e 71 4e 65  pcMgmtEpEltInqNe
3090: 78 74 41 20 52 70 63 4d 67 6d 74 45 70 45 6c 74  xtA RpcMgmtEpElt
30a0: 49 6e 71 4e 65 78 74 3b 0a 09 09 61 6c 69 61 73  InqNext;...alias
30b0: 20 52 70 63 42 69 6e 64 69 6e 67 46 72 6f 6d 53   RpcBindingFromS
30c0: 74 72 69 6e 67 42 69 6e 64 69 6e 67 41 20 52 70  tringBindingA Rp
30d0: 63 42 69 6e 64 69 6e 67 46 72 6f 6d 53 74 72 69  cBindingFromStri
30e0: 6e 67 42 69 6e 64 69 6e 67 3b 0a 09 09 61 6c 69  ngBinding;...ali
30f0: 61 73 20 52 70 63 42 69 6e 64 69 6e 67 54 6f 53  as RpcBindingToS
3100: 74 72 69 6e 67 42 69 6e 64 69 6e 67 41 20 52 70  tringBindingA Rp
3110: 63 42 69 6e 64 69 6e 67 54 6f 53 74 72 69 6e 67  cBindingToString
3120: 42 69 6e 64 69 6e 67 3b 0a 09 09 61 6c 69 61 73  Binding;...alias
3130: 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64 69 6e   RpcStringBindin
3140: 67 43 6f 6d 70 6f 73 65 41 20 52 70 63 53 74 72  gComposeA RpcStr
3150: 69 6e 67 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73  ingBindingCompos
3160: 65 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 53 74  e;...alias RpcSt
3170: 72 69 6e 67 42 69 6e 64 69 6e 67 50 61 72 73 65  ringBindingParse
3180: 41 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64 69  A RpcStringBindi
3190: 6e 67 50 61 72 73 65 3b 0a 09 09 61 6c 69 61 73  ngParse;...alias
31a0: 20 52 70 63 53 74 72 69 6e 67 46 72 65 65 41 20   RpcStringFreeA 
31b0: 52 70 63 53 74 72 69 6e 67 46 72 65 65 3b 0a 09  RpcStringFree;..
31c0: 09 61 6c 69 61 73 20 52 70 63 4e 65 74 77 6f 72  .alias RpcNetwor
31d0: 6b 49 73 50 72 6f 74 73 65 71 56 61 6c 69 64 41  kIsProtseqValidA
31e0: 20 52 70 63 4e 65 74 77 6f 72 6b 49 73 50 72 6f   RpcNetworkIsPro
31f0: 74 73 65 71 56 61 6c 69 64 3b 0a 09 09 61 6c 69  tseqValid;...ali
3200: 61 73 20 52 70 63 4e 65 74 77 6f 72 6b 49 6e 71  as RpcNetworkInq
3210: 50 72 6f 74 73 65 71 73 41 20 52 70 63 4e 65 74  ProtseqsA RpcNet
3220: 77 6f 72 6b 49 6e 71 50 72 6f 74 73 65 71 73 3b  workInqProtseqs;
3230: 0a 09 09 61 6c 69 61 73 20 52 70 63 50 72 6f 74  ...alias RpcProt
3240: 73 65 71 56 65 63 74 6f 72 46 72 65 65 41 20 52  seqVectorFreeA R
3250: 70 63 50 72 6f 74 73 65 71 56 65 63 74 6f 72 46  pcProtseqVectorF
3260: 72 65 65 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  ree;...alias Rpc
3270: 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71  ServerUseProtseq
3280: 41 20 52 70 63 53 65 72 76 65 72 55 73 65 50 72  A RpcServerUsePr
3290: 6f 74 73 65 71 3b 0a 09 09 61 6c 69 61 73 20 52  otseq;...alias R
32a0: 70 63 53 65 72 76 65 72 55 73 65 50 72 6f 74 73  pcServerUseProts
32b0: 65 71 45 78 41 20 52 70 63 53 65 72 76 65 72 55  eqExA RpcServerU
32c0: 73 65 50 72 6f 74 73 65 71 45 78 3b 0a 09 09 61  seProtseqEx;...a
32d0: 6c 69 61 73 20 52 70 63 53 65 72 76 65 72 55 73  lias RpcServerUs
32e0: 65 50 72 6f 74 73 65 71 45 70 41 20 52 70 63 53  eProtseqEpA RpcS
32f0: 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45  erverUseProtseqE
3300: 70 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65  p;...alias RpcSe
3310: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45 70  rverUseProtseqEp
3320: 45 78 41 20 52 70 63 53 65 72 76 65 72 55 73 65  ExA RpcServerUse
3330: 50 72 6f 74 73 65 71 45 70 45 78 3b 0a 09 09 61  ProtseqEpEx;...a
3340: 6c 69 61 73 20 52 70 63 53 65 72 76 65 72 55 73  lias RpcServerUs
3350: 65 50 72 6f 74 73 65 71 49 66 41 20 52 70 63 53  eProtseqIfA RpcS
3360: 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 49  erverUseProtseqI
3370: 66 3b 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65  f;...alias RpcSe
3380: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 49 66  rverUseProtseqIf
3390: 45 78 41 20 52 70 63 53 65 72 76 65 72 55 73 65  ExA RpcServerUse
33a0: 50 72 6f 74 73 65 71 49 66 45 78 3b 0a 09 09 61  ProtseqIfEx;...a
33b0: 6c 69 61 73 20 52 70 63 4d 67 6d 74 49 6e 71 53  lias RpcMgmtInqS
33c0: 65 72 76 65 72 50 72 69 6e 63 4e 61 6d 65 41 20  erverPrincNameA 
33d0: 52 70 63 4d 67 6d 74 49 6e 71 53 65 72 76 65 72  RpcMgmtInqServer
33e0: 50 72 69 6e 63 4e 61 6d 65 3b 0a 09 09 61 6c 69  PrincName;...ali
33f0: 61 73 20 52 70 63 53 65 72 76 65 72 49 6e 71 44  as RpcServerInqD
3400: 65 66 61 75 6c 74 50 72 69 6e 63 4e 61 6d 65 41  efaultPrincNameA
3410: 20 52 70 63 53 65 72 76 65 72 49 6e 71 44 65 66   RpcServerInqDef
3420: 61 75 6c 74 50 72 69 6e 63 4e 61 6d 65 3b 0a 09  aultPrincName;..
3430: 09 61 6c 69 61 73 20 52 70 63 4e 73 42 69 6e 64  .alias RpcNsBind
3440: 69 6e 67 49 6e 71 45 6e 74 72 79 4e 61 6d 65 41  ingInqEntryNameA
3450: 20 52 70 63 4e 73 42 69 6e 64 69 6e 67 49 6e 71   RpcNsBindingInq
3460: 45 6e 74 72 79 4e 61 6d 65 3b 0a 09 09 61 6c 69  EntryName;...ali
3470: 61 73 20 52 70 63 42 69 6e 64 69 6e 67 49 6e 71  as RpcBindingInq
3480: 41 75 74 68 43 6c 69 65 6e 74 41 20 52 70 63 42  AuthClientA RpcB
3490: 69 6e 64 69 6e 67 49 6e 71 41 75 74 68 43 6c 69  indingInqAuthCli
34a0: 65 6e 74 3b 0a 09 09 61 6c 69 61 73 20 52 70 63  ent;...alias Rpc
34b0: 42 69 6e 64 69 6e 67 49 6e 71 41 75 74 68 49 6e  BindingInqAuthIn
34c0: 66 6f 41 20 52 70 63 42 69 6e 64 69 6e 67 49 6e  foA RpcBindingIn
34d0: 71 41 75 74 68 49 6e 66 6f 3b 0a 09 09 61 6c 69  qAuthInfo;...ali
34e0: 61 73 20 52 70 63 42 69 6e 64 69 6e 67 53 65 74  as RpcBindingSet
34f0: 41 75 74 68 49 6e 66 6f 41 20 52 70 63 42 69 6e  AuthInfoA RpcBin
3500: 64 69 6e 67 53 65 74 41 75 74 68 49 6e 66 6f 3b  dingSetAuthInfo;
3510: 0a 09 09 61 6c 69 61 73 20 52 70 63 53 65 72 76  ...alias RpcServ
3520: 65 72 52 65 67 69 73 74 65 72 41 75 74 68 49 6e  erRegisterAuthIn
3530: 66 6f 41 20 52 70 63 53 65 72 76 65 72 52 65 67  foA RpcServerReg
3540: 69 73 74 65 72 41 75 74 68 49 6e 66 6f 3b 0a 09  isterAuthInfo;..
3550: 09 61 6c 69 61 73 20 52 70 63 42 69 6e 64 69 6e  .alias RpcBindin
3560: 67 49 6e 71 41 75 74 68 49 6e 66 6f 45 78 41 20  gInqAuthInfoExA 
3570: 52 70 63 42 69 6e 64 69 6e 67 49 6e 71 41 75 74  RpcBindingInqAut
3580: 68 49 6e 66 6f 45 78 3b 0a 09 09 61 6c 69 61 73  hInfoEx;...alias
3590: 20 52 70 63 42 69 6e 64 69 6e 67 53 65 74 41 75   RpcBindingSetAu
35a0: 74 68 49 6e 66 6f 45 78 41 20 52 70 63 42 69 6e  thInfoExA RpcBin
35b0: 64 69 6e 67 53 65 74 41 75 74 68 49 6e 66 6f 45  dingSetAuthInfoE
35c0: 78 3b 0a 09 09 61 6c 69 61 73 20 55 75 69 64 46  x;...alias UuidF
35d0: 72 6f 6d 53 74 72 69 6e 67 41 20 55 75 69 64 46  romStringA UuidF
35e0: 72 6f 6d 53 74 72 69 6e 67 3b 0a 09 09 61 6c 69  romString;...ali
35f0: 61 73 20 55 75 69 64 54 6f 53 74 72 69 6e 67 41  as UuidToStringA
3600: 20 55 75 69 64 54 6f 53 74 72 69 6e 67 3b 0a 09   UuidToString;..
3610: 09 61 6c 69 61 73 20 52 70 63 45 70 52 65 67 69  .alias RpcEpRegi
3620: 73 74 65 72 4e 6f 52 65 70 6c 61 63 65 41 20 52  sterNoReplaceA R
3630: 70 63 45 70 52 65 67 69 73 74 65 72 4e 6f 52 65  pcEpRegisterNoRe
3640: 70 6c 61 63 65 3b 0a 09 09 61 6c 69 61 73 20 52  place;...alias R
3650: 70 63 45 70 52 65 67 69 73 74 65 72 41 20 52 70  pcEpRegisterA Rp
3660: 63 45 70 52 65 67 69 73 74 65 72 3b 0a 09 09 61  cEpRegister;...a
3670: 6c 69 61 73 20 44 63 65 45 72 72 6f 72 49 6e 71  lias DceErrorInq
3680: 54 65 78 74 41 20 44 63 65 45 72 72 6f 72 49 6e  TextA DceErrorIn
3690: 71 54 65 78 74 3b 0a 09 7d 20 2f 2f 23 65 6e 64  qText;..} //#end
36a0: 69 66 20 2f 2f 20 55 4e 49 43 4f 44 45 0a 0a 7d  if // UNICODE..}
36b0: 20 65 6c 73 65 20 7b 20 2f 2f 20 5f 57 49 4e 33   else { // _WIN3
36c0: 32 5f 57 49 4e 4e 54 5f 4f 4e 4c 59 0a 0a 09 73  2_WINNT_ONLY...s
36d0: 74 72 75 63 74 20 52 50 43 5f 50 52 4f 54 53 45  truct RPC_PROTSE
36e0: 51 5f 56 45 43 54 4f 52 20 7b 0a 09 09 75 69 6e  Q_VECTOR {...uin
36f0: 74 20 43 6f 75 6e 74 3b 0a 09 09 75 62 79 74 65  t Count;...ubyte
3700: 2a 20 50 72 6f 74 73 65 71 5b 31 5d 3b 0a 09 7d  * Protseq[1];..}
3710: 0a 09 2f 2f 20 76 65 72 73 69 6f 6e 73 20 77 69  ..// versions wi
3720: 74 68 6f 75 74 20 55 6e 69 63 6f 64 65 2e 0a 09  thout Unicode...
3730: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 42 69  RPC_STATUS RpcBi
3740: 6e 64 69 6e 67 46 72 6f 6d 53 74 72 69 6e 67 42  ndingFromStringB
3750: 69 6e 64 69 6e 67 28 63 68 61 72 2a 2c 20 52 50  inding(char*, RP
3760: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
3770: 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20  *);..RPC_STATUS 
3780: 52 70 63 42 69 6e 64 69 6e 67 54 6f 53 74 72 69  RpcBindingToStri
3790: 6e 67 42 69 6e 64 69 6e 67 28 52 50 43 5f 42 49  ngBinding(RPC_BI
37a0: 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 63 68  NDING_HANDLE, ch
37b0: 61 72 2a 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54  ar**);..RPC_STAT
37c0: 55 53 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64  US RpcStringBind
37d0: 69 6e 67 43 6f 6d 70 6f 73 65 28 63 68 61 72 2a  ingCompose(char*
37e0: 2c 20 63 68 61 72 2a 2c 20 63 68 61 72 2a 2c 20  , char*, char*, 
37f0: 63 68 61 72 2a 2c 20 63 68 61 72 2a 2c 20 63 68  char*, char*, ch
3800: 61 72 2a 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54  ar**);..RPC_STAT
3810: 55 53 20 52 70 63 53 74 72 69 6e 67 42 69 6e 64  US RpcStringBind
3820: 69 6e 67 50 61 72 73 65 28 63 68 61 72 2a 2c 20  ingParse(char*, 
3830: 63 68 61 72 2a 2a 2c 20 63 68 61 72 2a 2a 2c 20  char**, char**, 
3840: 63 68 61 72 2a 2a 2c 20 63 68 61 72 2a 2a 2c 20  char**, char**, 
3850: 63 68 61 72 2a 2a 29 3b 0a 09 52 50 43 5f 53 54  char**);..RPC_ST
3860: 41 54 55 53 20 52 70 63 53 74 72 69 6e 67 46 72  ATUS RpcStringFr
3870: 65 65 28 63 68 61 72 2a 2a 29 3b 0a 09 52 50 43  ee(char**);..RPC
3880: 5f 53 54 41 54 55 53 20 52 70 63 4e 65 74 77 6f  _STATUS RpcNetwo
3890: 72 6b 49 73 50 72 6f 74 73 65 71 56 61 6c 69 64  rkIsProtseqValid
38a0: 28 63 68 61 72 2a 29 3b 0a 09 52 50 43 5f 53 54  (char*);..RPC_ST
38b0: 41 54 55 53 20 52 70 63 4e 65 74 77 6f 72 6b 49  ATUS RpcNetworkI
38c0: 6e 71 50 72 6f 74 73 65 71 73 28 52 50 43 5f 50  nqProtseqs(RPC_P
38d0: 52 4f 54 53 45 51 5f 56 45 43 54 4f 52 2a 2a 29  ROTSEQ_VECTOR**)
38e0: 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ;..RPC_STATUS Rp
38f0: 63 53 65 72 76 65 72 49 6e 71 42 69 6e 64 69 6e  cServerInqBindin
3900: 67 73 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 56  gs(RPC_BINDING_V
3910: 45 43 54 4f 52 2a 2a 29 3b 0a 09 52 50 43 5f 53  ECTOR**);..RPC_S
3920: 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72 55  TATUS RpcServerU
3930: 73 65 50 72 6f 74 73 65 71 28 63 68 61 72 2a 2c  seProtseq(char*,
3940: 20 75 69 6e 74 2c 20 76 6f 69 64 2a 29 3b 0a 09   uint, void*);..
3950: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53 65  RPC_STATUS RpcSe
3960: 72 76 65 72 55 73 65 50 72 6f 74 73 65 71 45 78  rverUseProtseqEx
3970: 28 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 76 6f  (char*, uint, vo
3980: 69 64 2a 2c 20 50 52 50 43 5f 50 4f 4c 49 43 59  id*, PRPC_POLICY
3990: 29 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52  );..RPC_STATUS R
39a0: 70 63 53 65 72 76 65 72 55 73 65 50 72 6f 74 73  pcServerUseProts
39b0: 65 71 45 70 28 63 68 61 72 2a 2c 20 75 69 6e 74  eqEp(char*, uint
39c0: 2c 20 63 68 61 72 2a 2c 20 76 6f 69 64 2a 29 3b  , char*, void*);
39d0: 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ..RPC_STATUS Rpc
39e0: 53 65 72 76 65 72 55 73 65 50 72 6f 74 73 65 71  ServerUseProtseq
39f0: 45 70 45 78 28 63 68 61 72 2a 2c 20 75 69 6e 74  EpEx(char*, uint
3a00: 2c 20 63 68 61 72 2a 2c 20 76 6f 69 64 2a 2c 20  , char*, void*, 
3a10: 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b 0a 09 52  PRPC_POLICY);..R
3a20: 50 43 5f 53 54 41 54 55 53 20 52 70 63 53 65 72  PC_STATUS RpcSer
3a30: 76 65 72 55 73 65 50 72 6f 74 73 65 71 49 66 28  verUseProtseqIf(
3a40: 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 52 50 43  char*, uint, RPC
3a50: 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 76 6f 69 64  _IF_HANDLE, void
3a60: 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20  *);..RPC_STATUS 
3a70: 52 70 63 53 65 72 76 65 72 55 73 65 50 72 6f 74  RpcServerUseProt
3a80: 73 65 71 49 66 45 78 28 63 68 61 72 2a 2c 20 75  seqIfEx(char*, u
3a90: 69 6e 74 2c 20 52 50 43 5f 49 46 5f 48 41 4e 44  int, RPC_IF_HAND
3aa0: 4c 45 2c 20 76 6f 69 64 2a 2c 20 50 52 50 43 5f  LE, void*, PRPC_
3ab0: 50 4f 4c 49 43 59 29 3b 0a 09 52 50 43 5f 53 54  POLICY);..RPC_ST
3ac0: 41 54 55 53 20 52 70 63 4d 67 6d 74 49 6e 71 53  ATUS RpcMgmtInqS
3ad0: 65 72 76 65 72 50 72 69 6e 63 4e 61 6d 65 28 52  erverPrincName(R
3ae0: 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c  PC_BINDING_HANDL
3af0: 45 2c 20 75 69 6e 74 2c 20 63 68 61 72 2a 2a 29  E, uint, char**)
3b00: 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ;..RPC_STATUS Rp
3b10: 63 53 65 72 76 65 72 49 6e 71 44 65 66 61 75 6c  cServerInqDefaul
3b20: 74 50 72 69 6e 63 4e 61 6d 65 28 75 69 6e 74 2c  tPrincName(uint,
3b30: 20 63 68 61 72 2a 2a 29 3b 0a 09 52 50 43 5f 53   char**);..RPC_S
3b40: 54 41 54 55 53 20 52 70 63 4e 73 42 69 6e 64 69  TATUS RpcNsBindi
3b50: 6e 67 49 6e 71 45 6e 74 72 79 4e 61 6d 65 28 52  ngInqEntryName(R
3b60: 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c  PC_BINDING_HANDL
3b70: 45 2c 20 75 69 6e 74 2c 20 63 68 61 72 2a 2a 29  E, uint, char**)
3b80: 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52 70  ;..RPC_STATUS Rp
3b90: 63 42 69 6e 64 69 6e 67 49 6e 71 41 75 74 68 43  cBindingInqAuthC
3ba0: 6c 69 65 6e 74 28 52 50 43 5f 42 49 4e 44 49 4e  lient(RPC_BINDIN
3bb0: 47 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 41 55  G_HANDLE, RPC_AU
3bc0: 54 48 5a 5f 48 41 4e 44 4c 45 2a 2c 20 63 68 61  THZ_HANDLE*, cha
3bd0: 72 2a 2a 2c 20 75 69 6e 74 2a 2c 20 75 69 6e 74  r**, uint*, uint
3be0: 2a 2c 20 75 69 6e 74 2a 29 3b 0a 09 52 50 43 5f  *, uint*);..RPC_
3bf0: 53 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e  STATUS RpcBindin
3c00: 67 49 6e 71 41 75 74 68 49 6e 66 6f 28 52 50 43  gInqAuthInfo(RPC
3c10: 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c  _BINDING_HANDLE,
3c20: 20 63 68 61 72 2a 2a 2c 20 75 69 6e 74 2a 2c 20   char**, uint*, 
3c30: 75 69 6e 74 2a 2c 20 52 50 43 5f 41 55 54 48 5f  uint*, RPC_AUTH_
3c40: 49 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2a  IDENTITY_HANDLE*
3c50: 2c 20 75 69 6e 74 2a 29 3b 0a 09 52 50 43 5f 53  , uint*);..RPC_S
3c60: 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67  TATUS RpcBinding
3c70: 53 65 74 41 75 74 68 49 6e 66 6f 28 52 50 43 5f  SetAuthInfo(RPC_
3c80: 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20  BINDING_HANDLE, 
3c90: 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 75 69 6e  char*, uint, uin
3ca0: 74 2c 20 52 50 43 5f 41 55 54 48 5f 49 44 45 4e  t, RPC_AUTH_IDEN
3cb0: 54 49 54 59 5f 48 41 4e 44 4c 45 2c 20 75 69 6e  TITY_HANDLE, uin
3cc0: 74 29 3b 0a 09 61 6c 69 61 73 20 76 6f 69 64 20  t);..alias void 
3cd0: 66 75 6e 63 74 69 6f 6e 28 76 6f 69 64 2a 2c 20  function(void*, 
3ce0: 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20 76 6f 69  char*, uint, voi
3cf0: 64 2a 2a 2c 20 52 50 43 5f 53 54 41 54 55 53 2a  d**, RPC_STATUS*
3d00: 29 20 52 50 43 5f 41 55 54 48 5f 4b 45 59 5f 52  ) RPC_AUTH_KEY_R
3d10: 45 54 52 49 45 56 41 4c 5f 46 4e 3b 0a 09 52 50  ETRIEVAL_FN;..RP
3d20: 43 5f 53 54 41 54 55 53 20 52 70 63 53 65 72 76  C_STATUS RpcServ
3d30: 65 72 52 65 67 69 73 74 65 72 41 75 74 68 49 6e  erRegisterAuthIn
3d40: 66 6f 28 63 68 61 72 2a 2c 20 75 69 6e 74 2c 20  fo(char*, uint, 
3d50: 52 50 43 5f 41 55 54 48 5f 4b 45 59 5f 52 45 54  RPC_AUTH_KEY_RET
3d60: 52 49 45 56 41 4c 5f 46 4e 2c 20 76 6f 69 64 2a  RIEVAL_FN, void*
3d70: 29 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 55  );..RPC_STATUS U
3d80: 75 69 64 54 6f 53 74 72 69 6e 67 28 55 55 49 44  uidToString(UUID
3d90: 2a 2c 20 63 68 61 72 2a 2a 29 3b 0a 09 52 50 43  *, char**);..RPC
3da0: 5f 53 54 41 54 55 53 20 55 75 69 64 46 72 6f 6d  _STATUS UuidFrom
3db0: 53 74 72 69 6e 67 28 63 68 61 72 2a 2c 20 55 55  String(char*, UU
3dc0: 49 44 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54 55  ID*);..RPC_STATU
3dd0: 53 20 52 70 63 45 70 52 65 67 69 73 74 65 72 4e  S RpcEpRegisterN
3de0: 6f 52 65 70 6c 61 63 65 28 52 50 43 5f 49 46 5f  oReplace(RPC_IF_
3df0: 48 41 4e 44 4c 45 2c 20 52 50 43 5f 42 49 4e 44  HANDLE, RPC_BIND
3e00: 49 4e 47 5f 56 45 43 54 4f 52 2a 2c 20 55 55 49  ING_VECTOR*, UUI
3e10: 44 5f 56 45 43 54 4f 52 2a 2c 20 63 68 61 72 2a  D_VECTOR*, char*
3e20: 29 3b 0a 09 52 50 43 5f 53 54 41 54 55 53 20 52  );..RPC_STATUS R
3e30: 70 63 45 70 52 65 67 69 73 74 65 72 28 52 50 43  pcEpRegister(RPC
3e40: 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f  _IF_HANDLE, RPC_
3e50: 42 49 4e 44 49 4e 47 5f 56 45 43 54 4f 52 2a 2c  BINDING_VECTOR*,
3e60: 20 55 55 49 44 5f 56 45 43 54 4f 52 2a 2c 20 63   UUID_VECTOR*, c
3e70: 68 61 72 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54  har*);..RPC_STAT
3e80: 55 53 20 44 63 65 45 72 72 6f 72 49 6e 71 54 65  US DceErrorInqTe
3e90: 78 74 28 52 50 43 5f 53 54 41 54 55 53 2c 20 63  xt(RPC_STATUS, c
3ea0: 68 61 72 2a 29 3b 0a 09 52 50 43 5f 53 54 41 54  har*);..RPC_STAT
3eb0: 55 53 20 52 70 63 4d 67 6d 74 45 70 45 6c 74 49  US RpcMgmtEpEltI
3ec0: 6e 71 4e 65 78 74 28 52 50 43 5f 45 50 5f 49 4e  nqNext(RPC_EP_IN
3ed0: 51 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 49 46  Q_HANDLE, RPC_IF
3ee0: 5f 49 44 2a 2c 20 52 50 43 5f 42 49 4e 44 49 4e  _ID*, RPC_BINDIN
3ef0: 47 5f 48 41 4e 44 4c 45 2a 2c 20 63 68 61 72 2a  G_HANDLE*, char*
3f00: 2a 29 3b 0a 7d 2f 2f 20 5f 57 49 4e 33 32 5f 57  *);.}// _WIN32_W
3f10: 49 4e 4e 54 5f 4f 4e 4c 59 0a 0a 0a 52 50 43 5f  INNT_ONLY...RPC_
3f20: 53 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e  STATUS RpcBindin
3f30: 67 43 6f 70 79 28 52 50 43 5f 42 49 4e 44 49 4e  gCopy(RPC_BINDIN
3f40: 47 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 42 49  G_HANDLE, RPC_BI
3f50: 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2a 29 3b 0a  NDING_HANDLE*);.
3f60: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 42 69  RPC_STATUS RpcBi
3f70: 6e 64 69 6e 67 46 72 65 65 28 52 50 43 5f 42 49  ndingFree(RPC_BI
3f80: 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2a 29 3b 0a  NDING_HANDLE*);.
3f90: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 42 69  RPC_STATUS RpcBi
3fa0: 6e 64 69 6e 67 49 6e 71 4f 62 6a 65 63 74 28 52  ndingInqObject(R
3fb0: 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c  PC_BINDING_HANDL
3fc0: 45 2c 20 55 55 49 44 2a 29 3b 0a 52 50 43 5f 53  E, UUID*);.RPC_S
3fd0: 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67  TATUS RpcBinding
3fe0: 52 65 73 65 74 28 52 50 43 5f 42 49 4e 44 49 4e  Reset(RPC_BINDIN
3ff0: 47 5f 48 41 4e 44 4c 45 29 3b 0a 52 50 43 5f 53  G_HANDLE);.RPC_S
4000: 54 41 54 55 53 20 52 70 63 42 69 6e 64 69 6e 67  TATUS RpcBinding
4010: 53 65 74 4f 62 6a 65 63 74 28 52 50 43 5f 42 49  SetObject(RPC_BI
4020: 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 55 55  NDING_HANDLE, UU
4030: 49 44 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53  ID*);.RPC_STATUS
4040: 20 52 70 63 4d 67 6d 74 49 6e 71 44 65 66 61 75   RpcMgmtInqDefau
4050: 6c 74 50 72 6f 74 65 63 74 4c 65 76 65 6c 28 75  ltProtectLevel(u
4060: 69 6e 74 2c 20 75 69 6e 74 2a 29 3b 0a 52 50 43  int, uint*);.RPC
4070: 5f 53 54 41 54 55 53 20 52 70 63 42 69 6e 64 69  _STATUS RpcBindi
4080: 6e 67 56 65 63 74 6f 72 46 72 65 65 28 52 50 43  ngVectorFree(RPC
4090: 5f 42 49 4e 44 49 4e 47 5f 56 45 43 54 4f 52 2a  _BINDING_VECTOR*
40a0: 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52  *);.RPC_STATUS R
40b0: 70 63 49 66 49 6e 71 49 64 28 52 50 43 5f 49 46  pcIfInqId(RPC_IF
40c0: 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 49 46 5f  _HANDLE, RPC_IF_
40d0: 49 44 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53  ID*);.RPC_STATUS
40e0: 20 52 70 63 4d 67 6d 74 49 6e 71 43 6f 6d 54 69   RpcMgmtInqComTi
40f0: 6d 65 6f 75 74 28 52 50 43 5f 42 49 4e 44 49 4e  meout(RPC_BINDIN
4100: 47 5f 48 41 4e 44 4c 45 2c 20 75 69 6e 74 2a 29  G_HANDLE, uint*)
4110: 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ;.RPC_STATUS Rpc
4120: 4d 67 6d 74 53 65 74 43 6f 6d 54 69 6d 65 6f 75  MgmtSetComTimeou
4130: 74 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41  t(RPC_BINDING_HA
4140: 4e 44 4c 45 2c 20 75 69 6e 74 29 3b 0a 52 50 43  NDLE, uint);.RPC
4150: 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d 74 53  _STATUS RpcMgmtS
4160: 65 74 43 61 6e 63 65 6c 54 69 6d 65 6f 75 74 28  etCancelTimeout(
4170: 69 6e 74 20 54 69 6d 65 6f 75 74 29 3b 0a 52 50  int Timeout);.RP
4180: 43 5f 53 54 41 54 55 53 20 52 70 63 4f 62 6a 65  C_STATUS RpcObje
4190: 63 74 49 6e 71 54 79 70 65 28 55 55 49 44 2a 2c  ctInqType(UUID*,
41a0: 20 55 55 49 44 2a 29 3b 0a 52 50 43 5f 53 54 41   UUID*);.RPC_STA
41b0: 54 55 53 20 52 70 63 4f 62 6a 65 63 74 53 65 74  TUS RpcObjectSet
41c0: 49 6e 71 46 6e 28 52 50 43 5f 4f 42 4a 45 43 54  InqFn(RPC_OBJECT
41d0: 5f 49 4e 51 5f 46 4e 2a 29 3b 0a 52 50 43 5f 53  _INQ_FN*);.RPC_S
41e0: 54 41 54 55 53 20 52 70 63 4f 62 6a 65 63 74 53  TATUS RpcObjectS
41f0: 65 74 54 79 70 65 28 55 55 49 44 2a 2c 20 55 55  etType(UUID*, UU
4200: 49 44 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53  ID*);.RPC_STATUS
4210: 20 52 70 63 50 72 6f 74 73 65 71 56 65 63 74 6f   RpcProtseqVecto
4220: 72 46 72 65 65 28 52 50 43 5f 50 52 4f 54 53 45  rFree(RPC_PROTSE
4230: 51 5f 56 45 43 54 4f 52 2a 2a 29 3b 0a 52 50 43  Q_VECTOR**);.RPC
4240: 5f 53 54 41 54 55 53 20 52 70 63 53 65 72 76 65  _STATUS RpcServe
4250: 72 49 6e 71 49 66 28 52 50 43 5f 49 46 5f 48 41  rInqIf(RPC_IF_HA
4260: 4e 44 4c 45 2c 20 55 55 49 44 2a 2c 20 52 50 43  NDLE, UUID*, RPC
4270: 5f 4d 47 52 5f 45 50 56 2a 2a 29 3b 0a 52 50 43  _MGR_EPV**);.RPC
4280: 5f 53 54 41 54 55 53 20 52 70 63 53 65 72 76 65  _STATUS RpcServe
4290: 72 4c 69 73 74 65 6e 28 75 69 6e 74 2c 20 75 69  rListen(uint, ui
42a0: 6e 74 2c 20 75 69 6e 74 29 3b 0a 52 50 43 5f 53  nt, uint);.RPC_S
42b0: 54 41 54 55 53 20 52 70 63 53 65 72 76 65 72 52  TATUS RpcServerR
42c0: 65 67 69 73 74 65 72 49 66 28 52 50 43 5f 49 46  egisterIf(RPC_IF
42d0: 5f 48 41 4e 44 4c 45 2c 20 55 55 49 44 2a 2c 20  _HANDLE, UUID*, 
42e0: 52 50 43 5f 4d 47 52 5f 45 50 56 2a 29 3b 0a 52  RPC_MGR_EPV*);.R
42f0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 53 65 72  PC_STATUS RpcSer
4300: 76 65 72 52 65 67 69 73 74 65 72 49 66 45 78 28  verRegisterIfEx(
4310: 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 55  RPC_IF_HANDLE, U
4320: 55 49 44 2a 2c 20 52 50 43 5f 4d 47 52 5f 45 50  UID*, RPC_MGR_EP
4330: 56 2a 2c 20 75 69 6e 74 2c 20 75 69 6e 74 2c 20  V*, uint, uint, 
4340: 52 50 43 5f 49 46 5f 43 41 4c 4c 42 41 43 4b 5f  RPC_IF_CALLBACK_
4350: 46 4e 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53  FN*);.RPC_STATUS
4360: 20 52 70 63 53 65 72 76 65 72 52 65 67 69 73 74   RpcServerRegist
4370: 65 72 49 66 32 28 52 50 43 5f 49 46 5f 48 41 4e  erIf2(RPC_IF_HAN
4380: 44 4c 45 2c 20 55 55 49 44 2a 2c 20 52 50 43 5f  DLE, UUID*, RPC_
4390: 4d 47 52 5f 45 50 56 2a 2c 20 75 69 6e 74 2c 20  MGR_EPV*, uint, 
43a0: 75 69 6e 74 2c 20 75 69 6e 74 2c 20 52 50 43 5f  uint, uint, RPC_
43b0: 49 46 5f 43 41 4c 4c 42 41 43 4b 5f 46 4e 2a 29  IF_CALLBACK_FN*)
43c0: 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ;.RPC_STATUS Rpc
43d0: 53 65 72 76 65 72 55 6e 72 65 67 69 73 74 65 72  ServerUnregister
43e0: 49 66 28 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45  If(RPC_IF_HANDLE
43f0: 2c 20 55 55 49 44 2a 2c 20 75 69 6e 74 29 3b 0a  , UUID*, uint);.
4400: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53 65  RPC_STATUS RpcSe
4410: 72 76 65 72 55 73 65 41 6c 6c 50 72 6f 74 73 65  rverUseAllProtse
4420: 71 73 28 75 69 6e 74 2c 20 76 6f 69 64 2a 29 3b  qs(uint, void*);
4430: 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53  .RPC_STATUS RpcS
4440: 65 72 76 65 72 55 73 65 41 6c 6c 50 72 6f 74 73  erverUseAllProts
4450: 65 71 73 45 78 28 75 69 6e 74 2c 20 76 6f 69 64  eqsEx(uint, void
4460: 2a 2c 20 50 52 50 43 5f 50 4f 4c 49 43 59 29 3b  *, PRPC_POLICY);
4470: 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 53  .RPC_STATUS RpcS
4480: 65 72 76 65 72 55 73 65 41 6c 6c 50 72 6f 74 73  erverUseAllProts
4490: 65 71 73 49 66 28 75 69 6e 74 2c 20 52 50 43 5f  eqsIf(uint, RPC_
44a0: 49 46 5f 48 41 4e 44 4c 45 2c 20 76 6f 69 64 2a  IF_HANDLE, void*
44b0: 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70  );.RPC_STATUS Rp
44c0: 63 53 65 72 76 65 72 55 73 65 41 6c 6c 50 72 6f  cServerUseAllPro
44d0: 74 73 65 71 73 49 66 45 78 28 75 69 6e 74 2c 20  tseqsIfEx(uint, 
44e0: 52 50 43 5f 49 46 5f 48 41 4e 44 4c 45 2c 20 76  RPC_IF_HANDLE, v
44f0: 6f 69 64 2a 2c 20 50 52 50 43 5f 50 4f 4c 49 43  oid*, PRPC_POLIC
4500: 59 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52  Y);.RPC_STATUS R
4510: 70 63 4d 67 6d 74 53 74 61 74 73 56 65 63 74 6f  pcMgmtStatsVecto
4520: 72 46 72 65 65 28 52 50 43 5f 53 54 41 54 53 5f  rFree(RPC_STATS_
4530: 56 45 43 54 4f 52 2a 2a 29 3b 0a 52 50 43 5f 53  VECTOR**);.RPC_S
4540: 54 41 54 55 53 20 52 70 63 4d 67 6d 74 49 6e 71  TATUS RpcMgmtInq
4550: 53 74 61 74 73 28 52 50 43 5f 42 49 4e 44 49 4e  Stats(RPC_BINDIN
4560: 47 5f 48 41 4e 44 4c 45 2c 20 52 50 43 5f 53 54  G_HANDLE, RPC_ST
4570: 41 54 53 5f 56 45 43 54 4f 52 2a 2a 29 3b 0a 52  ATS_VECTOR**);.R
4580: 50 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d  PC_STATUS RpcMgm
4590: 74 49 73 53 65 72 76 65 72 4c 69 73 74 65 6e 69  tIsServerListeni
45a0: 6e 67 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48  ng(RPC_BINDING_H
45b0: 41 4e 44 4c 45 29 3b 0a 52 50 43 5f 53 54 41 54  ANDLE);.RPC_STAT
45c0: 55 53 20 52 70 63 4d 67 6d 74 53 74 6f 70 53 65  US RpcMgmtStopSe
45d0: 72 76 65 72 4c 69 73 74 65 6e 69 6e 67 28 52 50  rverListening(RP
45e0: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
45f0: 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70  );.RPC_STATUS Rp
4600: 63 4d 67 6d 74 57 61 69 74 53 65 72 76 65 72 4c  cMgmtWaitServerL
4610: 69 73 74 65 6e 28 29 3b 0a 52 50 43 5f 53 54 41  isten();.RPC_STA
4620: 54 55 53 20 52 70 63 4d 67 6d 74 53 65 74 53 65  TUS RpcMgmtSetSe
4630: 72 76 65 72 53 74 61 63 6b 53 69 7a 65 28 75 69  rverStackSize(ui
4640: 6e 74 29 3b 0a 76 6f 69 64 20 52 70 63 53 73 44  nt);.void RpcSsD
4650: 6f 6e 74 53 65 72 69 61 6c 69 7a 65 43 6f 6e 74  ontSerializeCont
4660: 65 78 74 28 29 3b 0a 52 50 43 5f 53 54 41 54 55  ext();.RPC_STATU
4670: 53 20 52 70 63 4d 67 6d 74 45 6e 61 62 6c 65 49  S RpcMgmtEnableI
4680: 64 6c 65 43 6c 65 61 6e 75 70 28 29 3b 0a 52 50  dleCleanup();.RP
4690: 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d 74  C_STATUS RpcMgmt
46a0: 49 6e 71 49 66 49 64 73 28 52 50 43 5f 42 49 4e  InqIfIds(RPC_BIN
46b0: 44 49 4e 47 5f 48 41 4e 44 4c 45 2c 20 52 50 43  DING_HANDLE, RPC
46c0: 5f 49 46 5f 49 44 5f 56 45 43 54 4f 52 2a 2a 29  _IF_ID_VECTOR**)
46d0: 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70 63  ;.RPC_STATUS Rpc
46e0: 49 66 49 64 56 65 63 74 6f 72 46 72 65 65 28 52  IfIdVectorFree(R
46f0: 50 43 5f 49 46 5f 49 44 5f 56 45 43 54 4f 52 2a  PC_IF_ID_VECTOR*
4700: 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52  *);.RPC_STATUS R
4710: 70 63 45 70 52 65 73 6f 6c 76 65 42 69 6e 64 69  pcEpResolveBindi
4720: 6e 67 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48  ng(RPC_BINDING_H
4730: 41 4e 44 4c 45 2c 20 52 50 43 5f 49 46 5f 48 41  ANDLE, RPC_IF_HA
4740: 4e 44 4c 45 29 3b 0a 52 50 43 5f 53 54 41 54 55  NDLE);.RPC_STATU
4750: 53 20 52 70 63 42 69 6e 64 69 6e 67 53 65 72 76  S RpcBindingServ
4760: 65 72 46 72 6f 6d 43 6c 69 65 6e 74 28 52 50 43  erFromClient(RPC
4770: 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45 2c  _BINDING_HANDLE,
4780: 20 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e   RPC_BINDING_HAN
4790: 44 4c 45 2a 29 3b 0a 0a 2f 2f 20 6e 65 76 65 72  DLE*);..// never
47a0: 20 72 65 74 75 72 6e 73 0a 76 6f 69 64 20 52 70   returns.void Rp
47b0: 63 52 61 69 73 65 45 78 63 65 70 74 69 6f 6e 28  cRaiseException(
47c0: 52 50 43 5f 53 54 41 54 55 53 29 3b 0a 52 50 43  RPC_STATUS);.RPC
47d0: 5f 53 54 41 54 55 53 20 52 70 63 54 65 73 74 43  _STATUS RpcTestC
47e0: 61 6e 63 65 6c 28 29 3b 0a 52 50 43 5f 53 54 41  ancel();.RPC_STA
47f0: 54 55 53 20 52 70 63 43 61 6e 63 65 6c 54 68 72  TUS RpcCancelThr
4800: 65 61 64 28 76 6f 69 64 2a 29 3b 0a 52 50 43 5f  ead(void*);.RPC_
4810: 53 54 41 54 55 53 20 55 75 69 64 43 72 65 61 74  STATUS UuidCreat
4820: 65 28 55 55 49 44 2a 29 3b 0a 69 6e 74 20 55 75  e(UUID*);.int Uu
4830: 69 64 43 6f 6d 70 61 72 65 28 55 55 49 44 2a 2c  idCompare(UUID*,
4840: 20 55 55 49 44 2a 2c 20 52 50 43 5f 53 54 41 54   UUID*, RPC_STAT
4850: 55 53 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55 53  US*);.RPC_STATUS
4860: 20 55 75 69 64 43 72 65 61 74 65 4e 69 6c 28 55   UuidCreateNil(U
4870: 55 49 44 2a 29 3b 0a 69 6e 74 20 55 75 69 64 45  UID*);.int UuidE
4880: 71 75 61 6c 28 55 55 49 44 2a 2c 20 55 55 49 44  qual(UUID*, UUID
4890: 2a 2c 20 52 50 43 5f 53 54 41 54 55 53 2a 29 3b  *, RPC_STATUS*);
48a0: 0a 75 73 68 6f 72 74 20 55 75 69 64 48 61 73 68  .ushort UuidHash
48b0: 28 55 55 49 44 2a 2c 20 52 50 43 5f 53 54 41 54  (UUID*, RPC_STAT
48c0: 55 53 2a 29 3b 0a 69 6e 74 20 55 75 69 64 49 73  US*);.int UuidIs
48d0: 4e 69 6c 28 55 55 49 44 2a 2c 20 52 50 43 5f 53  Nil(UUID*, RPC_S
48e0: 54 41 54 55 53 2a 29 3b 0a 52 50 43 5f 53 54 41  TATUS*);.RPC_STA
48f0: 54 55 53 20 52 70 63 45 70 55 6e 72 65 67 69 73  TUS RpcEpUnregis
4900: 74 65 72 28 52 50 43 5f 49 46 5f 48 41 4e 44 4c  ter(RPC_IF_HANDL
4910: 45 2c 20 52 50 43 5f 42 49 4e 44 49 4e 47 5f 56  E, RPC_BINDING_V
4920: 45 43 54 4f 52 2a 2c 20 55 55 49 44 5f 56 45 43  ECTOR*, UUID_VEC
4930: 54 4f 52 2a 29 3b 0a 52 50 43 5f 53 54 41 54 55  TOR*);.RPC_STATU
4940: 53 20 52 70 63 4d 67 6d 74 45 70 45 6c 74 49 6e  S RpcMgmtEpEltIn
4950: 71 42 65 67 69 6e 28 52 50 43 5f 42 49 4e 44 49  qBegin(RPC_BINDI
4960: 4e 47 5f 48 41 4e 44 4c 45 2c 20 75 69 6e 74 2c  NG_HANDLE, uint,
4970: 20 52 50 43 5f 49 46 5f 49 44 2a 2c 20 75 69 6e   RPC_IF_ID*, uin
4980: 74 2c 20 55 55 49 44 2a 2c 20 52 50 43 5f 45 50  t, UUID*, RPC_EP
4990: 5f 49 4e 51 5f 48 41 4e 44 4c 45 2a 29 3b 0a 52  _INQ_HANDLE*);.R
49a0: 50 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d  PC_STATUS RpcMgm
49b0: 74 45 70 45 6c 74 49 6e 71 44 6f 6e 65 28 52 50  tEpEltInqDone(RP
49c0: 43 5f 45 50 5f 49 4e 51 5f 48 41 4e 44 4c 45 2a  C_EP_INQ_HANDLE*
49d0: 29 3b 0a 52 50 43 5f 53 54 41 54 55 53 20 52 70  );.RPC_STATUS Rp
49e0: 63 4d 67 6d 74 45 70 55 6e 72 65 67 69 73 74 65  cMgmtEpUnregiste
49f0: 72 28 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41  r(RPC_BINDING_HA
4a00: 4e 44 4c 45 2c 20 52 50 43 5f 49 46 5f 49 44 2a  NDLE, RPC_IF_ID*
4a10: 2c 20 52 50 43 5f 42 49 4e 44 49 4e 47 5f 48 41  , RPC_BINDING_HA
4a20: 4e 44 4c 45 2c 20 55 55 49 44 2a 29 3b 0a 52 50  NDLE, UUID*);.RP
4a30: 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d 74  C_STATUS RpcMgmt
4a40: 53 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e  SetAuthorization
4a50: 46 6e 28 52 50 43 5f 4d 47 4d 54 5f 41 55 54 48  Fn(RPC_MGMT_AUTH
4a60: 4f 52 49 5a 41 54 49 4f 4e 5f 46 4e 29 3b 0a 52  ORIZATION_FN);.R
4a70: 50 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67 6d  PC_STATUS RpcMgm
4a80: 74 49 6e 71 50 61 72 61 6d 65 74 65 72 28 75 69  tInqParameter(ui
4a90: 6e 74 2c 20 75 69 6e 74 2a 29 3b 0a 52 50 43 5f  nt, uint*);.RPC_
4aa0: 53 54 41 54 55 53 20 52 70 63 4d 67 6d 74 53 65  STATUS RpcMgmtSe
4ab0: 74 50 61 72 61 6d 65 74 65 72 28 75 69 6e 74 2c  tParameter(uint,
4ac0: 20 75 69 6e 74 29 3b 0a 52 50 43 5f 53 54 41 54   uint);.RPC_STAT
4ad0: 55 53 20 52 70 63 4d 67 6d 74 42 69 6e 64 69 6e  US RpcMgmtBindin
4ae0: 67 49 6e 71 50 61 72 61 6d 65 74 65 72 28 52 50  gInqParameter(RP
4af0: 43 5f 42 49 4e 44 49 4e 47 5f 48 41 4e 44 4c 45  C_BINDING_HANDLE
4b00: 2c 20 75 69 6e 74 2c 20 75 69 6e 74 2a 29 3b 0a  , uint, uint*);.
4b10: 52 50 43 5f 53 54 41 54 55 53 20 52 70 63 4d 67  RPC_STATUS RpcMg
4b20: 6d 74 42 69 6e 64 69 6e 67 53 65 74 50 61 72 61  mtBindingSetPara
4b30: 6d 65 74 65 72 28 52 50 43 5f 42 49 4e 44 49 4e  meter(RPC_BINDIN
4b40: 47 5f 48 41 4e 44 4c 45 2c 20 75 69 6e 74 2c 20  G_HANDLE, uint, 
4b50: 75 69 6e 74 29 3b 0a 0a 73 74 61 74 69 63 20 69  uint);..static i
4b60: 66 20 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20  f (_WIN32_WINNT 
4b70: 3e 3d 20 30 78 30 35 30 30 29 20 7b 0a 09 52 50  >= 0x0500) {..RP
4b80: 43 5f 53 54 41 54 55 53 20 55 75 69 64 43 72 65  C_STATUS UuidCre
4b90: 61 74 65 53 65 71 75 65 6e 74 69 61 6c 28 55 55  ateSequential(UU
4ba0: 49 44 2a 29 3b 0a 7d 0a                          ID*);.}.