drs-fsmo: Improve handling of FSMO role takeover.
[Samba/gebeck_regimport.git] / source3 / rpc_client / cli_spoolss.h
blob9883874cd6858dcddb9c1fc1b0169abd6c3b44c1
1 /*
2 Unix SMB/CIFS implementation.
3 RPC pipe client
5 Copyright (C) Gerald Carter 2001-2005,
6 Copyright (C) Tim Potter 2000-2002,
7 Copyright (C) Andrew Tridgell 1994-2000,
8 Copyright (C) Jean-Francois Micouleau 1999-2000.
9 Copyright (C) Jeremy Allison 2005.
11 This program is free software; you can redistribute it and/or modify
12 it under the terms of the GNU General Public License as published by
13 the Free Software Foundation; either version 3 of the License, or
14 (at your option) any later version.
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License for more details.
21 You should have received a copy of the GNU General Public License
22 along with this program. If not, see <http://www.gnu.org/licenses/>.
25 #ifndef _RPC_CLIENT_CLI_SPOOLSS_H_
26 #define _RPC_CLIENT_CLI_SPOOLSS_H_
28 /* The following definitions come from rpc_client/cli_spoolss.c */
30 WERROR rpccli_spoolss_openprinter_ex(struct rpc_pipe_client *cli,
31 TALLOC_CTX *mem_ctx,
32 const char *printername,
33 uint32_t access_desired,
34 struct policy_handle *handle);
35 WERROR rpccli_spoolss_getprinterdriver(struct rpc_pipe_client *cli,
36 TALLOC_CTX *mem_ctx,
37 struct policy_handle *handle,
38 const char *architecture,
39 uint32_t level,
40 uint32_t offered,
41 union spoolss_DriverInfo *info);
42 WERROR rpccli_spoolss_getprinterdriver2(struct rpc_pipe_client *cli,
43 TALLOC_CTX *mem_ctx,
44 struct policy_handle *handle,
45 const char *architecture,
46 uint32_t level,
47 uint32_t offered,
48 uint32_t client_major_version,
49 uint32_t client_minor_version,
50 union spoolss_DriverInfo *info,
51 uint32_t *server_major_version,
52 uint32_t *server_minor_version);
53 WERROR rpccli_spoolss_addprinterex(struct rpc_pipe_client *cli,
54 TALLOC_CTX *mem_ctx,
55 struct spoolss_SetPrinterInfoCtr *info_ctr);
56 WERROR rpccli_spoolss_getprinter(struct rpc_pipe_client *cli,
57 TALLOC_CTX *mem_ctx,
58 struct policy_handle *handle,
59 uint32_t level,
60 uint32_t offered,
61 union spoolss_PrinterInfo *info);
62 WERROR rpccli_spoolss_getjob(struct rpc_pipe_client *cli,
63 TALLOC_CTX *mem_ctx,
64 struct policy_handle *handle,
65 uint32_t job_id,
66 uint32_t level,
67 uint32_t offered,
68 union spoolss_JobInfo *info);
69 WERROR rpccli_spoolss_enumforms(struct rpc_pipe_client *cli,
70 TALLOC_CTX *mem_ctx,
71 struct policy_handle *handle,
72 uint32_t level,
73 uint32_t offered,
74 uint32_t *count,
75 union spoolss_FormInfo **info);
76 WERROR rpccli_spoolss_enumprintprocessors(struct rpc_pipe_client *cli,
77 TALLOC_CTX *mem_ctx,
78 const char *servername,
79 const char *environment,
80 uint32_t level,
81 uint32_t offered,
82 uint32_t *count,
83 union spoolss_PrintProcessorInfo **info);
84 WERROR rpccli_spoolss_enumprintprocessordatatypes(struct rpc_pipe_client *cli,
85 TALLOC_CTX *mem_ctx,
86 const char *servername,
87 const char *print_processor_name,
88 uint32_t level,
89 uint32_t offered,
90 uint32_t *count,
91 union spoolss_PrintProcDataTypesInfo **info);
92 WERROR rpccli_spoolss_enumports(struct rpc_pipe_client *cli,
93 TALLOC_CTX *mem_ctx,
94 const char *servername,
95 uint32_t level,
96 uint32_t offered,
97 uint32_t *count,
98 union spoolss_PortInfo **info);
99 WERROR rpccli_spoolss_enummonitors(struct rpc_pipe_client *cli,
100 TALLOC_CTX *mem_ctx,
101 const char *servername,
102 uint32_t level,
103 uint32_t offered,
104 uint32_t *count,
105 union spoolss_MonitorInfo **info);
106 WERROR rpccli_spoolss_enumjobs(struct rpc_pipe_client *cli,
107 TALLOC_CTX *mem_ctx,
108 struct policy_handle *handle,
109 uint32_t firstjob,
110 uint32_t numjobs,
111 uint32_t level,
112 uint32_t offered,
113 uint32_t *count,
114 union spoolss_JobInfo **info);
115 WERROR rpccli_spoolss_enumprinterdrivers(struct rpc_pipe_client *cli,
116 TALLOC_CTX *mem_ctx,
117 const char *server,
118 const char *environment,
119 uint32_t level,
120 uint32_t offered,
121 uint32_t *count,
122 union spoolss_DriverInfo **info);
123 WERROR rpccli_spoolss_enumprinters(struct rpc_pipe_client *cli,
124 TALLOC_CTX *mem_ctx,
125 uint32_t flags,
126 const char *server,
127 uint32_t level,
128 uint32_t offered,
129 uint32_t *count,
130 union spoolss_PrinterInfo **info);
131 WERROR rpccli_spoolss_getprinterdata(struct rpc_pipe_client *cli,
132 TALLOC_CTX *mem_ctx,
133 struct policy_handle *handle,
134 const char *value_name,
135 uint32_t offered,
136 enum winreg_Type *type,
137 uint32_t *needed_p,
138 uint8_t **data_p);
139 WERROR rpccli_spoolss_enumprinterkey(struct rpc_pipe_client *cli,
140 TALLOC_CTX *mem_ctx,
141 struct policy_handle *handle,
142 const char *key_name,
143 const char ***key_buffer,
144 uint32_t offered);
145 WERROR rpccli_spoolss_enumprinterdataex(struct rpc_pipe_client *cli,
146 TALLOC_CTX *mem_ctx,
147 struct policy_handle *handle,
148 const char *key_name,
149 uint32_t offered,
150 uint32_t *count,
151 struct spoolss_PrinterEnumValues **info);
153 #endif /* _RPC_CLIENT_CLI_SPOOLSS_H_ */