spoolss: add generated spoolss code.
[amitay/samba.git] / librpc / gen_ndr / cli_spoolss.h
1 #include "../librpc/gen_ndr/ndr_spoolss.h"
2 #ifndef __CLI_SPOOLSS__
3 #define __CLI_SPOOLSS__
4 NTSTATUS rpccli_spoolss_EnumPrinters(struct rpc_pipe_client *cli,
5                                      TALLOC_CTX *mem_ctx,
6                                      uint32_t flags /* [in]  */,
7                                      const char *server /* [in] [unique,charset(UTF16)] */,
8                                      uint32_t level /* [in]  */,
9                                      DATA_BLOB *buffer /* [in] [unique] */,
10                                      uint32_t offered /* [in]  */,
11                                      union spoolss_PrinterInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
12                                      uint32_t needed /* [out]  */,
13                                      uint32_t count /* [out]  */,
14                                      WERROR *werror);
15 NTSTATUS rpccli_spoolss_OpenPrinter(struct rpc_pipe_client *cli,
16                                     TALLOC_CTX *mem_ctx,
17                                     const char *printername /* [in] [unique,charset(UTF16)] */,
18                                     const char *datatype /* [in] [unique,charset(UTF16)] */,
19                                     struct spoolss_DevmodeContainer devmode_ctr /* [in]  */,
20                                     uint32_t access_mask /* [in]  */,
21                                     struct policy_handle *handle /* [out] [ref] */,
22                                     WERROR *werror);
23 NTSTATUS rpccli_spoolss_SetJob(struct rpc_pipe_client *cli,
24                                TALLOC_CTX *mem_ctx,
25                                struct policy_handle *handle /* [in] [ref] */,
26                                uint32_t job_id /* [in]  */,
27                                struct spoolss_JobInfoContainer *ctr /* [in] [unique] */,
28                                enum spoolss_JobControl command /* [in]  */,
29                                WERROR *werror);
30 NTSTATUS rpccli_spoolss_GetJob(struct rpc_pipe_client *cli,
31                                TALLOC_CTX *mem_ctx,
32                                struct policy_handle *handle /* [in] [ref] */,
33                                uint32_t job_id /* [in]  */,
34                                uint32_t level /* [in]  */,
35                                DATA_BLOB *buffer /* [in] [unique] */,
36                                uint32_t offered /* [in]  */,
37                                union spoolss_JobInfo *info /* [out] [unique,subcontext_size(offered),subcontext(4),switch_is(level)] */,
38                                uint32_t needed /* [out]  */,
39                                WERROR *werror);
40 NTSTATUS rpccli_spoolss_EnumJobs(struct rpc_pipe_client *cli,
41                                  TALLOC_CTX *mem_ctx,
42                                  struct policy_handle *handle /* [in] [ref] */,
43                                  uint32_t firstjob /* [in]  */,
44                                  uint32_t numjobs /* [in]  */,
45                                  uint32_t level /* [in]  */,
46                                  DATA_BLOB *buffer /* [in] [unique] */,
47                                  uint32_t offered /* [in]  */,
48                                  union spoolss_JobInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
49                                  uint32_t needed /* [out]  */,
50                                  uint32_t count /* [out]  */,
51                                  WERROR *werror);
52 NTSTATUS rpccli_spoolss_AddPrinter(struct rpc_pipe_client *cli,
53                                    TALLOC_CTX *mem_ctx,
54                                    WERROR *werror);
55 NTSTATUS rpccli_spoolss_DeletePrinter(struct rpc_pipe_client *cli,
56                                       TALLOC_CTX *mem_ctx,
57                                       struct policy_handle *handle /* [in] [ref] */,
58                                       WERROR *werror);
59 NTSTATUS rpccli_spoolss_SetPrinter(struct rpc_pipe_client *cli,
60                                    TALLOC_CTX *mem_ctx,
61                                    struct policy_handle *handle /* [in] [ref] */,
62                                    uint32_t level /* [in]  */,
63                                    union spoolss_SetPrinterInfo info /* [in] [switch_is(level)] */,
64                                    struct spoolss_DevmodeContainer devmode_ctr /* [in]  */,
65                                    struct sec_desc_buf secdesc_ctr /* [in]  */,
66                                    enum spoolss_PrinterControl command /* [in]  */,
67                                    WERROR *werror);
68 NTSTATUS rpccli_spoolss_GetPrinter(struct rpc_pipe_client *cli,
69                                    TALLOC_CTX *mem_ctx,
70                                    struct policy_handle *handle /* [in] [ref] */,
71                                    uint32_t level /* [in]  */,
72                                    DATA_BLOB *buffer /* [in] [unique] */,
73                                    uint32_t offered /* [in]  */,
74                                    union spoolss_PrinterInfo *info /* [out] [unique,subcontext_size(offered),subcontext(4),switch_is(level)] */,
75                                    uint32_t needed /* [out]  */,
76                                    WERROR *werror);
77 NTSTATUS rpccli_spoolss_AddPrinterDriver(struct rpc_pipe_client *cli,
78                                          TALLOC_CTX *mem_ctx,
79                                          WERROR *werror);
80 NTSTATUS rpccli_spoolss_EnumPrinterDrivers(struct rpc_pipe_client *cli,
81                                            TALLOC_CTX *mem_ctx,
82                                            const char *server /* [in] [unique,charset(UTF16)] */,
83                                            const char *environment /* [in] [unique,charset(UTF16)] */,
84                                            uint32_t level /* [in]  */,
85                                            DATA_BLOB *buffer /* [in] [unique] */,
86                                            uint32_t offered /* [in]  */,
87                                            union spoolss_DriverInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
88                                            uint32_t needed /* [out]  */,
89                                            uint32_t count /* [out]  */,
90                                            WERROR *werror);
91 NTSTATUS rpccli_spoolss_GetPrinterDriver(struct rpc_pipe_client *cli,
92                                          TALLOC_CTX *mem_ctx,
93                                          WERROR *werror);
94 NTSTATUS rpccli_spoolss_GetPrinterDriverDirectory(struct rpc_pipe_client *cli,
95                                                   TALLOC_CTX *mem_ctx,
96                                                   const char *server /* [in] [unique,charset(UTF16)] */,
97                                                   const char *environment /* [in] [unique,charset(UTF16)] */,
98                                                   uint32_t level /* [in]  */,
99                                                   DATA_BLOB *buffer /* [in] [unique] */,
100                                                   uint32_t offered /* [in]  */,
101                                                   union spoolss_DriverDirectoryInfo *info /* [out] [unique,subcontext_size(offered),subcontext(4),switch_is(level)] */,
102                                                   uint32_t needed /* [out]  */,
103                                                   WERROR *werror);
104 NTSTATUS rpccli_spoolss_DeletePrinterDriver(struct rpc_pipe_client *cli,
105                                             TALLOC_CTX *mem_ctx,
106                                             struct policy_handle *handle /* [in] [ref] */,
107                                             const char *server /* [in] [unique,charset(UTF16)] */,
108                                             const char *architecture /* [in] [charset(UTF16)] */,
109                                             const char *driver /* [in] [charset(UTF16)] */,
110                                             WERROR *werror);
111 NTSTATUS rpccli_spoolss_AddPrintProcessor(struct rpc_pipe_client *cli,
112                                           TALLOC_CTX *mem_ctx,
113                                           WERROR *werror);
114 NTSTATUS rpccli_spoolss_EnumPrintProcessors(struct rpc_pipe_client *cli,
115                                             TALLOC_CTX *mem_ctx,
116                                             const char *servername /* [in] [unique,charset(UTF16)] */,
117                                             const char *environment /* [in] [unique,charset(UTF16)] */,
118                                             uint32_t level /* [in]  */,
119                                             DATA_BLOB *buffer /* [in] [unique] */,
120                                             uint32_t offered /* [in]  */,
121                                             union spoolss_PrintProcessorInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
122                                             uint32_t needed /* [out]  */,
123                                             uint32_t count /* [out]  */,
124                                             WERROR *werror);
125 NTSTATUS rpccli_spoolss_GetPrintProcessorDirectory(struct rpc_pipe_client *cli,
126                                                    TALLOC_CTX *mem_ctx,
127                                                    WERROR *werror);
128 NTSTATUS rpccli_spoolss_StartDocPrinter(struct rpc_pipe_client *cli,
129                                         TALLOC_CTX *mem_ctx,
130                                         struct policy_handle *handle /* [in] [ref] */,
131                                         uint32_t level /* [in]  */,
132                                         union spoolss_DocumentInfo info /* [in] [switch_is(level)] */,
133                                         uint32_t job_id /* [out]  */,
134                                         WERROR *werror);
135 NTSTATUS rpccli_spoolss_StartPagePrinter(struct rpc_pipe_client *cli,
136                                          TALLOC_CTX *mem_ctx,
137                                          struct policy_handle *handle /* [in] [ref] */,
138                                          WERROR *werror);
139 NTSTATUS rpccli_spoolss_WritePrinter(struct rpc_pipe_client *cli,
140                                      TALLOC_CTX *mem_ctx,
141                                      struct policy_handle *handle /* [in] [ref] */,
142                                      DATA_BLOB data /* [in]  */,
143                                      uint32_t _data_size /* [in] [value(r->in.data.length)] */,
144                                      uint32_t num_written /* [out]  */,
145                                      WERROR *werror);
146 NTSTATUS rpccli_spoolss_EndPagePrinter(struct rpc_pipe_client *cli,
147                                        TALLOC_CTX *mem_ctx,
148                                        struct policy_handle *handle /* [in] [ref] */,
149                                        WERROR *werror);
150 NTSTATUS rpccli_spoolss_AbortPrinter(struct rpc_pipe_client *cli,
151                                      TALLOC_CTX *mem_ctx,
152                                      struct policy_handle *handle /* [in] [ref] */,
153                                      WERROR *werror);
154 NTSTATUS rpccli_spoolss_ReadPrinter(struct rpc_pipe_client *cli,
155                                     TALLOC_CTX *mem_ctx,
156                                     struct policy_handle *handle /* [in] [ref] */,
157                                     uint32_t data_size /* [in]  */,
158                                     DATA_BLOB data /* [out]  */,
159                                     uint32_t _data_size /* [out] [value(r->out.data.length)] */,
160                                     WERROR *werror);
161 NTSTATUS rpccli_spoolss_EndDocPrinter(struct rpc_pipe_client *cli,
162                                       TALLOC_CTX *mem_ctx,
163                                       struct policy_handle *handle /* [in] [ref] */,
164                                       WERROR *werror);
165 NTSTATUS rpccli_spoolss_AddJob(struct rpc_pipe_client *cli,
166                                TALLOC_CTX *mem_ctx,
167                                WERROR *werror);
168 NTSTATUS rpccli_spoolss_ScheduleJob(struct rpc_pipe_client *cli,
169                                     TALLOC_CTX *mem_ctx,
170                                     WERROR *werror);
171 NTSTATUS rpccli_spoolss_GetPrinterData(struct rpc_pipe_client *cli,
172                                        TALLOC_CTX *mem_ctx,
173                                        struct policy_handle *handle /* [in] [ref] */,
174                                        const char *value_name /* [in] [charset(UTF16)] */,
175                                        uint32_t offered /* [in]  */,
176                                        enum spoolss_PrinterDataType type /* [out]  */,
177                                        union spoolss_PrinterData data /* [out] [subcontext_size(offered),subcontext(4),switch_is(type)] */,
178                                        uint32_t needed /* [out]  */,
179                                        WERROR *werror);
180 NTSTATUS rpccli_spoolss_SetPrinterData(struct rpc_pipe_client *cli,
181                                        TALLOC_CTX *mem_ctx,
182                                        struct policy_handle *handle /* [in] [ref] */,
183                                        const char *value_name /* [in] [charset(UTF16)] */,
184                                        enum spoolss_PrinterDataType type /* [in]  */,
185                                        union spoolss_PrinterData data /* [in] [subcontext(4),switch_is(type)] */,
186                                        uint32_t _offered /* [in] [value(ndr_size_spoolss_PrinterData(&data,type,ndr->iconv_convenience,flags))] */,
187                                        WERROR *werror);
188 NTSTATUS rpccli_spoolss_WaitForPrinterChange(struct rpc_pipe_client *cli,
189                                              TALLOC_CTX *mem_ctx,
190                                              WERROR *werror);
191 NTSTATUS rpccli_spoolss_ClosePrinter(struct rpc_pipe_client *cli,
192                                      TALLOC_CTX *mem_ctx,
193                                      struct policy_handle *handle /* [in,out] [ref] */,
194                                      WERROR *werror);
195 NTSTATUS rpccli_spoolss_AddForm(struct rpc_pipe_client *cli,
196                                 TALLOC_CTX *mem_ctx,
197                                 struct policy_handle *handle /* [in] [ref] */,
198                                 uint32_t level /* [in]  */,
199                                 union spoolss_AddFormInfo info /* [in] [switch_is(level)] */,
200                                 WERROR *werror);
201 NTSTATUS rpccli_spoolss_DeleteForm(struct rpc_pipe_client *cli,
202                                    TALLOC_CTX *mem_ctx,
203                                    struct policy_handle *handle /* [in] [ref] */,
204                                    const char *form_name /* [in] [charset(UTF16)] */,
205                                    WERROR *werror);
206 NTSTATUS rpccli_spoolss_GetForm(struct rpc_pipe_client *cli,
207                                 TALLOC_CTX *mem_ctx,
208                                 struct policy_handle *handle /* [in] [ref] */,
209                                 const char *form_name /* [in] [charset(UTF16)] */,
210                                 uint32_t level /* [in]  */,
211                                 DATA_BLOB *buffer /* [in] [unique] */,
212                                 uint32_t offered /* [in]  */,
213                                 union spoolss_FormInfo *info /* [out] [unique,subcontext_size(offered),subcontext(4),switch_is(level)] */,
214                                 uint32_t needed /* [out]  */,
215                                 WERROR *werror);
216 NTSTATUS rpccli_spoolss_SetForm(struct rpc_pipe_client *cli,
217                                 TALLOC_CTX *mem_ctx,
218                                 struct policy_handle *handle /* [in] [ref] */,
219                                 const char *form_name /* [in] [charset(UTF16)] */,
220                                 uint32_t level /* [in]  */,
221                                 union spoolss_AddFormInfo info /* [in] [switch_is(level)] */,
222                                 WERROR *werror);
223 NTSTATUS rpccli_spoolss_EnumForms(struct rpc_pipe_client *cli,
224                                   TALLOC_CTX *mem_ctx,
225                                   struct policy_handle *handle /* [in] [ref] */,
226                                   uint32_t level /* [in]  */,
227                                   DATA_BLOB *buffer /* [in] [unique] */,
228                                   uint32_t offered /* [in]  */,
229                                   union spoolss_FormInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
230                                   uint32_t needed /* [out]  */,
231                                   uint32_t count /* [out]  */,
232                                   WERROR *werror);
233 NTSTATUS rpccli_spoolss_EnumPorts(struct rpc_pipe_client *cli,
234                                   TALLOC_CTX *mem_ctx,
235                                   const char *servername /* [in] [unique,charset(UTF16)] */,
236                                   uint32_t level /* [in]  */,
237                                   DATA_BLOB *buffer /* [in] [unique] */,
238                                   uint32_t offered /* [in]  */,
239                                   union spoolss_PortInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
240                                   uint32_t needed /* [out]  */,
241                                   uint32_t count /* [out]  */,
242                                   WERROR *werror);
243 NTSTATUS rpccli_spoolss_EnumMonitors(struct rpc_pipe_client *cli,
244                                      TALLOC_CTX *mem_ctx,
245                                      const char *servername /* [in] [unique,charset(UTF16)] */,
246                                      uint32_t level /* [in]  */,
247                                      DATA_BLOB *buffer /* [in] [unique] */,
248                                      uint32_t offered /* [in]  */,
249                                      union spoolss_MonitorInfo *info /* [out] [unique,switch_is(level),size_is(count)] */,
250                                      uint32_t needed /* [out]  */,
251                                      uint32_t count /* [out]  */,
252                                      WERROR *werror);
253 NTSTATUS rpccli_spoolss_AddPort(struct rpc_pipe_client *cli,
254                                 TALLOC_CTX *mem_ctx,
255                                 const char *server_name /* [in] [unique,charset(UTF16)] */,
256                                 uint32_t unknown /* [in]  */,
257                                 const char *monitor_name /* [in] [charset(UTF16)] */,
258                                 WERROR *werror);
259 NTSTATUS rpccli_spoolss_ConfigurePort(struct rpc_pipe_client *cli,
260                                       TALLOC_CTX *mem_ctx,
261                                       WERROR *werror);
262 NTSTATUS rpccli_spoolss_DeletePort(struct rpc_pipe_client *cli,
263                                    TALLOC_CTX *mem_ctx,
264                                    WERROR *werror);
265 NTSTATUS rpccli_spoolss_CreatePrinterIC(struct rpc_pipe_client *cli,
266                                         TALLOC_CTX *mem_ctx,
267                                         WERROR *werror);
268 NTSTATUS rpccli_spoolss_PlayGDIScriptOnPrinterIC(struct rpc_pipe_client *cli,
269                                                  TALLOC_CTX *mem_ctx,
270                                                  WERROR *werror);
271 NTSTATUS rpccli_spoolss_DeletePrinterIC(struct rpc_pipe_client *cli,
272                                         TALLOC_CTX *mem_ctx,
273                                         WERROR *werror);
274 NTSTATUS rpccli_spoolss_AddPrinterConnection(struct rpc_pipe_client *cli,
275                                              TALLOC_CTX *mem_ctx,
276                                              WERROR *werror);
277 NTSTATUS rpccli_spoolss_DeletePrinterConnection(struct rpc_pipe_client *cli,
278                                                 TALLOC_CTX *mem_ctx,
279                                                 WERROR *werror);
280 NTSTATUS rpccli_spoolss_PrinterMessageBox(struct rpc_pipe_client *cli,
281                                           TALLOC_CTX *mem_ctx,
282                                           WERROR *werror);
283 NTSTATUS rpccli_spoolss_AddMonitor(struct rpc_pipe_client *cli,
284                                    TALLOC_CTX *mem_ctx,
285                                    WERROR *werror);
286 NTSTATUS rpccli_spoolss_DeleteMonitor(struct rpc_pipe_client *cli,
287                                       TALLOC_CTX *mem_ctx,
288                                       WERROR *werror);
289 NTSTATUS rpccli_spoolss_DeletePrintProcessor(struct rpc_pipe_client *cli,
290                                              TALLOC_CTX *mem_ctx,
291                                              WERROR *werror);
292 NTSTATUS rpccli_spoolss_AddPrintProvidor(struct rpc_pipe_client *cli,
293                                          TALLOC_CTX *mem_ctx,
294                                          WERROR *werror);
295 NTSTATUS rpccli_spoolss_DeletePrintProvidor(struct rpc_pipe_client *cli,
296                                             TALLOC_CTX *mem_ctx,
297                                             WERROR *werror);
298 NTSTATUS rpccli_spoolss_EnumPrintProcDataTypes(struct rpc_pipe_client *cli,
299                                                TALLOC_CTX *mem_ctx,
300                                                WERROR *werror);
301 NTSTATUS rpccli_spoolss_ResetPrinter(struct rpc_pipe_client *cli,
302                                      TALLOC_CTX *mem_ctx,
303                                      WERROR *werror);
304 NTSTATUS rpccli_spoolss_GetPrinterDriver2(struct rpc_pipe_client *cli,
305                                           TALLOC_CTX *mem_ctx,
306                                           struct policy_handle *handle /* [in] [ref] */,
307                                           const char *architecture /* [in] [unique,charset(UTF16)] */,
308                                           uint32_t level /* [in]  */,
309                                           DATA_BLOB *buffer /* [in] [unique] */,
310                                           uint32_t offered /* [in]  */,
311                                           uint32_t client_major_version /* [in]  */,
312                                           uint32_t client_minor_version /* [in]  */,
313                                           DATA_BLOB *info /* [out] [unique] */,
314                                           uint32_t needed /* [out]  */,
315                                           uint32_t server_major_version /* [out]  */,
316                                           uint32_t server_minor_version /* [out]  */,
317                                           WERROR *werror);
318 NTSTATUS rpccli_spoolss_FindFirstPrinterChangeNotification(struct rpc_pipe_client *cli,
319                                                            TALLOC_CTX *mem_ctx,
320                                                            WERROR *werror);
321 NTSTATUS rpccli_spoolss_FindNextPrinterChangeNotification(struct rpc_pipe_client *cli,
322                                                           TALLOC_CTX *mem_ctx,
323                                                           WERROR *werror);
324 NTSTATUS rpccli_spoolss_FindClosePrinterNotify(struct rpc_pipe_client *cli,
325                                                TALLOC_CTX *mem_ctx,
326                                                struct policy_handle *handle /* [in] [ref] */,
327                                                WERROR *werror);
328 NTSTATUS rpccli_spoolss_RouterFindFirstPrinterChangeNotificationOld(struct rpc_pipe_client *cli,
329                                                                     TALLOC_CTX *mem_ctx,
330                                                                     WERROR *werror);
331 NTSTATUS rpccli_spoolss_ReplyOpenPrinter(struct rpc_pipe_client *cli,
332                                          TALLOC_CTX *mem_ctx,
333                                          const char *server_name /* [in] [charset(UTF16)] */,
334                                          uint32_t printer_local /* [in]  */,
335                                          enum winreg_Type type /* [in]  */,
336                                          uint32_t unknown1 /* [in]  */,
337                                          uint32_t unknown2 /* [in]  */,
338                                          struct policy_handle *handle /* [out] [ref] */,
339                                          WERROR *werror);
340 NTSTATUS rpccli_spoolss_RouterReplyPrinter(struct rpc_pipe_client *cli,
341                                            TALLOC_CTX *mem_ctx,
342                                            WERROR *werror);
343 NTSTATUS rpccli_spoolss_ReplyClosePrinter(struct rpc_pipe_client *cli,
344                                           TALLOC_CTX *mem_ctx,
345                                           struct policy_handle *handle /* [in,out] [ref] */,
346                                           WERROR *werror);
347 NTSTATUS rpccli_spoolss_AddPortEx(struct rpc_pipe_client *cli,
348                                   TALLOC_CTX *mem_ctx,
349                                   WERROR *werror);
350 NTSTATUS rpccli_spoolss_RouterFindFirstPrinterChangeNotification(struct rpc_pipe_client *cli,
351                                                                  TALLOC_CTX *mem_ctx,
352                                                                  WERROR *werror);
353 NTSTATUS rpccli_spoolss_SpoolerInit(struct rpc_pipe_client *cli,
354                                     TALLOC_CTX *mem_ctx,
355                                     WERROR *werror);
356 NTSTATUS rpccli_spoolss_ResetPrinterEx(struct rpc_pipe_client *cli,
357                                        TALLOC_CTX *mem_ctx,
358                                        WERROR *werror);
359 NTSTATUS rpccli_spoolss_RemoteFindFirstPrinterChangeNotifyEx(struct rpc_pipe_client *cli,
360                                                              TALLOC_CTX *mem_ctx,
361                                                              struct policy_handle *handle /* [in] [ref] */,
362                                                              uint32_t flags /* [in]  */,
363                                                              uint32_t options /* [in]  */,
364                                                              const char *str /* [in] [unique,charset(UTF16)] */,
365                                                              uint32_t printer_local /* [in]  */,
366                                                              struct spoolss_NotifyOptionsContainer *t1 /* [in] [unique] */,
367                                                              WERROR *werror);
368 NTSTATUS rpccli_spoolss_RouterRefreshPrinterChangeNotification(struct rpc_pipe_client *cli,
369                                                                TALLOC_CTX *mem_ctx,
370                                                                WERROR *werror);
371 NTSTATUS rpccli_spoolss_RemoteFindNextPrinterChangeNotifyEx(struct rpc_pipe_client *cli,
372                                                             TALLOC_CTX *mem_ctx,
373                                                             struct policy_handle *handle /* [in] [ref] */,
374                                                             uint32_t change_low /* [in]  */,
375                                                             struct spoolss_NotifyOptionsContainer *container /* [in] [unique] */,
376                                                             struct spoolss_NotifyInfo **info /* [out] [ref] */,
377                                                             WERROR *werror);
378 NTSTATUS rpccli_spoolss_44(struct rpc_pipe_client *cli,
379                            TALLOC_CTX *mem_ctx,
380                            WERROR *werror);
381 NTSTATUS rpccli_spoolss_OpenPrinterEx(struct rpc_pipe_client *cli,
382                                       TALLOC_CTX *mem_ctx,
383                                       const char *printername /* [in] [unique,charset(UTF16)] */,
384                                       const char *datatype /* [in] [unique,charset(UTF16)] */,
385                                       struct spoolss_DevmodeContainer devmode_ctr /* [in]  */,
386                                       uint32_t access_mask /* [in]  */,
387                                       uint32_t level /* [in]  */,
388                                       union spoolss_UserLevel userlevel /* [in] [switch_is(level)] */,
389                                       struct policy_handle *handle /* [out] [ref] */,
390                                       WERROR *werror);
391 NTSTATUS rpccli_spoolss_AddPrinterEx(struct rpc_pipe_client *cli,
392                                      TALLOC_CTX *mem_ctx,
393                                      const char *server /* [in] [unique,charset(UTF16)] */,
394                                      uint32_t level /* [in]  */,
395                                      union spoolss_PrinterInfo *info /* [in] [unique,switch_is(level)] */,
396                                      struct spoolss_DevmodeContainer devmode_ctr /* [in]  */,
397                                      struct security_descriptor *secdesc /* [in] [unique] */,
398                                      uint32_t ulevel /* [in]  */,
399                                      union spoolss_UserLevel userlevel /* [in] [switch_is(ulevel)] */,
400                                      WERROR *werror);
401 NTSTATUS rpccli_spoolss_47(struct rpc_pipe_client *cli,
402                            TALLOC_CTX *mem_ctx,
403                            WERROR *werror);
404 NTSTATUS rpccli_spoolss_EnumPrinterData(struct rpc_pipe_client *cli,
405                                         TALLOC_CTX *mem_ctx,
406                                         struct policy_handle *handle /* [in] [ref] */,
407                                         uint32_t enum_index /* [in]  */,
408                                         const char *value_name /* [out] [ref,charset(UTF16),size_is(value_offered/2)] */,
409                                         uint32_t value_offered /* [in]  */,
410                                         uint32_t *value_needed /* [out] [ref] */,
411                                         uint32_t *printerdata_type /* [out] [ref] */,
412                                         DATA_BLOB *buffer /* [out] [ref] */,
413                                         uint32_t data_offered /* [in]  */,
414                                         uint32_t *data_needed /* [out] [ref] */,
415                                         WERROR *werror);
416 NTSTATUS rpccli_spoolss_DeletePrinterData(struct rpc_pipe_client *cli,
417                                           TALLOC_CTX *mem_ctx,
418                                           struct policy_handle *handle /* [in] [ref] */,
419                                           const char *value_name /* [in] [charset(UTF16)] */,
420                                           WERROR *werror);
421 NTSTATUS rpccli_spoolss_4a(struct rpc_pipe_client *cli,
422                            TALLOC_CTX *mem_ctx,
423                            WERROR *werror);
424 NTSTATUS rpccli_spoolss_4b(struct rpc_pipe_client *cli,
425                            TALLOC_CTX *mem_ctx,
426                            WERROR *werror);
427 NTSTATUS rpccli_spoolss_4c(struct rpc_pipe_client *cli,
428                            TALLOC_CTX *mem_ctx,
429                            WERROR *werror);
430 NTSTATUS rpccli_spoolss_SetPrinterDataEx(struct rpc_pipe_client *cli,
431                                          TALLOC_CTX *mem_ctx,
432                                          struct policy_handle *handle /* [in] [ref] */,
433                                          const char *key_name /* [in] [charset(UTF16)] */,
434                                          const char *value_name /* [in] [charset(UTF16)] */,
435                                          uint32_t type /* [in]  */,
436                                          DATA_BLOB buffer /* [in]  */,
437                                          uint32_t offered /* [in]  */,
438                                          WERROR *werror);
439 NTSTATUS rpccli_spoolss_GetPrinterDataEx(struct rpc_pipe_client *cli,
440                                          TALLOC_CTX *mem_ctx,
441                                          struct policy_handle *handle /* [in] [ref] */,
442                                          const char *key_name /* [in] [charset(UTF16)] */,
443                                          const char *value_name /* [in] [charset(UTF16)] */,
444                                          uint32_t offered /* [in]  */,
445                                          uint32_t type /* [out]  */,
446                                          DATA_BLOB buffer /* [out]  */,
447                                          uint32_t needed /* [out]  */,
448                                          WERROR *werror);
449 NTSTATUS rpccli_spoolss_EnumPrinterDataEx(struct rpc_pipe_client *cli,
450                                           TALLOC_CTX *mem_ctx,
451                                           struct policy_handle *handle /* [in] [ref] */,
452                                           const char *key_name /* [in] [charset(UTF16)] */,
453                                           uint32_t offered /* [in]  */,
454                                           DATA_BLOB buffer /* [out]  */,
455                                           uint32_t needed /* [out]  */,
456                                           uint32_t count /* [out]  */,
457                                           WERROR *werror);
458 NTSTATUS rpccli_spoolss_EnumPrinterKey(struct rpc_pipe_client *cli,
459                                        TALLOC_CTX *mem_ctx,
460                                        struct policy_handle *handle /* [in] [ref] */,
461                                        const char *key_name /* [in] [charset(UTF16)] */,
462                                        uint32_t key_buffer_size /* [out]  */,
463                                        uint16_t *key_buffer /* [out]  */,
464                                        uint32_t needed /* [in,out]  */,
465                                        WERROR *werror);
466 NTSTATUS rpccli_spoolss_DeletePrinterDataEx(struct rpc_pipe_client *cli,
467                                             TALLOC_CTX *mem_ctx,
468                                             struct policy_handle *handle /* [in] [ref] */,
469                                             const char *key_name /* [in] [charset(UTF16)] */,
470                                             const char *value_name /* [in] [charset(UTF16)] */,
471                                             WERROR *werror);
472 NTSTATUS rpccli_spoolss_DeletePrinterKey(struct rpc_pipe_client *cli,
473                                          TALLOC_CTX *mem_ctx,
474                                          WERROR *werror);
475 NTSTATUS rpccli_spoolss_53(struct rpc_pipe_client *cli,
476                            TALLOC_CTX *mem_ctx,
477                            WERROR *werror);
478 NTSTATUS rpccli_spoolss_DeletePrinterDriverEx(struct rpc_pipe_client *cli,
479                                               TALLOC_CTX *mem_ctx,
480                                               WERROR *werror);
481 NTSTATUS rpccli_spoolss_55(struct rpc_pipe_client *cli,
482                            TALLOC_CTX *mem_ctx,
483                            WERROR *werror);
484 NTSTATUS rpccli_spoolss_56(struct rpc_pipe_client *cli,
485                            TALLOC_CTX *mem_ctx,
486                            WERROR *werror);
487 NTSTATUS rpccli_spoolss_57(struct rpc_pipe_client *cli,
488                            TALLOC_CTX *mem_ctx,
489                            WERROR *werror);
490 NTSTATUS rpccli_spoolss_XcvData(struct rpc_pipe_client *cli,
491                                 TALLOC_CTX *mem_ctx,
492                                 struct policy_handle *handle /* [in] [ref] */,
493                                 const char *function_name /* [in] [charset(UTF16)] */,
494                                 DATA_BLOB in_data /* [in]  */,
495                                 uint32_t _in_data_length /* [in] [value(r->in.in_data.length)] */,
496                                 uint32_t offered /* [in]  */,
497                                 uint32_t unknown1 /* [in]  */,
498                                 DATA_BLOB out_data /* [out]  */,
499                                 uint32_t needed /* [out]  */,
500                                 uint32_t unknown2 /* [out]  */,
501                                 WERROR *werror);
502 NTSTATUS rpccli_spoolss_AddPrinterDriverEx(struct rpc_pipe_client *cli,
503                                            TALLOC_CTX *mem_ctx,
504                                            WERROR *werror);
505 NTSTATUS rpccli_spoolss_5a(struct rpc_pipe_client *cli,
506                            TALLOC_CTX *mem_ctx,
507                            WERROR *werror);
508 NTSTATUS rpccli_spoolss_5b(struct rpc_pipe_client *cli,
509                            TALLOC_CTX *mem_ctx,
510                            WERROR *werror);
511 NTSTATUS rpccli_spoolss_5c(struct rpc_pipe_client *cli,
512                            TALLOC_CTX *mem_ctx,
513                            WERROR *werror);
514 NTSTATUS rpccli_spoolss_5d(struct rpc_pipe_client *cli,
515                            TALLOC_CTX *mem_ctx,
516                            WERROR *werror);
517 NTSTATUS rpccli_spoolss_5e(struct rpc_pipe_client *cli,
518                            TALLOC_CTX *mem_ctx,
519                            WERROR *werror);
520 NTSTATUS rpccli_spoolss_5f(struct rpc_pipe_client *cli,
521                            TALLOC_CTX *mem_ctx,
522                            WERROR *werror);
523 #endif /* __CLI_SPOOLSS__ */