summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/printing.h3
-rw-r--r--source3/printing/printing.c5
-rw-r--r--source3/rpc_server/srv_spoolss_nt.c2
3 files changed, 6 insertions, 4 deletions
diff --git a/source3/include/printing.h b/source3/include/printing.h
index d3e77bcc90..33a1d0ff2a 100644
--- a/source3/include/printing.h
+++ b/source3/include/printing.h
@@ -144,7 +144,8 @@ NTSTATUS print_job_end(int snum, uint32 jobid, enum file_close_type close_type);
int print_queue_status(int snum,
print_queue_struct **ppqueue,
print_status_struct *status);
-WERROR print_queue_pause(struct auth_serversupplied_info *server_info, int snum);
+WERROR print_queue_pause(struct auth_serversupplied_info *server_info,
+ struct messaging_context *msg_ctx, int snum);
WERROR print_queue_resume(struct auth_serversupplied_info *server_info, int snum);
WERROR print_queue_purge(struct auth_serversupplied_info *server_info, int snum);
diff --git a/source3/printing/printing.c b/source3/printing/printing.c
index 9b8426ae32..fbe3bdf275 100644
--- a/source3/printing/printing.c
+++ b/source3/printing/printing.c
@@ -3035,12 +3035,13 @@ int print_queue_status(int snum,
Pause a queue.
****************************************************************************/
-WERROR print_queue_pause(struct auth_serversupplied_info *server_info, int snum)
+WERROR print_queue_pause(struct auth_serversupplied_info *server_info,
+ struct messaging_context *msg_ctx, int snum)
{
int ret;
struct printif *current_printif = get_printer_fns( snum );
- if (!print_access_check(server_info, smbd_messaging_context(), snum,
+ if (!print_access_check(server_info, msg_ctx, snum,
PRINTER_ACCESS_ADMINISTER)) {
return WERR_ACCESS_DENIED;
}
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index 3a83898a6a..48d7fbf520 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -5362,7 +5362,7 @@ static WERROR control_printer(struct policy_handle *handle, uint32_t command,
switch (command) {
case SPOOLSS_PRINTER_CONTROL_PAUSE:
- errcode = print_queue_pause(p->server_info, snum);
+ errcode = print_queue_pause(p->server_info, p->msg_ctx, snum);
break;
case SPOOLSS_PRINTER_CONTROL_RESUME:
case SPOOLSS_PRINTER_CONTROL_UNPAUSE: