diff options
Diffstat (limited to 'source4/torture/rpc/spoolss.c')
-rw-r--r-- | source4/torture/rpc/spoolss.c | 50 |
1 files changed, 10 insertions, 40 deletions
diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c index f2a503b6fd..b1889704a7 100644 --- a/source4/torture/rpc/spoolss.c +++ b/source4/torture/rpc/spoolss.c @@ -1122,6 +1122,7 @@ static bool test_AddJob(struct torture_context *tctx, r.in.handle = handle; r.in.offered = 0; r.out.needed = &needed; + r.in.buffer = r.out.buffer = NULL; torture_comment(tctx, "Testing AddJob\n"); @@ -1381,6 +1382,7 @@ static bool test_GetPrinterDataEx(struct torture_context *tctx, r.in.offered = 0; r.out.type = &type; r.out.needed = &needed; + r.out.buffer = NULL; torture_comment(tctx, "Testing GetPrinterDataEx\n"); @@ -1658,8 +1660,10 @@ static bool test_OpenPrinter(struct torture_context *tctx, ret = false; } - if (!test_SecondaryClosePrinter(tctx, p, &handle)) { - ret = false; + if (!torture_setting_bool(tctx, "samba3", false)) { + if (!test_SecondaryClosePrinter(tctx, p, &handle)) { + ret = false; + } } if (!test_ClosePrinter(tctx, p, &handle)) { @@ -1758,8 +1762,10 @@ static bool test_OpenPrinterEx(struct torture_context *tctx, ret = false; } - if (!test_SecondaryClosePrinter(tctx, p, &handle)) { - ret = false; + if (!torture_setting_bool(tctx, "samba3", false)) { + if (!test_SecondaryClosePrinter(tctx, p, &handle)) { + ret = false; + } } if (!test_ClosePrinter(tctx, p, &handle)) { @@ -1941,41 +1947,6 @@ static bool test_EnumPrinterDrivers_old(struct torture_context *tctx, return true; } -/** Test that makes sure that calling ReplyOpenPrinter() - * on Samba 4 will cause an irpc broadcast call. - */ -static bool test_ReplyOpenPrinter(struct torture_context *tctx, - struct dcerpc_pipe *pipe) -{ - struct spoolss_ReplyOpenPrinter r; - struct spoolss_ReplyClosePrinter s; - struct policy_handle h; - - r.in.server_name = "earth"; - r.in.printer_local = 2; - r.in.type = REG_DWORD; - r.in.bufsize = 0; - r.in.buffer = NULL; - r.out.handle = &h; - - torture_assert_ntstatus_ok(tctx, - dcerpc_spoolss_ReplyOpenPrinter(pipe, tctx, &r), - "spoolss_ReplyOpenPrinter call failed"); - - torture_assert_werr_ok(tctx, r.out.result, "error return code"); - - s.in.handle = &h; - s.out.handle = &h; - - torture_assert_ntstatus_ok(tctx, - dcerpc_spoolss_ReplyClosePrinter(pipe, tctx, &s), - "spoolss_ReplyClosePrinter call failed"); - - torture_assert_werr_ok(tctx, r.out.result, "error return code"); - - return true; -} - bool torture_rpc_spoolss(struct torture_context *torture) { NTSTATUS status; @@ -2029,7 +2000,6 @@ bool torture_rpc_spoolss(struct torture_context *torture) ret &= test_EnumPorts_old(torture, p); ret &= test_EnumPrinters_old(torture, p); ret &= test_EnumPrinterDrivers_old(torture, p); - ret &= test_ReplyOpenPrinter(torture, p); return ret; } |