The branch, master has been updated
       via  73edd66 s4-smbtorture: try to fix spoolss winreg Form tests on 
bigendian machines.
      from  4c3e6a5 tdb: add ABI/tdb-1.2.4.sigs

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


- Log -----------------------------------------------------------------
commit 73edd661eaec3b1f0d8705d545160ff4a2d97948
Author: Günther Deschner <[email protected]>
Date:   Tue Sep 14 15:23:45 2010 +0200

    s4-smbtorture: try to fix spoolss winreg Form tests on bigendian machines.
    
    Guenther

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

Summary of changes:
 source4/torture/rpc/spoolss.c |   51 +++++++++++++++++++++++++++++------------
 1 files changed, 36 insertions(+), 15 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c
index 25c410a..c1079af 100644
--- a/source4/torture/rpc/spoolss.c
+++ b/source4/torture/rpc/spoolss.c
@@ -2681,21 +2681,31 @@ static bool test_Forms_args(struct torture_context 
*tctx,
 
        if (winreg_handle && hive_handle && W_ERROR_IS_OK(expected_add_result)) 
{
 
+               struct spoolss_FormInfo1 i1;
+
                torture_assert(tctx,
                        test_GetForm_winreg(tctx, winreg_handle, hive_handle, 
TOP_LEVEL_CONTROL_FORMS_KEY, form_name, &w_type, &w_size, &w_length, &w_data),
                        "failed to get form via winreg");
 
+               i1.size.width   = IVAL(w_data, 0);
+               i1.size.height  = IVAL(w_data, 4);
+               i1.area.left    = IVAL(w_data, 8);
+               i1.area.top     = IVAL(w_data, 12);
+               i1.area.right   = IVAL(w_data, 16);
+               i1.area.bottom  = IVAL(w_data, 20);
+               /* skip index here */
+               i1.flags        = IVAL(w_data, 28);
+
                torture_assert_int_equal(tctx, w_type, REG_BINARY, "unexpected 
type");
                torture_assert_int_equal(tctx, w_size, 0x20, "unexpected size");
                torture_assert_int_equal(tctx, w_length, 0x20, "unexpected 
length");
-               torture_assert_mem_equal(tctx, &w_data[0], 
&add_info.info1->size.width, 4, "width mismatch");
-               torture_assert_mem_equal(tctx, &w_data[4], 
&add_info.info1->size.height, 4, "height mismatch");
-               torture_assert_mem_equal(tctx, &w_data[8], 
&add_info.info1->area.left, 4, "left mismatch");
-               torture_assert_mem_equal(tctx, &w_data[12], 
&add_info.info1->area.top, 4, "top mismatch");
-               torture_assert_mem_equal(tctx, &w_data[16], 
&add_info.info1->area.right, 4, "right mismatch");
-               torture_assert_mem_equal(tctx, &w_data[20], 
&add_info.info1->area.bottom, 4, "bottom mismatch");
-               /* skip index here */
-               torture_assert_mem_equal(tctx, &w_data[28], 
&add_info.info1->flags, 4, "flags mismatch");
+               torture_assert_int_equal(tctx, i1.size.width, 
add_info.info1->size.width, "width mismatch");
+               torture_assert_int_equal(tctx, i1.size.height, 
add_info.info1->size.height, "height mismatch");
+               torture_assert_int_equal(tctx, i1.area.left, 
add_info.info1->area.left, "left mismatch");
+               torture_assert_int_equal(tctx, i1.area.top, 
add_info.info1->area.top, "top mismatch");
+               torture_assert_int_equal(tctx, i1.area.right, 
add_info.info1->area.right, "right mismatch");
+               torture_assert_int_equal(tctx, i1.area.bottom, 
add_info.info1->area.bottom, "bottom mismatch");
+               torture_assert_int_equal(tctx, i1.flags, add_info.info1->flags, 
"flags mismatch");
        }
 
        if (!print_server && W_ERROR_IS_OK(expected_add_result)) {
@@ -2712,14 +2722,25 @@ static bool test_Forms_args(struct torture_context 
*tctx,
                torture_assert_int_equal(tctx, info.info1.flags, 
add_info.info1->flags, "flags mismatch");
 
                if (winreg_handle && hive_handle) {
-                       torture_assert_mem_equal(tctx, &w_data[0], 
&info.info1.size.width, 4, "width mismatch");
-                       torture_assert_mem_equal(tctx, &w_data[4], 
&info.info1.size.height, 4, "height mismatch");
-                       torture_assert_mem_equal(tctx, &w_data[8], 
&info.info1.area.left, 4, "left mismatch");
-                       torture_assert_mem_equal(tctx, &w_data[12], 
&info.info1.area.top, 4, "top mismatch");
-                       torture_assert_mem_equal(tctx, &w_data[16], 
&info.info1.area.right, 4, "right mismatch");
-                       torture_assert_mem_equal(tctx, &w_data[20], 
&info.info1.area.bottom, 4, "bottom mismatch");
+
+                       struct spoolss_FormInfo1 i1;
+
+                       i1.size.width   = IVAL(w_data, 0);
+                       i1.size.height  = IVAL(w_data, 4);
+                       i1.area.left    = IVAL(w_data, 8);
+                       i1.area.top     = IVAL(w_data, 12);
+                       i1.area.right   = IVAL(w_data, 16);
+                       i1.area.bottom  = IVAL(w_data, 20);
                        /* skip index here */
-                       torture_assert_mem_equal(tctx, &w_data[28], 
&info.info1.flags, 4, "flags mismatch");
+                       i1.flags        = IVAL(w_data, 28);
+
+                       torture_assert_int_equal(tctx, i1.size.width, 
info.info1.size.width, "width mismatch");
+                       torture_assert_int_equal(tctx, i1.size.height, 
info.info1.size.height, "height mismatch");
+                       torture_assert_int_equal(tctx, i1.area.left, 
info.info1.area.left, "left mismatch");
+                       torture_assert_int_equal(tctx, i1.area.top, 
info.info1.area.top, "top mismatch");
+                       torture_assert_int_equal(tctx, i1.area.right, 
info.info1.area.right, "right mismatch");
+                       torture_assert_int_equal(tctx, i1.area.bottom, 
info.info1.area.bottom, "bottom mismatch");
+                       torture_assert_int_equal(tctx, i1.flags, 
info.info1.flags, "flags mismatch");
                }
 
                add_info.info1->size.width = 1234;


-- 
Samba Shared Repository

Reply via email to