1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354
  
     | 
    
      /* header auto-generated by pidl */
#include <stdint.h>
#ifndef _HEADER_epmapper
#define _HEADER_epmapper
#define EPMAPPER_STATUS_NO_MORE_ENTRIES	( 0x16c9a0d6 )
#define EPMAPPER_STATUS_NO_MEMORY	( 0x16C9A012 )
#define EPMAPPER_STATUS_OK	( 0 )
enum epm_protocol
#ifndef USE_UINT_ENUMS
 {
	EPM_PROTOCOL_DNET_NSP=0x04,
	EPM_PROTOCOL_OSI_TP4=0x05,
	EPM_PROTOCOL_OSI_CLNS=0x06,
	EPM_PROTOCOL_TCP=0x07,
	EPM_PROTOCOL_UDP=0x08,
	EPM_PROTOCOL_IP=0x09,
	EPM_PROTOCOL_NCADG=0x0a,
	EPM_PROTOCOL_NCACN=0x0b,
	EPM_PROTOCOL_NCALRPC=0x0c,
	EPM_PROTOCOL_UUID=0x0d,
	EPM_PROTOCOL_IPX=0x0e,
	EPM_PROTOCOL_SMB=0x0f,
	EPM_PROTOCOL_PIPE=0x10,
	EPM_PROTOCOL_NETBIOS=0x11,
	EPM_PROTOCOL_NETBEUI=0x12,
	EPM_PROTOCOL_SPX=0x13,
	EPM_PROTOCOL_NB_IPX=0x14,
	EPM_PROTOCOL_DSP=0x16,
	EPM_PROTOCOL_DDP=0x17,
	EPM_PROTOCOL_APPLETALK=0x18,
	EPM_PROTOCOL_VINES_SPP=0x1a,
	EPM_PROTOCOL_VINES_IPC=0x1b,
	EPM_PROTOCOL_STREETTALK=0x1c,
	EPM_PROTOCOL_HTTP=0x1f,
	EPM_PROTOCOL_UNIX_DS=0x20,
	EPM_PROTOCOL_NULL=0x21
}
#else
 { __donnot_use_enum_epm_protocol=0x7FFFFFFF}
