1 #include "librpc/gen_ndr/ndr_winreg.h"
4 NTSTATUS rpccli_winreg_OpenHKCR(struct rpc_pipe_client *cli,
6 uint16_t *system_name /* [in] [unique] */,
7 uint32_t access_mask /* [in] */,
8 struct policy_handle *handle /* [out] [ref] */,
10 NTSTATUS rpccli_winreg_OpenHKCU(struct rpc_pipe_client *cli,
12 uint16_t *system_name /* [in] [unique] */,
13 uint32_t access_mask /* [in] */,
14 struct policy_handle *handle /* [out] [ref] */,
16 NTSTATUS rpccli_winreg_OpenHKLM(struct rpc_pipe_client *cli,
18 uint16_t *system_name /* [in] [unique] */,
19 uint32_t access_mask /* [in] */,
20 struct policy_handle *handle /* [out] [ref] */,
22 NTSTATUS rpccli_winreg_OpenHKPD(struct rpc_pipe_client *cli,
24 uint16_t *system_name /* [in] [unique] */,
25 uint32_t access_mask /* [in] */,
26 struct policy_handle *handle /* [out] [ref] */,
28 NTSTATUS rpccli_winreg_OpenHKU(struct rpc_pipe_client *cli,
30 uint16_t *system_name /* [in] [unique] */,
31 uint32_t access_mask /* [in] */,
32 struct policy_handle *handle /* [out] [ref] */,
34 NTSTATUS rpccli_winreg_CloseKey(struct rpc_pipe_client *cli,
36 struct policy_handle *handle /* [in,out] [ref] */,
38 NTSTATUS rpccli_winreg_CreateKey(struct rpc_pipe_client *cli,
40 struct policy_handle *handle /* [in] [ref] */,
41 struct winreg_String name /* [in] */,
42 struct winreg_String keyclass /* [in] */,
43 uint32_t options /* [in] */,
44 uint32_t access_mask /* [in] */,
45 struct winreg_SecBuf *secdesc /* [in] [unique] */,
46 struct policy_handle *new_handle /* [out] [ref] */,
47 enum winreg_CreateAction *action_taken /* [in,out] [unique] */,
49 NTSTATUS rpccli_winreg_DeleteKey(struct rpc_pipe_client *cli,
51 struct policy_handle *handle /* [in] [ref] */,
52 struct winreg_String key /* [in] */,
54 NTSTATUS rpccli_winreg_DeleteValue(struct rpc_pipe_client *cli,
56 struct policy_handle *handle /* [in] [ref] */,
57 struct winreg_String value /* [in] */,
59 NTSTATUS rpccli_winreg_EnumKey(struct rpc_pipe_client *cli,
61 struct policy_handle *handle /* [in] [ref] */,
62 uint32_t enum_index /* [in] */,
63 struct winreg_StringBuf *name /* [in,out] [ref] */,
64 struct winreg_StringBuf *keyclass /* [in,out] [unique] */,
65 NTTIME *last_changed_time /* [in,out] [unique] */,
67 NTSTATUS rpccli_winreg_EnumValue(struct rpc_pipe_client *cli,
69 struct policy_handle *handle /* [in] [ref] */,
70 uint32_t enum_index /* [in] */,
71 struct winreg_ValNameBuf *name /* [in,out] [ref] */,
72 enum winreg_Type *type /* [in,out] [unique] */,
73 uint8_t *value /* [in,out] [unique,length_is(*length),size_is(*size)] */,
74 uint32_t *size /* [in,out] [unique] */,
75 uint32_t *length /* [in,out] [unique] */,
77 NTSTATUS rpccli_winreg_FlushKey(struct rpc_pipe_client *cli,
79 struct policy_handle *handle /* [in] [ref] */,
81 NTSTATUS rpccli_winreg_GetKeySecurity(struct rpc_pipe_client *cli,
83 struct policy_handle *handle /* [in] [ref] */,
84 uint32_t sec_info /* [in] */,
85 struct KeySecurityData *sd /* [in,out] [ref] */,
87 NTSTATUS rpccli_winreg_LoadKey(struct rpc_pipe_client *cli,
89 struct policy_handle *handle /* [in] [ref] */,
90 struct winreg_String *keyname /* [in] [unique] */,
91 struct winreg_String *filename /* [in] [unique] */,
93 NTSTATUS rpccli_winreg_NotifyChangeKeyValue(struct rpc_pipe_client *cli,
95 struct policy_handle *handle /* [in] [ref] */,
96 uint8_t watch_subtree /* [in] */,
97 uint32_t notify_filter /* [in] */,
98 uint32_t unknown /* [in] */,
99 struct winreg_String string1 /* [in] */,
100 struct winreg_String string2 /* [in] */,
101 uint32_t unknown2 /* [in] */,
103 NTSTATUS rpccli_winreg_OpenKey(struct rpc_pipe_client *cli,
105 struct policy_handle *parent_handle /* [in] [ref] */,
106 struct winreg_String keyname /* [in] */,
107 uint32_t unknown /* [in] */,
108 uint32_t access_mask /* [in] */,
109 struct policy_handle *handle /* [out] [ref] */,
111 NTSTATUS rpccli_winreg_QueryInfoKey(struct rpc_pipe_client *cli,
113 struct policy_handle *handle /* [in] [ref] */,
114 struct winreg_String *classname /* [in,out] [ref] */,
115 uint32_t *num_subkeys /* [out] [ref] */,
116 uint32_t *max_subkeylen /* [out] [ref] */,
117 uint32_t *max_classlen /* [out] [ref] */,
118 uint32_t *num_values /* [out] [ref] */,
119 uint32_t *max_valnamelen /* [out] [ref] */,
120 uint32_t *max_valbufsize /* [out] [ref] */,
121 uint32_t *secdescsize /* [out] [ref] */,
122 NTTIME *last_changed_time /* [out] [ref] */,
124 NTSTATUS rpccli_winreg_QueryValue(struct rpc_pipe_client *cli,
126 struct policy_handle *handle /* [in] [ref] */,
127 struct winreg_String *value_name /* [in] [ref] */,
128 enum winreg_Type *type /* [in,out] [unique] */,
129 uint8_t *data /* [in,out] [unique,length_is(*value_length),size_is(*data_size)] */,
130 uint32_t *data_size /* [in,out] [unique] */,
131 uint32_t *value_length /* [in,out] [unique] */,
133 NTSTATUS rpccli_winreg_ReplaceKey(struct rpc_pipe_client *cli,
136 NTSTATUS rpccli_winreg_RestoreKey(struct rpc_pipe_client *cli,
138 struct policy_handle *handle /* [in] [ref] */,
139 struct winreg_String *filename /* [in] [ref] */,
140 uint32_t flags /* [in] */,
142 NTSTATUS rpccli_winreg_SaveKey(struct rpc_pipe_client *cli,
144 struct policy_handle *handle /* [in] [ref] */,
145 struct winreg_String *filename /* [in] [ref] */,
146 struct KeySecurityAttribute *sec_attrib /* [in] [unique] */,
148 NTSTATUS rpccli_winreg_SetKeySecurity(struct rpc_pipe_client *cli,
150 struct policy_handle *handle /* [in] [ref] */,
151 uint32_t access_mask /* [in] */,
152 struct KeySecurityData *sd /* [in] [ref] */,
154 NTSTATUS rpccli_winreg_SetValue(struct rpc_pipe_client *cli,
156 struct policy_handle *handle /* [in] [ref] */,
157 struct winreg_String name /* [in] */,
158 enum winreg_Type type /* [in] */,
159 uint8_t *data /* [in] [ref,size_is(size)] */,
160 uint32_t size /* [in] */,
162 NTSTATUS rpccli_winreg_UnLoadKey(struct rpc_pipe_client *cli,
165 NTSTATUS rpccli_winreg_InitiateSystemShutdown(struct rpc_pipe_client *cli,
167 uint16_t *hostname /* [in] [unique] */,
168 struct initshutdown_String *message /* [in] [unique] */,
169 uint32_t timeout /* [in] */,
170 uint8_t force_apps /* [in] */,
171 uint8_t do_reboot /* [in] */,
173 NTSTATUS rpccli_winreg_AbortSystemShutdown(struct rpc_pipe_client *cli,
175 uint16_t *server /* [in] [unique] */,
177 NTSTATUS rpccli_winreg_GetVersion(struct rpc_pipe_client *cli,
179 struct policy_handle *handle /* [in] [ref] */,
180 uint32_t *version /* [out] [ref] */,
182 NTSTATUS rpccli_winreg_OpenHKCC(struct rpc_pipe_client *cli,
184 uint16_t *system_name /* [in] [unique] */,
185 uint32_t access_mask /* [in] */,
186 struct policy_handle *handle /* [out] [ref] */,
188 NTSTATUS rpccli_winreg_OpenHKDD(struct rpc_pipe_client *cli,
190 uint16_t *system_name /* [in] [unique] */,
191 uint32_t access_mask /* [in] */,
192 struct policy_handle *handle /* [out] [ref] */,
194 NTSTATUS rpccli_winreg_QueryMultipleValues(struct rpc_pipe_client *cli,
196 struct policy_handle *key_handle /* [in] [ref] */,
197 struct QueryMultipleValue *values /* [in,out] [ref,length_is(num_values),size_is(num_values)] */,
198 uint32_t num_values /* [in] */,
199 uint8_t *buffer /* [in,out] [unique,length_is(*buffer_size),size_is(*buffer_size)] */,
200 uint32_t *buffer_size /* [in,out] [ref] */,
202 NTSTATUS rpccli_winreg_InitiateSystemShutdownEx(struct rpc_pipe_client *cli,
204 uint16_t *hostname /* [in] [unique] */,
205 struct initshutdown_String *message /* [in] [unique] */,
206 uint32_t timeout /* [in] */,
207 uint8_t force_apps /* [in] */,
208 uint8_t do_reboot /* [in] */,
209 uint32_t reason /* [in] */,
211 NTSTATUS rpccli_winreg_SaveKeyEx(struct rpc_pipe_client *cli,
214 NTSTATUS rpccli_winreg_OpenHKPT(struct rpc_pipe_client *cli,
216 uint16_t *system_name /* [in] [unique] */,
217 uint32_t access_mask /* [in] */,
218 struct policy_handle *handle /* [out] [ref] */,
220 NTSTATUS rpccli_winreg_OpenHKPN(struct rpc_pipe_client *cli,
222 uint16_t *system_name /* [in] [unique] */,
223 uint32_t access_mask /* [in] */,
224 struct policy_handle *handle /* [out] [ref] */,
226 NTSTATUS rpccli_winreg_QueryMultipleValues2(struct rpc_pipe_client *cli,
229 #endif /* __CLI_WINREG__ */