From 2d8115851b2102ef047b01b878692d139144bb77 Mon Sep 17 00:00:00 2001 From: =?utf8?q?G=C3=BCnther=20Deschner?= Date: Thu, 3 Dec 2009 23:23:36 +0100 Subject: [PATCH] s3-spoolss: handle SEC_FLAG_MAXIMUM_ALLOWED in spoolss_OpenPrinterEx. In case someone (smbtorture4) requests SEC_FLAG_MAXIMUM_ALLOWED, translate it to a request of PRINTER_ACCESS_ADMINISTER. Guenther (cherry picked from commit 459a968fb4d6f96ea7f310f331d3547e2e466d6a) (cherry picked from commit 7974ab9337c7de209f1cdafbd09fd2b71ef45f19) --- source3/rpc_server/srv_spoolss_nt.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c index 1dfae32d076..ecad469d820 100644 --- a/source3/rpc_server/srv_spoolss_nt.c +++ b/source3/rpc_server/srv_spoolss_nt.c @@ -1670,6 +1670,10 @@ WERROR _spoolss_OpenPrinterEx(pipes_struct *p, return WERR_BADFID; } + if (r->in.access_mask == SEC_FLAG_MAXIMUM_ALLOWED) { + r->in.access_mask = PRINTER_ACCESS_ADMINISTER; + } + se_map_standard(&r->in.access_mask, &printer_std_mapping); /* map an empty access mask to the minimum access mask */ -- 2.11.4.GIT