summaryrefslogtreecommitdiff
path: root/source3/include/rpc_reg.h
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2005-05-23 16:25:31 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:56:57 -0500
commitf0c650a38286c07b9f3e83139c15bfbadc70ad5f (patch)
tree2c63cd42bf12e46c94628a82a40b19db47fd0aae /source3/include/rpc_reg.h
parente2404c81295fe3468c9b635b549f1b16f5c5f323 (diff)
downloadsamba-f0c650a38286c07b9f3e83139c15bfbadc70ad5f.tar.gz
samba-f0c650a38286c07b9f3e83139c15bfbadc70ad5f.tar.bz2
samba-f0c650a38286c07b9f3e83139c15bfbadc70ad5f.zip
r6942: * merging the registry changes back to the 3.0 tree
* removing the testprns tool (This used to be commit 81ffb0dbbbd244623507880c323a3c37e2b8dc4d)
Diffstat (limited to 'source3/include/rpc_reg.h')
-rw-r--r--source3/include/rpc_reg.h88
1 files changed, 25 insertions, 63 deletions
diff --git a/source3/include/rpc_reg.h b/source3/include/rpc_reg.h
index f70fb5f03c..2849122667 100644
--- a/source3/include/rpc_reg.h
+++ b/source3/include/rpc_reg.h
@@ -25,6 +25,8 @@
#ifndef _RPC_REG_H /* _RPC_REG_H */
#define _RPC_REG_H
+#include "reg_objects.h"
+
/* RPC opnum */
#define REG_OPEN_HKCR 0x00
@@ -58,12 +60,15 @@
#define HKEY_USERS 0x80000003
#define HKEY_PERFORMANCE_DATA 0x80000004
-#define KEY_HKLM "HKLM"
-#define KEY_HKU "HKU"
-#define KEY_HKCR "HKCR"
-#define KEY_PRINTING "HKLM\\SYSTEM\\CurrentControlSet\\Control\\Print"
-#define KEY_EVENTLOG "HKLM\\SYSTEM\\CurrentControlSet\\Services\\Eventlog"
-#define KEY_TREE_ROOT ""
+#define KEY_HKLM "HKLM"
+#define KEY_HKU "HKU"
+#define KEY_HKCR "HKCR"
+#define KEY_PRINTING "HKLM\\SYSTEM\\CurrentControlSet\\Control\\Print"
+#define KEY_PRINTING_2K "HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Print"
+#define KEY_PRINTING_PORTS "HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Ports"
+#define KEY_EVENTLOG "HKLM\\SYSTEM\\CurrentControlSet\\Services\\Eventlog"
+#define KEY_SHARES "HKLM\\SYSTEM\\CurrentControlSet\\Services\\LanmanServer\\Shares"
+#define KEY_TREE_ROOT ""
/* Registry data types */
@@ -80,36 +85,6 @@
#define REG_FULL_RESOURCE_DESCRIPTOR 9
#define REG_RESOURCE_REQUIREMENTS_LIST 10
-/*
- * INTERNAL REGISTRY STRUCTURES
- */
-
-/* structure to contain registry values */
-
-typedef struct {
- fstring valuename;
- uint16 type;
- uint32 size; /* in bytes */
- uint8 *data_p;
-} REGISTRY_VALUE;
-
-/* container for registry values */
-
-typedef struct {
- TALLOC_CTX *ctx;
- uint32 num_values;
- REGISTRY_VALUE **values;
-} REGVAL_CTR;
-
-/* container for registry subkey names */
-
-typedef struct {
- TALLOC_CTX *ctx;
- uint32 num_subkeys;
- char **subkeys;
-} REGSUBKEY_CTR;
-
-
/*
* container for function pointers to enumeration routines
* for vitural registry view
@@ -129,7 +104,6 @@ typedef struct {
} REGISTRY_HOOK;
-
/* structure to store the registry handles */
typedef struct _RegistryKey {
@@ -225,16 +199,16 @@ typedef struct {
UNISTR4 name;
uint32 *type;
REGVAL_BUFFER *value; /* value, in byte buffer */
- uint32 *len_value1;
- uint32 *len_value2;
+ uint32 *buffer_len;
+ uint32 *name_len;
} REG_Q_ENUM_VALUE;
typedef struct {
UNISTR4 name;
uint32 *type;
REGVAL_BUFFER *value;
- uint32 *len_value1;
- uint32 *len_value2;
+ uint32 *buffer_len1;
+ uint32 *buffer_len2;
WERROR status;
} REG_R_ENUM_VALUE;
@@ -377,33 +351,21 @@ typedef struct {
typedef struct {
POLICY_HND pol;
uint32 key_index;
- uint16 key_name_len; /* 0x0000 */
+ uint16 key_name_len;
uint16 unknown_1; /* 0x0414 */
- uint32 ptr1; /* pointer */
+ uint32 ptr1;
uint32 unknown_2; /* 0x0000 020A */
- uint8 pad1[8]; /* padding - zeros */
- uint32 ptr2; /* pointer */
- uint8 pad2[8]; /* padding - zeros */
- uint32 ptr3; /* pointer */
- NTTIME time; /* current time? */
+ uint8 pad1[8];
+ uint32 ptr2;
+ uint8 pad2[8];
+ uint32 ptr3;
+ NTTIME time;
} REG_Q_ENUM_KEY;
typedef struct {
- uint16 key_name_len; /* number of bytes in key name */
- uint16 unknown_1; /* 0x0414 - matches with query unknown_1 */
-
- uint32 ptr1; /* pointer */
- uint32 unknown_2; /* 0x0000 020A */
- uint32 unknown_3; /* 0x0000 0000 */
-
- UNISTR3 key_name;
-
- uint32 ptr2; /* pointer */
- uint8 pad2[8]; /* padding - zeros */
-
- uint32 ptr3; /* pointer */
- NTTIME time; /* current time? */
-
+ UNISTR4 keyname;
+ UNISTR4 *classname;
+ NTTIME *time;
WERROR status; /* return status */
} REG_R_ENUM_KEY;