diff options
-rw-r--r-- | source3/include/printing.h | 3 | ||||
-rw-r--r-- | source3/printing/printing.c | 5 | ||||
-rw-r--r-- | source3/rpc_server/srv_spoolss_nt.c | 2 |
3 files changed, 6 insertions, 4 deletions
diff --git a/source3/include/printing.h b/source3/include/printing.h index 33a1d0ff2a..fd57acec39 100644 --- a/source3/include/printing.h +++ b/source3/include/printing.h @@ -146,7 +146,8 @@ int print_queue_status(int snum, print_status_struct *status); 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_resume(struct auth_serversupplied_info *server_info, + struct messaging_context *msg_ctx, int snum); WERROR print_queue_purge(struct auth_serversupplied_info *server_info, int snum); #endif /* PRINTING_H_ */ diff --git a/source3/printing/printing.c b/source3/printing/printing.c index fbe3bdf275..26679110f6 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -3071,12 +3071,13 @@ WERROR print_queue_pause(struct auth_serversupplied_info *server_info, Resume a queue. ****************************************************************************/ -WERROR print_queue_resume(struct auth_serversupplied_info *server_info, int snum) +WERROR print_queue_resume(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 48d7fbf520..6d6463876a 100644 --- a/source3/rpc_server/srv_spoolss_nt.c +++ b/source3/rpc_server/srv_spoolss_nt.c @@ -5366,7 +5366,7 @@ static WERROR control_printer(struct policy_handle *handle, uint32_t command, break; case SPOOLSS_PRINTER_CONTROL_RESUME: case SPOOLSS_PRINTER_CONTROL_UNPAUSE: - errcode = print_queue_resume(p->server_info, snum); + errcode = print_queue_resume(p->server_info, p->msg_ctx, snum); break; case SPOOLSS_PRINTER_CONTROL_PURGE: errcode = print_queue_purge(p->server_info, snum); |