4 * Copyright 2006 Robert Shearman (for CodeWeavers)
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.
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.
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
21 /* FIXME: should be import */
22 #include
"dcetypes.idl"
24 cpp_quote
("RPC_STATUS WINAPI TowerExplode(")
25 cpp_quote
(" const twr_t *tower, PRPC_SYNTAX_IDENTIFIER object, PRPC_SYNTAX_IDENTIFIER syntax,")
26 cpp_quote
(" char **protseq, char **endpoint, char **address);")
27 cpp_quote
("RPC_STATUS WINAPI TowerConstruct(")
28 cpp_quote
(" const RPC_SYNTAX_IDENTIFIER *object, const RPC_SYNTAX_IDENTIFIER *syntax,")
29 cpp_quote
(" const char *protseq, const char *endpoint, const char *address,")
30 cpp_quote
(" twr_t **tower);")
33 uuid(e1af8308
-5d1f
-11c9
-91a4
-08002b14a0fa
),
39 const long ept_max_annotation_size
= 64;
45 [string] char annotation
[ept_max_annotation_size
];
46 } ept_entry_t
, *ept_entry_p_t
;
48 typedef [context_handle] void *ept_lookup_handle_t
;
50 /* Adds entries to an endpoint map */
53 [in] unsigned32 num_ents
,
54 [in, size_is(num_ents
)]
55 ept_entry_t entries
[],
56 [in] boolean32 replace
,
57 [out] error_status_t *status
60 /* Removes entries from an endpoint map */
63 [in] unsigned32 num_ents
,
64 [in, size_is(num_ents
)]
65 ept_entry_t entries
[],
66 [out] error_status_t *status
69 /* Lookup entries in an endpoint map */
73 [in] unsigned32 inquiry_type
,
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
[],
82 [out] error_status_t *status
85 /* Lookup entries in an endpoint map using the given input pattern */
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
)]
96 [out] error_status_t *status
99 /* Free the context handle returned by ept_lookup or ept_map */
100 void ept_lookup_handle_free
(
102 [in, out] ept_lookup_handle_t
*entry_handle
,
103 [out] error_status_t *status
106 /* Inquires as to the endpoint map's object identifier */
110 [out] GUID
*ept_object
,
111 [out] error_status_t *status
114 /* Deletes matching entries in the endpoint map */
115 void ept_mgmt_delete
(
117 [in] boolean32 object_speced
,
118 [in] uuid_p_t
object,
120 [out] error_status_t *status