s4:irpc: add padding to the IPRC header for 8 byte alignment
authorStefan Metzmacher <metze@samba.org>
Thu, 23 Sep 2010 01:55:40 +0000 (18:55 -0700)
committerAnatoliy Atanasov <anatoliy.atanasov@postpath.com>
Thu, 23 Sep 2010 15:41:04 +0000 (08:41 -0700)
As we marshall the iprc header and the payload to the ndr_push
context, we should pad the irpc header to let the payload start
at an 8 byte boundary.

This way we get the alignment still be correct if we remove the
header before passing the raw payload to the caller.

As we use IRPC more and more for complex NDR marshalled structures
we need to get this right, in order to not get random ndr_pull failures.

metze

Signed-off-by: Anatoliy Atanasov <anatoliy.atanasov@postpath.com>
source4/librpc/idl/irpc.idl

index d6c4f84db9d227780739aa484a0878d85b199d60..2070d3d84f5c55f2a34d8a5094774b1de59bcd09 100644 (file)
@@ -21,6 +21,7 @@ import "misc.idl", "security.idl", "nbt.idl";
                uint32 callid;
                irpc_flags flags;
                NTSTATUS status;
+               [flag(NDR_ALIGN8)] DATA_BLOB _pad;
        } irpc_header;
 
        /******************************************************