[SCM] Samba Shared Repository - branch master updated

Günther Deschner gd at samba.org
Mon Nov 29 08:21:02 MST 2010


The branch, master has been updated
       via  800a76d s3-oldtest: add WIN40 to print$ share.
       via  6a93be4 s3-selftest: add WIN40 directory to print$ share.
       via  b9a59ba s4-smbtorture: add test for Adobe PostScript driver (Win9x) installation.
       via  90a0a7e s4-smbtorture: handle driverfile overlap during removal in RPC-SPOOLSS-DRIVER.
       via  93582c3 s4-smbtorture: re-arrange RPC-SPOOLSS-DRIVER test a bit.
      from  e9c40ef s4:wrepl_server - add a cast on "iov_base"

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


- Log -----------------------------------------------------------------
commit 800a76dec3ca87b5b98006ea2b4220b4d4b55e8f
Author: Günther Deschner <gd at samba.org>
Date:   Mon Nov 29 15:18:13 2010 +0100

    s3-oldtest: add WIN40 to print$ share.
    
    Guenther
    
    Autobuild-User: Günther Deschner <gd at samba.org>
    Autobuild-Date: Mon Nov 29 16:20:37 CET 2010 on sn-devel-104

commit 6a93be43dc28f06ea548d82f48b3eae817104e96
Author: Günther Deschner <gd at samba.org>
Date:   Mon Nov 29 15:17:41 2010 +0100

    s3-selftest: add WIN40 directory to print$ share.
    
    Guenther

commit b9a59ba80d17e20664717ed8dd2a17a708cf4e0b
Author: Günther Deschner <gd at samba.org>
Date:   Mon Nov 29 15:09:52 2010 +0100

    s4-smbtorture: add test for Adobe PostScript driver (Win9x) installation.
    
    Guenther

commit 90a0a7e81babfbad775655e93f08acf15bb4b19d
Author: Günther Deschner <gd at samba.org>
Date:   Mon Nov 29 15:08:01 2010 +0100

    s4-smbtorture: handle driverfile overlap during removal in RPC-SPOOLSS-DRIVER.
    
    Guenther

commit 93582c3d2984ced5a8be8bb3b430c5270048c3e6
Author: Günther Deschner <gd at samba.org>
Date:   Mon Nov 29 13:08:02 2010 +0100

    s4-smbtorture: re-arrange RPC-SPOOLSS-DRIVER test a bit.
    
    Guenther

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

Summary of changes:
 selftest/target/Samba3.pm        |    3 +
 source3/script/tests/selftest.sh |    1 +
 source4/torture/rpc/spoolss.c    |  113 +++++++++++++++++++++++++------------
 3 files changed, 80 insertions(+), 37 deletions(-)


Changeset truncated at 500 lines:

diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm
index 1326949..3d1ae4e 100644
--- a/selftest/target/Samba3.pm
+++ b/selftest/target/Samba3.pm
@@ -387,6 +387,9 @@ sub provision($$$$$$)
 	my $driver64dir="$shrdir/x64";
 	push(@dirs,$driver64dir);
 
+	my $driver40dir="$shrdir/WIN40";
+	push(@dirs,$driver40dir);
+
 	my $ro_shrdir="$shrdir/root-tmp";
 	push(@dirs,$ro_shrdir);
 
diff --git a/source3/script/tests/selftest.sh b/source3/script/tests/selftest.sh
index e68f208..17bb5fe 100755
--- a/source3/script/tests/selftest.sh
+++ b/source3/script/tests/selftest.sh
@@ -190,6 +190,7 @@ export LOCAL_PATH
 ##
 mkdir $SHRDIR/W32X86
 mkdir $SHRDIR/x64
+mkdir $SHRDIR/WIN40
 
 ##
 ## Create a read-only directory.
diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c
index 453c797..25b1275 100644
--- a/source4/torture/rpc/spoolss.c
+++ b/source4/torture/rpc/spoolss.c
@@ -45,6 +45,8 @@
 #define TORTURE_PRINTER_EX		"torture_printer_ex"
 #define TORTURE_DRIVER			"torture_driver"
 #define TORTURE_DRIVER_EX		"torture_driver_ex"
+#define TORTURE_DRIVER_ADOBE		"torture_driver_adobe"
+#define TORTURE_DRIVER_EX_ADOBE		"torture_driver_ex_adobe"
 
 #define TOP_LEVEL_PRINT_KEY "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Print"
 #define TOP_LEVEL_PRINT_PRINTERS_KEY TOP_LEVEL_PRINT_KEY "\\Printers"
