merge from APP_HEAD
authorGerald Carter <jerry@samba.org>
Wed, 26 Jun 2002 19:08:32 +0000 (19:08 +0000)
committerGerald Carter <jerry@samba.org>
Wed, 26 Jun 2002 19:08:32 +0000 (19:08 +0000)
(This used to be commit d8cf54399d89b4023102ed8326d35147d91e4168)

source3/rpc_parse/parse_misc.c
source3/rpc_parse/parse_sec.c

index 398ccccab3d041e684a4d777e29cbb6267edfcfa..01d76981736f5bb9e7c610b3b35b2a21de99c29a 100644 (file)
@@ -214,9 +214,6 @@ BOOL smb_io_dom_sid(char *desc, DOM_SID *sid, prs_struct *ps, int depth)
        prs_debug(ps, depth, desc, "smb_io_dom_sid");
        depth++;
 
-       if(!prs_align(ps))
-               return False;
-       
        if(!prs_uint8 ("sid_rev_num", ps, depth, &sid->sid_rev_num))
                return False;
        if(!prs_uint8 ("num_auths  ", ps, depth, &sid->num_auths))
index 07004cda1b06a7e089cefc7fd4f6b3c4c543ff1d..e97cd261e00e2e27e3de594c1ce27908aa25cf61 100644 (file)
@@ -1,5 +1,6 @@
 /* 
- *  Unix SMB/CIFS implementation.
+ *  Unix SMB/Netbios implementation.
+ *  Version 1.9.
  *  RPC Pipe client / server routines
  *  Copyright (C) Andrew Tridgell              1992-1998,
  *  Copyright (C) Jeremy R. Allison            1995-1998
@@ -46,9 +47,6 @@ BOOL sec_io_access(char *desc, SEC_ACCESS *t, prs_struct *ps, int depth)
 
        prs_debug(ps, depth, desc, "sec_io_access");
        depth++;
-
-       if(!prs_align(ps))
-               return False;
        
        if(!prs_uint32("mask", ps, depth, &(t->mask)))
                return False;
@@ -115,9 +113,6 @@ BOOL sec_io_ace(char *desc, SEC_ACE *psa, prs_struct *ps, int depth)
 
        prs_debug(ps, depth, desc, "sec_io_ace");
        depth++;
-
-       if(!prs_align(ps))
-               return False;
        
        old_offset = prs_offset(ps);
 
@@ -296,6 +291,13 @@ BOOL sec_io_acl(char *desc, SEC_ACL **ppsa, prs_struct *ps, int depth)
        uint32 offset_acl_size;
        SEC_ACL *psa;
 
+       /*
+        * Note that the size is always a multiple of 4 bytes due to the
+        * nature of the data structure.  Therefore the prs_align() calls
+        * have been removed as they through us off when doing two-layer
+        * marshalling such as in the printing code (NEW_BUFFER).  --jerry
+        */
+
        if (ppsa == NULL)
                return False;
 
@@ -312,9 +314,6 @@ BOOL sec_io_acl(char *desc, SEC_ACL **ppsa, prs_struct *ps, int depth)
 
        prs_debug(ps, depth, desc, "sec_io_acl");
        depth++;
-
-       if(!prs_align(ps))
-               return False;
        
        old_offset = prs_offset(ps);
 
@@ -344,9 +343,6 @@ BOOL sec_io_acl(char *desc, SEC_ACL **ppsa, prs_struct *ps, int depth)
                        return False;
        }
 
-       if(!prs_align(ps))
-               return False;
-
        if(!prs_uint16_post("size     ", ps, depth, &psa->size, offset_acl_size, old_offset))
                return False;