summaryrefslogtreecommitdiff
path: root/source3/rpc_parse
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1999-10-29 16:24:11 +0000
committerLuke Leighton <lkcl@samba.org>1999-10-29 16:24:11 +0000
commit3d096e1b8f5a253b61cbfa6155b0a16a5394c847 (patch)
tree14d6ab4f91467f5f9ff10f82dc7d18f36ee938d5 /source3/rpc_parse
parent97993e4973333b504abd2de7a23b1a554841d547 (diff)
downloadsamba-3d096e1b8f5a253b61cbfa6155b0a16a5394c847.tar.gz
samba-3d096e1b8f5a253b61cbfa6155b0a16a5394c847.tar.bz2
samba-3d096e1b8f5a253b61cbfa6155b0a16a5394c847.zip
added HKEY_CLASSES_ROOT MSRPC open call. reg_open_hkcr etc. supported
in rpcclient, regenum HKEY_CLASSES_ROOT or regenum HKCR to test. (This used to be commit b0aa933ef4c0b58840430cf3b3cb3cbeb5c7f704)
Diffstat (limited to 'source3/rpc_parse')
-rw-r--r--source3/rpc_parse/parse_reg.c58
1 files changed, 58 insertions, 0 deletions
diff --git a/source3/rpc_parse/parse_reg.c b/source3/rpc_parse/parse_reg.c
index 9c6ec61716..01776974fd 100644
--- a/source3/rpc_parse/parse_reg.c
+++ b/source3/rpc_parse/parse_reg.c
@@ -30,6 +30,64 @@ extern int DEBUGLEVEL;
/*******************************************************************
creates a structure.
********************************************************************/
+BOOL make_reg_q_open_hkcr(REG_Q_OPEN_HKCR *q_o,
+ uint16 unknown_0, uint32 level)
+{
+ q_o->ptr = 1;
+ q_o->unknown_0 = unknown_0;
+ q_o->unknown_1 = 0x0; /* random - changes */
+ q_o->level = level;
+
+ return True;
+}
+
+/*******************************************************************
+reads or writes a structure.
+********************************************************************/
+BOOL reg_io_q_open_hkcr(char *desc, REG_Q_OPEN_HKCR *r_q, prs_struct *ps, int depth)
+{
+ if (r_q == NULL) return False;
+
+ prs_debug(ps, depth, desc, "reg_io_q_open_hkcr");
+ depth++;
+
+ prs_align(ps);
+
+ prs_uint32("ptr ", ps, depth, &(r_q->ptr ));
+ if (r_q->ptr != 0)
+ {
+ prs_uint16("unknown_0", ps, depth, &(r_q->unknown_0));
+ prs_uint16("unknown_1", ps, depth, &(r_q->unknown_1));
+ prs_uint32("level ", ps, depth, &(r_q->level ));
+ }
+
+ return True;
+}
+
+
+/*******************************************************************
+reads or writes a structure.
+********************************************************************/
+BOOL reg_io_r_open_hkcr(char *desc, REG_R_OPEN_HKCR *r_r, prs_struct *ps, int depth)
+{
+ if (r_r == NULL) return False;
+
+ prs_debug(ps, depth, desc, "reg_io_r_open_hkcr");
+ depth++;
+
+ prs_align(ps);
+
+ smb_io_pol_hnd("", &(r_r->pol), ps, depth);
+
+ prs_uint32("status", ps, depth, &(r_r->status));
+
+ return True;
+}
+
+
+/*******************************************************************
+creates a structure.
+********************************************************************/
BOOL make_reg_q_open_hklm(REG_Q_OPEN_HKLM *q_o,
uint16 unknown_0, uint32 level)
{