summaryrefslogtreecommitdiff
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
commit9674ec6987a002ebdcfedeac4d66a096a1007bef (patch)
tree0c7e3fe1cd30051d806e27a8cf9ccf6f79c9aa69
parent5106ead0e041391b9eaa583894cc539e61a0ab5a (diff)
downloadsamba-9674ec6987a002ebdcfedeac4d66a096a1007bef.tar.gz
samba-9674ec6987a002ebdcfedeac4d66a096a1007bef.tar.bz2
samba-9674ec6987a002ebdcfedeac4d66a096a1007bef.zip
fixed our winreg parsing to handle a diifferent form given to us by
WinXP. This fixes setting security decsriptors from XP Professional. (This used to be commit 80c3c68de20a686ced38356fd68f80a53e6f1626)
-rw-r--r--source3/rpc_parse/parse_reg.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/source3/rpc_parse/parse_reg.c b/source3/rpc_parse/parse_reg.c
index 354ef5c78f..26d748657c 100644
--- a/source3/rpc_parse/parse_reg.c
+++ b/source3/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;
}