#define EPM_PROTOCOL_DNET_NSP ( 0x04 )
#define EPM_PROTOCOL_OSI_TP4 ( 0x05 )
#define EPM_PROTOCOL_OSI_CLNS ( 0x06 )
#define EPM_PROTOCOL_TCP ( 0x07 )
#define EPM_PROTOCOL_UDP ( 0x08 )
#define EPM_PROTOCOL_IP ( 0x09 )
#define EPM_PROTOCOL_NCADG ( 0x0a )
#define EPM_PROTOCOL_NCACN ( 0x0b )
#define EPM_PROTOCOL_NCALRPC ( 0x0c )
#define EPM_PROTOCOL_UUID ( 0x0d )
#define EPM_PROTOCOL_IPX ( 0x0e )
#define EPM_PROTOCOL_SMB ( 0x0f )
#define EPM_PROTOCOL_PIPE ( 0x10 )
#define EPM_PROTOCOL_NETBIOS ( 0x11 )
#define EPM_PROTOCOL_NETBEUI ( 0x12 )
#define EPM_PROTOCOL_SPX ( 0x13 )
#define EPM_PROTOCOL_NB_IPX ( 0x14 )
#define EPM_PROTOCOL_DSP ( 0x16 )
#define EPM_PROTOCOL_DDP ( 0x17 )
#define EPM_PROTOCOL_APPLETALK ( 0x18 )
#define EPM_PROTOCOL_VINES_SPP ( 0x1a )
#define EPM_PROTOCOL_VINES_IPC ( 0x1b )
#define EPM_PROTOCOL_STREETTALK ( 0x1c )
#define EPM_PROTOCOL_HTTP ( 0x1f )
#define EPM_PROTOCOL_UNIX_DS ( 0x20 )
#define EPM_PROTOCOL_NULL ( 0x21 )
#endif
;
struct epm_rhs_dnet_nsp {
	char _empty_;
};
struct epm_rhs_osi_tp4 {
	char _empty_;
};
struct epm_rhs_osi_clns {
	char _empty_;
};
struct epm_rhs_udp {
	uint16_t port;
};
struct epm_rhs_tcp {
	uint16_t port;
};
struct epm_rhs_ip {
	const char * ipaddr;
};
struct epm_rhs_ncadg {
	uint16_t minor_version;
};
struct epm_rhs_ncacn {
	uint16_t minor_version;
};
struct epm_rhs_uuid {
	DATA_BLOB unknown;/* [flag(LIBNDR_FLAG_REMAINING)] */
};
struct epm_rhs_ipx {
	char _empty_;
};
struct epm_rhs_smb {
	const char * unc;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
};
struct epm_rhs_pipe {
	const char * path;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
};
struct epm_rhs_netbios {
	const char * name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
};
struct epm_rhs_netbeui {
	char _empty_;
};
struct epm_rhs_spx {
	char _empty_;
};
struct epm_rhs_nb_ipx {
	char _empty_;
};
struct epm_rhs_http {
	uint16_t port;
};
struct epm_rhs_unix_ds {
	const char * path;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
};
struct epm_rhs_null {
	char _empty_;
};
struct epm_rhs_ncalrpc {
	uint16_t minor_version;
};
struct epm_rhs_appletalk {
	char _empty_;
};
struct epm_rhs_atalk_stream {
	char _empty_;
};
struct epm_rhs_atalk_datagram {
	char _empty_;
};
struct epm_rhs_vines_spp {
	uint16_t port;
};
struct epm_rhs_vines_ipc {
	uint16_t port;
};
struct epm_rhs_streettalk {
	const char * streettalk;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
};
union epm_rhs {
	struct epm_rhs_dnet_nsp dnet_nsp;/* [case(EPM_PROTOCOL_DNET_NSP)] */
	struct epm_rhs_osi_tp4 osi_tp4;/* [case(EPM_PROTOCOL_OSI_TP4)] */
	struct epm_rhs_osi_clns osi_clns;/* [case(EPM_PROTOCOL_OSI_CLNS)] */
	struct epm_rhs_tcp tcp;/* [case(EPM_PROTOCOL_TCP)] */
	struct epm_rhs_udp udp;/* [case(EPM_PROTOCOL_UDP)] */
	struct epm_rhs_ip ip;/* [case(EPM_PROTOCOL_IP)] */
	struct epm_rhs_ncadg ncadg;/* [case(EPM_PROTOCOL_NCADG)] */
	struct epm_rhs_ncacn ncacn;/* [case(EPM_PROTOCOL_NCACN)] */
	struct epm_rhs_ncalrpc ncalrpc;/* [case(EPM_PROTOCOL_NCALRPC)] */
	struct epm_rhs_uuid uuid;/* [case(EPM_PROTOCOL_UUID)] */
	struct epm_rhs_ipx ipx;/* [case(EPM_PROTOCOL_IPX)] */
	struct epm_rhs_smb smb;/* [case(EPM_PROTOCOL_SMB)] */
	struct epm_rhs_pipe pipe;/* [case(EPM_PROTOCOL_PIPE)] */
	struct epm_rhs_netbios netbios;/* [case(EPM_PROTOCOL_NETBIOS)] */
	struct epm_rhs_netbeui netbeui;/* [case(EPM_PROTOCOL_NETBEUI)] */
	struct epm_rhs_spx spx;/* [case(EPM_PROTOCOL_SPX)] */
	struct epm_rhs_nb_ipx nb_ipx;/* [case(EPM_PROTOCOL_NB_IPX)] */
	struct epm_rhs_atalk_stream atalk_stream;/* [case(EPM_PROTOCOL_DSP)] */
	struct epm_rhs_atalk_datagram atalk_datagram;/* [case(EPM_PROTOCOL_DDP)] */
	struct epm_rhs_appletalk appletalk;/* [case(EPM_PROTOCOL_APPLETALK)] */
	struct epm_rhs_vines_spp vines_spp;/* [case(EPM_PROTOCOL_VINES_SPP)] */
	struct epm_rhs_vines_ipc vines_ipc;/* [case(EPM_PROTOCOL_VINES_IPC)] */
	struct epm_rhs_streettalk streettalk;/* [case(EPM_PROTOCOL_STREETTALK)] */
	struct epm_rhs_http http;/* [case(EPM_PROTOCOL_HTTP)] */
	struct epm_rhs_unix_ds unix_ds;/* [case(EPM_PROTOCOL_UNIX_DS)] */
	struct epm_rhs_null null;/* [case(EPM_PROTOCOL_NULL)] */
	DATA_BLOB unknown;/* [default,flag(LIBNDR_FLAG_REMAINING)] */
}/* [nodiscriminant,flag(LIBNDR_FLAG_BIGENDIAN)] */;
struct epm_lhs {
	enum epm_protocol protocol;
	DATA_BLOB lhs_data;/* [flag(LIBNDR_FLAG_REMAINING)] */
};
struct epm_floor {
	struct epm_lhs lhs;/* [subcontext(2)] */
	union epm_rhs rhs;/* [subcontext(2),switch_is(lhs.protocol)] */
};
struct epm_tower {
	uint16_t num_floors;
	struct epm_floor *floors;
}/* [gensize,flag(LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN)] */;
struct epm_twr_t {
	uint32_t tower_length;/* [value(ndr_size_epm_tower(&tower,ndr->flags))] */
	struct epm_tower tower;/* [subcontext(4)] */
};
struct epm_entry_t {
	struct GUID object;
	struct epm_twr_t *tower;/* [ptr] */
	const char * annotation;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_LEN4)] */
};
struct rpc_if_id_t {
	struct GUID uuid;
	uint16_t vers_major;
	uint16_t vers_minor;
};
struct epm_twr_p_t {
	struct epm_twr_t *twr;/* [ptr] */
};
struct epm_Insert {
	struct {
		uint32_t num_ents;
		struct epm_entry_t *entries;/* [size_is(num_ents)] */
		uint32_t replace;
	} in;
	struct {
		uint32_t result;
	} out;
};
struct epm_Delete {
	struct {
		uint32_t num_ents;
		struct epm_entry_t *entries;/* [size_is(num_ents)] */
	} in;
	struct {
		uint32_t result;
	} out;
};
struct epm_Lookup {
	struct {
		uint32_t inquiry_type;
		struct GUID *object;/* [ptr] */
		struct rpc_if_id_t *interface_id;/* [ptr] */
		uint32_t vers_option;
		uint32_t max_ents;
		struct policy_handle *entry_handle;/* [ref] */
	} in;
	struct {
		uint32_t *num_ents;/* [ref] */
		struct epm_entry_t *entries;/* [length_is(*num_ents),size_is(max_ents)] */
		struct policy_handle *entry_handle;/* [ref] */
		uint32_t result;
	} out;
};
struct epm_Map {
	struct {
		struct GUID *object;/* [ptr] */
		struct epm_twr_t *map_tower;/* [ptr] */
		uint32_t max_towers;
		struct policy_handle *entry_handle;/* [ref] */
	} in;
	struct {
		uint32_t *num_towers;/* [ref] */
		struct epm_twr_p_t *towers;/* [length_is(*num_towers),size_is(max_towers)] */
		struct policy_handle *entry_handle;/* [ref] */
		uint32_t result;
	} out;
};
struct epm_LookupHandleFree {
	struct {
		struct policy_handle *entry_handle;/* [ref] */
	} in;
	struct {
		struct policy_handle *entry_handle;/* [ref] */
		uint32_t result;
	} out;
};
struct epm_InqObject {
	struct {
		struct GUID *epm_object;/* [ref] */
	} in;
	struct {
		uint32_t result;
	} out;
};
struct epm_MgmtDelete {
	struct {
		uint32_t object_speced;
		struct GUID *object;/* [ptr] */
		struct epm_twr_t *tower;/* [ptr] */
	} in;
	struct {
		uint32_t result;
	} out;
};
struct epm_MapAuth {
	struct {
		uint32_t result;
	} out;
};
#endif /* _HEADER_epmapper */
 
     |