Author: metze
Date: 2005-09-10 08:46:28 +0000 (Sat, 10 Sep 2005)
New Revision: 10141

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

Log:
if some of the LIBNDR_ALIGN_* flags and LIBNDR_FLAG_REMAINING are set,
ndr_pull_data_blob() doesn't work correct. so make them exclute each other.

jelmer, tridge: does that look correct? it fixes a problem, abartlet had
with krb5pac.idl, where the align flags are inherited from the parent, and we 
want to get the
[flag(NDR_REMAINING)] DATA_BLOB signature;

metze
Modified:
   branches/SAMBA_4_0/source/librpc/ndr/ndr.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/ndr/ndr.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/ndr/ndr.c  2005-09-10 08:41:57 UTC (rev 
10140)
+++ branches/SAMBA_4_0/source/librpc/ndr/ndr.c  2005-09-10 08:46:28 UTC (rev 
10141)
@@ -246,6 +246,12 @@
        if (new_flags & LIBNDR_FLAG_BIGENDIAN) {
                (*pflags) &= ~LIBNDR_FLAG_LITTLE_ENDIAN;
        }
+       if (new_flags & LIBNDR_FLAG_REMAINING) {
+               (*pflags) &= ~LIBNDR_ALIGN_FLAGS;
+       }
+       if (new_flags & LIBNDR_ALIGN_FLAGS) {
+               (*pflags) &= ~LIBNDR_FLAG_REMAINING;
+       }
        (*pflags) |= new_flags;
 }
 

Reply via email to