2 Unix SMB/CIFS implementation.
4 endpoint server for the spoolss pipe
6 Copyright (C) Tim Potter 2004
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 #include "rpc_server/common/common.h"
25 #include "rpc_server/spoolss/dcesrv_spoolss.h"
27 static WERROR spoolss_EnumPrinters(struct dcesrv_call_state *dce_call,
29 struct spoolss_EnumPrinters *r)
34 static WERROR spoolss_OpenPrinter(struct dcesrv_call_state *dce_call,
36 struct spoolss_OpenPrinter *r)
41 static WERROR spoolss_SetJob(struct dcesrv_call_state *dce_call,
43 struct spoolss_SetJob *r)
48 static WERROR spoolss_GetJob(struct dcesrv_call_state *dce_call,
50 struct spoolss_GetJob *r)
55 static WERROR spoolss_EnumJobs(struct dcesrv_call_state *dce_call,
57 struct spoolss_EnumJobs *r)
62 static WERROR spoolss_AddPrinter(struct dcesrv_call_state *dce_call,
64 struct spoolss_AddPrinter *r)
69 static WERROR spoolss_DeletePrinter(struct dcesrv_call_state *dce_call,
71 struct spoolss_DeletePrinter *r)
76 static WERROR spoolss_SetPrinter(struct dcesrv_call_state *dce_call,
78 struct spoolss_SetPrinter *r)
83 static WERROR spoolss_GetPrinter(struct dcesrv_call_state *dce_call,
85 struct spoolss_GetPrinter *r)
90 static WERROR spoolss_AddPrinterDriver(struct dcesrv_call_state *dce_call,
92 struct spoolss_AddPrinterDriver *r)
97 static WERROR spoolss_EnumPrinterDrivers(struct dcesrv_call_state *dce_call,
99 struct spoolss_EnumPrinterDrivers *r)
104 static WERROR spoolss_GetPrinterDriver(struct dcesrv_call_state *dce_call,
106 struct spoolss_GetPrinterDriver *r)
111 static WERROR spoolss_GetPrinterDriverDirectory(
112 struct dcesrv_call_state *dce_call,
114 struct spoolss_GetPrinterDriverDirectory *r)
119 static WERROR spoolss_DeletePrinterDriver(
120 struct dcesrv_call_state *dce_call,
122 struct spoolss_DeletePrinterDriver *r)
127 static WERROR spoolss_AddPrintProcessor(struct dcesrv_call_state *dce_call,
129 struct spoolss_AddPrintProcessor *r)
134 static WERROR spoolss_EnumPrintProcessors(
135 struct dcesrv_call_state *dce_call,
137 struct spoolss_EnumPrintProcessors *r)
142 static WERROR spoolss_GetPrintProcessorDirectory(
143 struct dcesrv_call_state *dce_call,
145 struct spoolss_GetPrintProcessorDirectory *r)
150 static WERROR spoolss_StartDocPrinter(struct dcesrv_call_state *dce_call,
152 struct spoolss_StartDocPrinter *r)
157 static WERROR spoolss_StartPagePrinter(struct dcesrv_call_state *dce_call,
159 struct spoolss_StartPagePrinter *r)
164 static WERROR spoolss_WritePrinter(struct dcesrv_call_state *dce_call,
166 struct spoolss_WritePrinter *r)
171 static WERROR spoolss_EndPagePrinter(struct dcesrv_call_state *dce_call,
173 struct spoolss_EndPagePrinter *r)
178 static WERROR spoolss_AbortPrinter(struct dcesrv_call_state *dce_call,
180 struct spoolss_AbortPrinter *r)
185 static WERROR spoolss_ReadPrinter(struct dcesrv_call_state *dce_call,
187 struct spoolss_ReadPrinter *r)
192 static WERROR spoolss_EndDocPrinter(struct dcesrv_call_state *dce_call,
194 struct spoolss_EndDocPrinter *r)
199 static WERROR spoolss_AddJob(struct dcesrv_call_state *dce_call,
201 struct spoolss_AddJob *r)
206 static WERROR spoolss_ScheduleJob(struct dcesrv_call_state *dce_call,
208 struct spoolss_ScheduleJob *r)
213 static WERROR spoolss_GetPrinterData(struct dcesrv_call_state *dce_call,
215 struct spoolss_GetPrinterData *r)
220 static WERROR spoolss_SetPrinterData(struct dcesrv_call_state *dce_call,
222 struct spoolss_SetPrinterData *r)
227 static WERROR spoolss_WaitForPrinterChange(
228 struct dcesrv_call_state *dce_call,
230 struct spoolss_WaitForPrinterChange *r)
235 static WERROR spoolss_ClosePrinter(struct dcesrv_call_state *dce_call,
237 struct spoolss_ClosePrinter *r)
242 static WERROR spoolss_AddForm(struct dcesrv_call_state *dce_call,
244 struct spoolss_AddForm *r)
249 static WERROR spoolss_DeleteForm(struct dcesrv_call_state *dce_call,
251 struct spoolss_DeleteForm *r)
256 static WERROR spoolss_GetForm(struct dcesrv_call_state *dce_call,
258 struct spoolss_GetForm *r)
263 static WERROR spoolss_SetForm(struct dcesrv_call_state *dce_call,
265 struct spoolss_SetForm *r)
270 static WERROR spoolss_EnumForms(struct dcesrv_call_state *dce_call,
272 struct spoolss_EnumForms *r)
277 static WERROR spoolss_EnumPorts(struct dcesrv_call_state *dce_call,
279 struct spoolss_EnumPorts *r)
284 static WERROR spoolss_EnumMonitors(struct dcesrv_call_state *dce_call,
286 struct spoolss_EnumMonitors *r)
291 static WERROR spoolss_AddPort(struct dcesrv_call_state *dce_call,
293 struct spoolss_AddPort *r)
298 static WERROR spoolss_ConfigurePort(struct dcesrv_call_state *dce_call,
300 struct spoolss_ConfigurePort *r)
305 static WERROR spoolss_DeletePort(struct dcesrv_call_state *dce_call,
307 struct spoolss_DeletePort *r)
312 static WERROR spoolss_CreatePrinterIC(struct dcesrv_call_state *dce_call,
314 struct spoolss_CreatePrinterIC *r)
319 static WERROR spoolss_PlayGDIScriptOnPrinterIC(
320 struct dcesrv_call_state *dce_call,
322 struct spoolss_PlayGDIScriptOnPrinterIC *r)
327 static WERROR spoolss_DeletePrinterIC(struct dcesrv_call_state *dce_call,
329 struct spoolss_DeletePrinterIC *r)
334 static WERROR spoolss_AddPrinterConnection(
335 struct dcesrv_call_state *dce_call,
337 struct spoolss_AddPrinterConnection *r)
342 static WERROR spoolss_DeletePrinterConnection(
343 struct dcesrv_call_state *dce_call,
345 struct spoolss_DeletePrinterConnection *r)
350 static WERROR spoolss_PrinterMessageBox(struct dcesrv_call_state *dce_call,
352 struct spoolss_PrinterMessageBox *r)
357 static WERROR spoolss_AddMonitor(struct dcesrv_call_state *dce_call,
359 struct spoolss_AddMonitor *r)
364 static WERROR spoolss_DeleteMonitor(struct dcesrv_call_state *dce_call,
366 struct spoolss_DeleteMonitor *r)
371 static WERROR spoolss_DeletePrintProcessor(
372 struct dcesrv_call_state *dce_call,
374 struct spoolss_DeletePrintProcessor *r)
379 static WERROR spoolss_AddPrintProvidor(struct dcesrv_call_state *dce_call,
381 struct spoolss_AddPrintProvidor *r)
386 static WERROR spoolss_DeletePrintProvidor(
387 struct dcesrv_call_state *dce_call,
389 struct spoolss_DeletePrintProvidor *r)
394 static WERROR spoolss_EnumPrintProcDataTypes(
395 struct dcesrv_call_state *dce_call,
397 struct spoolss_EnumPrintProcDataTypes *r)
402 static WERROR spoolss_ResetPrinter(struct dcesrv_call_state *dce_call,
404 struct spoolss_ResetPrinter *r)
409 static WERROR spoolss_GetPrinterDriver2(struct dcesrv_call_state *dce_call,
411 struct spoolss_GetPrinterDriver2 *r)
416 static WERROR spoolss_FindFirstPrinterChangeNotification(
417 struct dcesrv_call_state *dce_call,
419 struct spoolss_FindFirstPrinterChangeNotification *r)
424 static WERROR spoolss_FindNextPrinterChangeNotification(
425 struct dcesrv_call_state *dce_call,
427 struct spoolss_FindNextPrinterChangeNotification *r)
432 static WERROR spoolss_FindClosePrinterNotify(
433 struct dcesrv_call_state *dce_call,
435 struct spoolss_FindClosePrinterNotify *r)
440 static WERROR spoolss_RouterFindFirstPrinterChangeNotificationOld(
441 struct dcesrv_call_state *dce_call,
443 struct spoolss_RouterFindFirstPrinterChangeNotificationOld *r)
448 static WERROR spoolss_ReplyOpenPrinter(struct dcesrv_call_state *dce_call,
450 struct spoolss_ReplyOpenPrinter *r)
455 static WERROR spoolss_RouterReplyPrinter(struct dcesrv_call_state *dce_call,
457 struct spoolss_RouterReplyPrinter *r)
462 static WERROR spoolss_ReplyClosePrinter(struct dcesrv_call_state *dce_call,
464 struct spoolss_ReplyClosePrinter *r)
469 static WERROR spoolss_AddPortEx(struct dcesrv_call_state *dce_call,
471 struct spoolss_AddPortEx *r)
476 static WERROR spoolss_RouterFindFirstPrinterChangeNotification(
477 struct dcesrv_call_state *dce_call,
479 struct spoolss_RouterFindFirstPrinterChangeNotification *r)
484 static WERROR spoolss_SpoolerInit(struct dcesrv_call_state *dce_call,
486 struct spoolss_SpoolerInit *r)
491 static WERROR spoolss_ResetPrinterEx(struct dcesrv_call_state *dce_call,
493 struct spoolss_ResetPrinterEx *r)
498 static WERROR spoolss_RemoteFindFirstPrinterChangeNotifyEx(
499 struct dcesrv_call_state *dce_call,
501 struct spoolss_RemoteFindFirstPrinterChangeNotifyEx *r)
506 static WERROR spoolss_RouterRefreshPrinterChangeNotification(
507 struct dcesrv_call_state *dce_call,
509 struct spoolss_RouterRefreshPrinterChangeNotification *r)
514 static WERROR spoolss_RemoteFindNextPrinterChangeNotifyEx(
515 struct dcesrv_call_state *dce_call,
517 struct spoolss_RemoteFindNextPrinterChangeNotifyEx *r)
522 static WERROR spoolss_44(struct dcesrv_call_state *dce_call,
524 struct spoolss_44 *r)
529 static WERROR spoolss_OpenPrinterEx(struct dcesrv_call_state *dce_call,
531 struct spoolss_OpenPrinterEx *r)
536 static WERROR spoolss_AddPrinterEx(struct dcesrv_call_state *dce_call,
538 struct spoolss_AddPrinterEx *r)
543 static WERROR spoolss_47(struct dcesrv_call_state *dce_call,
545 struct spoolss_47 *r)
550 static WERROR spoolss_EnumPrinterData(struct dcesrv_call_state *dce_call,
552 struct spoolss_EnumPrinterData *r)
557 static WERROR spoolss_DeletePrinterData(struct dcesrv_call_state *dce_call,
559 struct spoolss_DeletePrinterData *r)
564 static WERROR spoolss_4a(struct dcesrv_call_state *dce_call,
566 struct spoolss_4a *r)
571 static WERROR spoolss_4b(struct dcesrv_call_state *dce_call,
573 struct spoolss_4b *r)
578 static WERROR spoolss_4c(struct dcesrv_call_state *dce_call,
580 struct spoolss_4c *r)
585 static WERROR spoolss_SetPrinterDataEx(struct dcesrv_call_state *dce_call,
587 struct spoolss_SetPrinterDataEx *r)
592 static WERROR spoolss_GetPrinterDataEx(struct dcesrv_call_state *dce_call,
594 struct spoolss_GetPrinterDataEx *r)
599 static WERROR spoolss_EnumPrinterDataEx(struct dcesrv_call_state *dce_call,
601 struct spoolss_EnumPrinterDataEx *r)
606 static WERROR spoolss_EnumPrinterKey(struct dcesrv_call_state *dce_call,
608 struct spoolss_EnumPrinterKey *r)
613 static WERROR spoolss_DeletePrinterDataEx(
614 struct dcesrv_call_state *dce_call,
616 struct spoolss_DeletePrinterDataEx *r)
621 static WERROR spoolss_DeletePrinterKey(struct dcesrv_call_state *dce_call,
623 struct spoolss_DeletePrinterKey *r)
628 static WERROR spoolss_53(struct dcesrv_call_state *dce_call,
630 struct spoolss_53 *r)
635 static WERROR spoolss_DeletePrinterDriverEx(
636 struct dcesrv_call_state *dce_call,
638 struct spoolss_DeletePrinterDriverEx *r)
643 static WERROR spoolss_55(struct dcesrv_call_state *dce_call,
645 struct spoolss_55 *r)
650 static WERROR spoolss_56(struct dcesrv_call_state *dce_call,
652 struct spoolss_56 *r)
657 static WERROR spoolss_57(struct dcesrv_call_state *dce_call,
659 struct spoolss_57 *r)
664 static WERROR spoolss_58(struct dcesrv_call_state *dce_call,
666 struct spoolss_58 *r)
671 static WERROR spoolss_AddPrinterDriverEx(struct dcesrv_call_state *dce_call,
673 struct spoolss_AddPrinterDriverEx *r)
678 static WERROR spoolss_5a(struct dcesrv_call_state *dce_call,
680 struct spoolss_5a *r)
685 static WERROR spoolss_5b(struct dcesrv_call_state *dce_call,
687 struct spoolss_5b *r)
692 static WERROR spoolss_5c(struct dcesrv_call_state *dce_call,
694 struct spoolss_5c *r)
699 static WERROR spoolss_5d(struct dcesrv_call_state *dce_call,
701 struct spoolss_5d *r)
706 static WERROR spoolss_5e(struct dcesrv_call_state *dce_call,
708 struct spoolss_5e *r)
713 static WERROR spoolss_5f(struct dcesrv_call_state *dce_call,
715 struct spoolss_5f *r)
720 /* include the generated boilerplate */
721 #include "librpc/gen_ndr/ndr_spoolss_s.c"