From 58fadf2f48a2a409b4ee98fdc0166c7f801a7629 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Fri, 18 Jan 2013 00:22:31 +0100 Subject: BUG 9474: Downgrade v4 printer driver requests to v3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Guenther Signed-off-by: Günther Deschner Reviewed-by: Andreas Schneider Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Mon Jan 21 16:11:02 CET 2013 on sn-devel-104 --- source3/rpc_server/spoolss/srv_spoolss_nt.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'source3/rpc_server/spoolss') diff --git a/source3/rpc_server/spoolss/srv_spoolss_nt.c b/source3/rpc_server/spoolss/srv_spoolss_nt.c index 9df0b8ab32..9601ce6a62 100644 --- a/source3/rpc_server/spoolss/srv_spoolss_nt.c +++ b/source3/rpc_server/spoolss/srv_spoolss_nt.c @@ -5606,6 +5606,7 @@ WERROR _spoolss_GetPrinterDriver2(struct pipes_struct *p, { struct printer_handle *printer; WERROR result; + uint32_t version = r->in.client_major_version; int snum; @@ -5630,13 +5631,19 @@ WERROR _spoolss_GetPrinterDriver2(struct pipes_struct *p, return WERR_BADFID; } + if (r->in.client_major_version == SPOOLSS_DRIVER_VERSION_2012) { + DEBUG(3,("_spoolss_GetPrinterDriver2: v4 driver requested, " + "downgrading to v3\n")); + version = SPOOLSS_DRIVER_VERSION_200X; + } + result = construct_printer_driver_info_level(p->mem_ctx, get_session_info_system(), p->msg_ctx, r->in.level, r->out.info, snum, printer->servername, r->in.architecture, - r->in.client_major_version); + version); if (!W_ERROR_IS_OK(result)) { TALLOC_FREE(r->out.info); return result; -- cgit