@@ -8767,9 +8769,11 @@ static bool remove_printer_driver(struct torture_context *tctx,
 	torture_assert(tctx,
 		remove_printer_driver_file(tctx, cli, d, d->info8.data_file),
 		"failed to remove data_file");
-	torture_assert(tctx,
-		remove_printer_driver_file(tctx, cli, d, d->info8.config_file),
-		"failed to remove config_file");
+	if (!strequal(d->info8.config_file, d->info8.driver_path)) {
+		torture_assert(tctx,
+			remove_printer_driver_file(tctx, cli, d, d->info8.config_file),
+			"failed to remove config_file");
+	}
 	torture_assert(tctx,
 		remove_printer_driver_file(tctx, cli, d, d->info8.help_file),
 		"failed to remove help_file");
@@ -8887,60 +8891,104 @@ static bool test_add_driver_arg(struct torture_context *tctx,
 }
 
 static bool test_add_driver_ex_64(struct torture_context *tctx,
-				  struct dcerpc_pipe *p,
-				  void *private_data)
+				  struct dcerpc_pipe *p)
 {
-	struct torture_driver_context *d =
-		(struct torture_driver_context *)talloc_get_type_abort(private_data, struct torture_driver_context);
+	struct torture_driver_context *d;
 
+	d = talloc_zero(tctx, struct torture_driver_context);
+
+	d->info8.version		= SPOOLSS_DRIVER_VERSION_200X;
+	d->info8.driver_name		= TORTURE_DRIVER_EX;
+	d->info8.architecture		= NULL;
+	d->info8.driver_path		= talloc_strdup(d, "pscript5.dll");
+	d->info8.data_file		= talloc_strdup(d, "cups6.ppd");
+	d->info8.config_file		= talloc_strdup(d, "cupsui6.dll");
 	d->local.environment		= talloc_strdup(d, "Windows x64");
 	d->local.driver_directory	= talloc_strdup(d, "/usr/share/cups/drivers/x64");
-	d->info8.driver_name		= TORTURE_DRIVER_EX;
 	d->ex				= true;
 
 	return test_add_driver_arg(tctx, p, d);
 }
 
 static bool test_add_driver_ex_32(struct torture_context *tctx,
-				  struct dcerpc_pipe *p,
-				  void *private_data)
+				  struct dcerpc_pipe *p)
 {
-	struct torture_driver_context *d =
-		(struct torture_driver_context *)talloc_get_type_abort(private_data, struct torture_driver_context);
+	struct torture_driver_context *d;
+
+	d = talloc_zero(tctx, struct torture_driver_context);
 
+	d->info8.version		= SPOOLSS_DRIVER_VERSION_200X;
+	d->info8.driver_name		= TORTURE_DRIVER_EX;
+	d->info8.architecture		= NULL;
+	d->info8.driver_path		= talloc_strdup(d, "pscript5.dll");
+	d->info8.data_file		= talloc_strdup(d, "cups6.ppd");
+	d->info8.config_file		= talloc_strdup(d, "cupsui6.dll");
 	d->local.environment		= talloc_strdup(d, "Windows NT x86");
 	d->local.driver_directory	= talloc_strdup(d, "/usr/share/cups/drivers/i386");
-	d->info8.driver_name		= TORTURE_DRIVER_EX;
 	d->ex				= true;
 
 	return test_add_driver_arg(tctx, p, d);
 }
 
 static bool test_add_driver_64(struct torture_context *tctx,
-			       struct dcerpc_pipe *p,
-			       void *private_data)
+			       struct dcerpc_pipe *p)
 {
-	struct torture_driver_context *d =
-		(struct torture_driver_context *)talloc_get_type_abort(private_data, struct torture_driver_context);
+	struct torture_driver_context *d;
+
+	d = talloc_zero(tctx, struct torture_driver_context);
 
+	d->info8.version		= SPOOLSS_DRIVER_VERSION_200X;
+	d->info8.driver_name		= TORTURE_DRIVER;
+	d->info8.architecture		= NULL;
+	d->info8.driver_path		= talloc_strdup(d, "pscript5.dll");
+	d->info8.data_file		= talloc_strdup(d, "cups6.ppd");
+	d->info8.config_file		= talloc_strdup(d, "cupsui6.dll");
 	d->local.environment		= talloc_strdup(d, "Windows x64");
 	d->local.driver_directory	= talloc_strdup(d, "/usr/share/cups/drivers/x64");
-	d->info8.driver_name		= TORTURE_DRIVER;
 	d->ex				= false;
 
 	return test_add_driver_arg(tctx, p, d);
 }
 
 static bool test_add_driver_32(struct torture_context *tctx,
-			       struct dcerpc_pipe *p,
-			       void *private_data)
+			       struct dcerpc_pipe *p)
 {
-	struct torture_driver_context *d =
-		(struct torture_driver_context *)talloc_get_type_abort(private_data, struct torture_driver_context);
+	struct torture_driver_context *d;
+
+	d = talloc_zero(tctx, struct torture_driver_context);
 
+	d->info8.version		= SPOOLSS_DRIVER_VERSION_200X;
+	d->info8.driver_name		= TORTURE_DRIVER;
+	d->info8.architecture		= NULL;
+	d->info8.driver_path		= talloc_strdup(d, "pscript5.dll");
+	d->info8.data_file		= talloc_strdup(d, "cups6.ppd");
+	d->info8.config_file		= talloc_strdup(d, "cupsui6.dll");
 	d->local.environment		= talloc_strdup(d, "Windows NT x86");
 	d->local.driver_directory	= talloc_strdup(d, "/usr/share/cups/drivers/i386");
-	d->info8.driver_name		= TORTURE_DRIVER;
+	d->ex				= false;
+
+	return test_add_driver_arg(tctx, p, d);
+}
+
+static bool test_add_driver_adobe(struct torture_context *tctx,
+				  struct dcerpc_pipe *p)
+{
+	struct torture_driver_context *d;
+
+	d = talloc_zero(tctx, struct torture_driver_context);
+
+	d->info8.version		= SPOOLSS_DRIVER_VERSION_9X;
+	d->info8.driver_name		= TORTURE_DRIVER_ADOBE;
+	d->info8.architecture		= NULL;
+	d->info8.driver_path		= talloc_strdup(d, "ADOBEPS4.DRV");
+	d->info8.data_file		= talloc_strdup(d, "DEFPRTR2.PPD");
+	d->info8.config_file		= talloc_strdup(d, "ADOBEPS4.DRV");
+#if 0
+	d->info8.help_file		= talloc_strdup(d, "ADOBEPS4.HLP");
+	d->info8.monitor_name		= talloc_strdup(d, "PSMON.DLL");
+#endif
+	d->local.environment		= talloc_strdup(d, "Windows 4.0");
+	d->local.driver_directory	= talloc_strdup(d, "/usr/share/cups/drivers/adobe/");
 	d->ex				= false;
 
 	return test_add_driver_arg(tctx, p, d);
@@ -8952,22 +9000,13 @@ struct torture_suite *torture_rpc_spoolss_driver(TALLOC_CTX *mem_ctx)
 
 	struct torture_rpc_tcase *tcase = torture_suite_add_rpc_iface_tcase(suite,
 							"driver", &ndr_table_spoolss);
-	struct torture_driver_context *t;
-
-	t = talloc_zero(mem_ctx, struct torture_driver_context);
-
-	t->info8.version	= SPOOLSS_DRIVER_VERSION_200X;
-	t->info8.driver_name	= NULL;
-	t->info8.architecture	= NULL;
-	t->info8.driver_path	= talloc_strdup(t, "pscript5.dll");
-	t->info8.data_file	= talloc_strdup(t, "cups6.ppd");
-	t->info8.config_file	= talloc_strdup(t, "cupsui6.dll");
+	torture_rpc_tcase_add_test(tcase, "add_driver_64", test_add_driver_64);
+	torture_rpc_tcase_add_test(tcase, "add_driver_ex_64", test_add_driver_ex_64);
 
-	torture_rpc_tcase_add_test_ex(tcase, "add_driver_64", test_add_driver_64, t);
-	torture_rpc_tcase_add_test_ex(tcase, "add_driver_ex_64", test_add_driver_ex_64, t);
+	torture_rpc_tcase_add_test(tcase, "add_driver_32", test_add_driver_32);
+	torture_rpc_tcase_add_test(tcase, "add_driver_ex_32", test_add_driver_ex_32);
 
-	torture_rpc_tcase_add_test_ex(tcase, "add_driver_32", test_add_driver_32, t);
-	torture_rpc_tcase_add_test_ex(tcase, "add_driver_ex_32", test_add_driver_ex_32, t);
+	torture_rpc_tcase_add_test(tcase, "add_driver_adobe", test_add_driver_adobe);
 
 	return suite;
 }


-- 
Samba Shared Repository


More information about the samba-cvs mailing list