/* map an empty access mask to the minimum access mask */
if (printer_default->access_required == 0x0)
printer_default->access_required = PRINTER_ACCESS_USE;
-
/*
* If we are not serving the printer driver for this printer,
return WERR_ACCESS_DENIED;
}
+ if ((printer_default->access_required & SPECIFIC_RIGHTS_MASK)& ~(PRINTER_ACCESS_ADMINISTER|PRINTER_ACCESS_USE)) {
+ DEBUG(3, ("access DENIED for printer open - unknown bits\n"));
+ close_printer_handle(p, handle);
+ return WERR_ACCESS_DENIED;
+ }
+
if (printer_default->access_required & PRINTER_ACCESS_ADMINISTER)
printer_default->access_required = PRINTER_ACCESS_ADMINISTER;
else