s4-smbtorture: fix test_GetPrinter.
authorGünther Deschner <gd@samba.org>
Fri, 6 Feb 2009 11:22:35 +0000 (12:22 +0100)
committerGünther Deschner <gd@samba.org>
Fri, 6 Feb 2009 13:59:21 +0000 (14:59 +0100)
Guenther

source4/torture/rpc/spoolss.c

index 7a64d9abcb652136baa26109a5d82520aaebefed..a2965ad05f1ea53255ed1f86e7aad8cb8612956f 100644 (file)
@@ -605,12 +605,14 @@ static bool test_GetPrinter(struct torture_context *tctx,
        struct spoolss_GetPrinter r;
        uint16_t levels[] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
        int i;
+       uint32_t needed;
        
        for (i=0;i<ARRAY_SIZE(levels);i++) {
                r.in.handle = handle;
                r.in.level = levels[i];
                r.in.buffer = NULL;
                r.in.offered = 0;
+               r.out.needed = &needed;
 
                torture_comment(tctx, "Testing GetPrinter level %u\n", r.in.level);
 
@@ -618,10 +620,10 @@ static bool test_GetPrinter(struct torture_context *tctx,
                torture_assert_ntstatus_ok(tctx, status, "GetPrinter failed");
                
                if (W_ERROR_EQUAL(r.out.result, WERR_INSUFFICIENT_BUFFER)) {
-                       DATA_BLOB blob = data_blob_talloc(tctx, NULL, r.out.needed);
+                       DATA_BLOB blob = data_blob_talloc(tctx, NULL, needed);
                        data_blob_clear(&blob);
                        r.in.buffer = &blob;
-                       r.in.offered = r.out.needed;
+                       r.in.offered = needed;
                        status = dcerpc_spoolss_GetPrinter(p, tctx, &r);
                }