[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-998-gbc5cd07

Günther Deschner gd at samba.org
Fri Apr 10 11:25:55 GMT 2009


The branch, master has been updated
       via  bc5cd077643bc73d93fa73970761f8d1708d14a9 (commit)
       via  65ee4ae30b952841e97f54c5eaa4d43ca66a02c1 (commit)
      from  bcd042e595d63eae8cfc9e9d51e9567a4f9ccc63 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit bc5cd077643bc73d93fa73970761f8d1708d14a9
Author: Günther Deschner <gd at samba.org>
Date:   Fri Apr 10 03:28:49 2009 +0200

    s3-spoolss: implement dummy _spoolss_AddPort().
    
    Guenther

commit 65ee4ae30b952841e97f54c5eaa4d43ca66a02c1
Author: Günther Deschner <gd at samba.org>
Date:   Fri Apr 10 03:28:17 2009 +0200

    s3-spoolss: add support for level 8 in _spoolss_GetPrinter().
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 source3/rpc_server/srv_spoolss_nt.c |   60 ++++++++++++++++++++++++++++------
 1 files changed, 49 insertions(+), 11 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index 098e592..718f69f 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -4085,6 +4085,39 @@ static WERROR construct_printer_info7(TALLOC_CTX *mem_ctx,
 }
 
 /********************************************************************
+ * construct_printer_info8
+ * fill a spoolss_PrinterInfo8 struct
+ ********************************************************************/
+
+static WERROR construct_printer_info8(TALLOC_CTX *mem_ctx,
+				      const NT_PRINTER_INFO_LEVEL *ntprinter,
+				      struct spoolss_DeviceModeInfo *r,
+				      int snum)
+{
+	struct spoolss_DeviceMode *devmode;
+	WERROR result;
+
+	if (!ntprinter->info_2->devmode) {
+		r->devmode = NULL;
+		return WERR_OK;
+	}
+
+	devmode = TALLOC_ZERO_P(mem_ctx, struct spoolss_DeviceMode);
+	W_ERROR_HAVE_NO_MEMORY(devmode);
+
+	result = convert_nt_devicemode(mem_ctx, devmode, ntprinter->info_2->devmode);
+	if (!W_ERROR_IS_OK(result)) {
+		TALLOC_FREE(devmode);
+		return result;
+	}
+
+	r->devmode	= devmode;
+
+	return WERR_OK;
+}
+
+
+/********************************************************************
  * construct_printer_info1
  * fill a spoolss_PrinterInfo1 struct
 ********************************************************************/
@@ -4636,6 +4669,10 @@ WERROR _spoolss_GetPrinter(pipes_struct *p,
 		result = construct_printer_info7(p->mem_ctx, Printer,
 						 &r->out.info->info7, snum);
 		break;
+	case 8:
+		result = construct_printer_info8(p->mem_ctx, ntprinter,
+						 &r->out.info->info8, snum);
+		break;
 	default:
 		result = WERR_UNKNOWN_LEVEL;
 		break;
@@ -9799,6 +9836,18 @@ WERROR _spoolss_AddPrintProcessor(pipes_struct *p,
 }
 
 /****************************************************************
+ _spoolss_AddPort
+****************************************************************/
+
+WERROR _spoolss_AddPort(pipes_struct *p,
+			struct spoolss_AddPort *r)
+{
+	/* do what w2k3 does */
+
+	return WERR_NOT_SUPPORTED;
+}
+
+/****************************************************************
  _spoolss_AddPrinter
 ****************************************************************/
 
@@ -9843,17 +9892,6 @@ WERROR _spoolss_WaitForPrinterChange(pipes_struct *p,
 }
 
 /****************************************************************
- _spoolss_AddPort
-****************************************************************/
-
-WERROR _spoolss_AddPort(pipes_struct *p,
-			struct spoolss_AddPort *r)
-{
-	p->rng_fault_state = true;
-	return WERR_NOT_SUPPORTED;
-}
-
-/****************************************************************
  _spoolss_ConfigurePort
 ****************************************************************/
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list