summaryrefslogtreecommitdiffstats
path: root/source/rpc_parse/parse_reg.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2002-07-02 04:22:59 +0000
committerAndrew Tridgell <tridge@samba.org>2002-07-02 04:22:59 +0000
commit80c3c68de20a686ced38356fd68f80a53e6f1626 (patch)
tree5a510fd06d512700324bef067e57c730a1ad704b /source/rpc_parse/parse_reg.c
parentdaf4c6a013ffa474d768055e73a1cb31ee941e80 (diff)
downloadsamba-80c3c68de20a686ced38356fd68f80a53e6f1626.tar.gz
samba-80c3c68de20a686ced38356fd68f80a53e6f1626.tar.xz
samba-80c3c68de20a686ced38356fd68f80a53e6f1626.zip
fixed our winreg parsing to handle a diifferent form given to us by
WinXP. This fixes setting security decsriptors from XP Professional.
Diffstat (limited to 'source/rpc_parse/parse_reg.c')
-rw-r--r--source/rpc_parse/parse_reg.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/source/rpc_parse/parse_reg.c b/source/rpc_parse/parse_reg.c
index 354ef5c78fe..26d748657cb 100644
--- a/source/rpc_parse/parse_reg.c
+++ b/source/rpc_parse/parse_reg.c
@@ -1010,13 +1010,15 @@ BOOL reg_io_q_info(char *desc, REG_Q_INFO *r_q, prs_struct *ps, int depth)
if(!prs_uint32("ptr_buflen", ps, depth, &(r_q->ptr_buflen)))
return False;
- if(!prs_uint32("buflen", ps, depth, &(r_q->buflen)))
- return False;
- if(!prs_uint32("ptr_buflen2", ps, depth, &(r_q->ptr_buflen2)))
- return False;
- if(!prs_uint32("buflen2", ps, depth, &(r_q->buflen2)))
- return False;
+ if (r_q->ptr_buflen) {
+ if(!prs_uint32("buflen", ps, depth, &(r_q->buflen)))
+ return False;
+ if(!prs_uint32("ptr_buflen2", ps, depth, &(r_q->ptr_buflen2)))
+ return False;
+ if(!prs_uint32("buflen2", ps, depth, &(r_q->buflen2)))
+ return False;
+ }
return True;
}