ReactOS 0.4.15-dev-8428-g6910fa6
epm.idl
Go to the documentation of this file.
1/*
2 * Endpoint Mapper
3 *
4 * Copyright 2006 Robert Shearman (for CodeWeavers)
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21/* FIXME: should be import */
22#include "dcetypes.idl"
23
24cpp_quote("RPC_STATUS WINAPI TowerExplode(")
26cpp_quote(" char **protseq, char **endpoint, char **address);")
29cpp_quote(" const char *protseq, const char *endpoint, const char *address,")
30cpp_quote(" twr_t **tower);")
31
32[
33 uuid(e1af8308-5d1f-11c9-91a4-08002b14a0fa),
34 version(3.0),
36]
38{
39 const long ept_max_annotation_size = 64;
40
41 typedef struct
42 {
45 [string] char annotation[ept_max_annotation_size];
46 } ept_entry_t, *ept_entry_p_t;
47
48 typedef [context_handle] void *ept_lookup_handle_t;
49
50 /* Adds entries to an endpoint map */
52 [in] handle_t h,
53 [in] unsigned32 num_ents,
54 [in, size_is(num_ents)]
55 ept_entry_t entries[],
58 );
59
60 /* Removes entries from an endpoint map */
62 [in] handle_t h,
63 [in] unsigned32 num_ents,
64 [in, size_is(num_ents)]
65 ept_entry_t entries[],
67 );
68
69 /* Lookup entries in an endpoint map */
70 [idempotent]
72 [in] handle_t h,
73 [in] unsigned32 inquiry_type,
74 [in] uuid_p_t object,
75 [in] rpc_if_id_p_t interface_id,
76 [in] unsigned32 vers_option,
77 [in, out] ept_lookup_handle_t *entry_handle,
78 [in] unsigned32 max_ents,
79 [out] unsigned32 *num_ents,
80 [out, length_is(*num_ents), size_is(max_ents)]
81 ept_entry_t entries[],
83 );
84
85 /* Lookup entries in an endpoint map using the given input pattern */
86 [idempotent]
87 void ept_map(
88 [in] handle_t h,
89 [in] uuid_p_t object,
90 [in] twr_p_t map_tower,
91 [in, out] ept_lookup_handle_t *entry_handle,
92 [in] unsigned32 max_towers,
93 [out] unsigned32 *num_towers,
94 [out, length_is(*num_towers), size_is(max_towers)]
95 twr_p_t *towers,
97 );
98
99 /* Free the context handle returned by ept_lookup or ept_map */
101 [in] handle_t h,
102 [in, out] ept_lookup_handle_t *entry_handle,
104 );
105
106 /* Inquires as to the endpoint map's object identifier */
107 [idempotent]
109 [in] handle_t h,
110 [out] GUID *ept_object,
112 );
113
114 /* Deletes matching entries in the endpoint map */
116 [in] handle_t h,
117 [in] boolean32 object_speced,
118 [in] uuid_p_t object,
119 [in] twr_p_t tower,
121 );
122}
unsigned long error_status_t
Definition: basetyps.h:83
#define interface
Definition: basetyps.h:61
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const
Definition: d3d10.idl:491
unsigned32 boolean32
Definition: dcetypes.idl:30
coclass PSFactoryBuffer pointer_default(unique)] interface ObjectRpcBaseTypes
Definition: dcom.idl:35
#define annotation(x)
Definition: dispex.idl:19
static const WCHAR version[]
Definition: asmname.c:66
GLuint address
Definition: glext.h:9393
GLuint in
Definition: glext.h:9616
GLfloat GLfloat GLfloat GLfloat h
Definition: glext.h:7723
Definition: epm.idl:38
void * ept_lookup_handle_t
Definition: epm.idl:48
void ept_lookup([in] handle_t h, [in] unsigned32 inquiry_type, [in] uuid_p_t object, [in] rpc_if_id_p_t interface_id, [in] unsigned32 vers_option, [in, out] ept_lookup_handle_t *entry_handle, [in] unsigned32 max_ents, [out] unsigned32 *num_ents, [out, length_is(*num_ents), size_is(max_ents)] ept_entry_t entries[], [out] error_status_t *status)
void ept_inq_object([in] handle_t h, [out] GUID *ept_object, [out] error_status_t *status)
void ept_delete([in] handle_t h, [in] unsigned32 num_ents, [in, size_is(num_ents)] ept_entry_t entries[], [out] error_status_t *status)
void ept_insert([in] handle_t h, [in] unsigned32 num_ents, [in, size_is(num_ents)] ept_entry_t entries[], [in] boolean32 replace, [out] error_status_t *status)
void ept_map([in] handle_t h, [in] uuid_p_t object, [in] twr_p_t map_tower, [in, out] ept_lookup_handle_t *entry_handle, [in] unsigned32 max_towers, [out] unsigned32 *num_towers, [out, length_is(*num_towers), size_is(max_towers)] twr_p_t *towers, [out] error_status_t *status)
void ept_mgmt_delete([in] handle_t h, [in] boolean32 object_speced, [in] uuid_p_t object, [in] twr_p_t tower, [out] error_status_t *status)
void ept_lookup_handle_free([in] handle_t h, [in, out] ept_lookup_handle_t *entry_handle, [out] error_status_t *status)
Definition: msctf.idl:550
char string[160]
Definition: util.h:11
static const struct update_accum a4
Definition: msg.c:2285
unsigned int unsigned32
Definition: rpc.c:43
static FILE * out
Definition: regtests2xml.c:44
INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *doMore)
Definition: replace.c:38
long RPC_STATUS
Definition: rpc.h:52
RPC_STATUS WINAPI TowerConstruct(const RPC_SYNTAX_IDENTIFIER *object, const RPC_SYNTAX_IDENTIFIER *syntax, const char *protseq, const char *endpoint, const char *address, twr_t **tower)
Definition: rpc_epmap.c:596
Definition: nis.h:10
Definition: epm.idl:42
twr_t * tower
Definition: epm.idl:44
GUID object
Definition: epm.idl:43
Definition: send.c:48
Definition: ps.c:97
Definition: rpc.c:45
#define WINAPI
Definition: msvc.h:6
#define const
Definition: zconf.h:233