Author: metze
Date: 2005-10-14 06:07:23 +0000 (Fri, 14 Oct 2005)
New Revision: 10986

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10986

Log:
loop also when we use mszip compression

metze
Modified:
   branches/SAMBA_4_0/source/torture/rpc/dssync.c


Changeset:
Modified: branches/SAMBA_4_0/source/torture/rpc/dssync.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/dssync.c      2005-10-14 06:06:18 UTC 
(rev 10985)
+++ branches/SAMBA_4_0/source/torture/rpc/dssync.c      2005-10-14 06:07:23 UTC 
(rev 10986)
@@ -279,6 +279,8 @@
        const char *partition = NULL;
        struct drsuapi_DsGetNCChanges r;
        struct drsuapi_DsReplicaObjectIdentifier nc;
+       struct drsuapi_DsGetNCChangesCtr6 *ctr6 = NULL;
+       int32_t out_level = 0;
        struct GUID null_guid;
        struct dom_sid null_sid;
        struct {
@@ -403,15 +405,26 @@
                        }
 
                        if (ret == True && r.out.level == 6) {
+                               out_level = 6;
+                               ctr6 = &r.out.ctr.ctr6;
+                       } else if (ret == True && r.out.level == 7
+                                  && r.out.ctr.ctr7.level == 6
+                                  && r.out.ctr.ctr7.type == 
DRSUAPI_COMPRESSION_TYPE_MSZIP) {
+                               out_level = 6;
+                               ctr6 = r.out.ctr.ctr7.ctr.mszip6.ctr6;
+                       }
+
+                       if (out_level == 6) {
                                DEBUG(0,("end[%d] tmp_highest_usn: %llu , 
highest_usn: %llu\n",y,
-                                       
r.out.ctr.ctr6.new_highwatermark.tmp_highest_usn,
-                                       
r.out.ctr.ctr6.new_highwatermark.highest_usn));
+                                       ctr6->new_highwatermark.tmp_highest_usn,
+                                       ctr6->new_highwatermark.highest_usn));
 
-                               if 
(r.out.ctr.ctr6.new_highwatermark.tmp_highest_usn > 
r.out.ctr.ctr6.new_highwatermark.highest_usn) {
-                                       r.in.req.req8.highwatermark = 
r.out.ctr.ctr6.new_highwatermark;
+                               if (ctr6->new_highwatermark.tmp_highest_usn > 
ctr6->new_highwatermark.highest_usn) {
+                                       r.in.req.req8.highwatermark = 
ctr6->new_highwatermark;
                                        continue;
                                }
                        }
+
                        break;
                }
        }

Reply via email to