summaryrefslogtreecommitdiffstats
path: root/source/include/rpc_reg.h
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2005-06-17 01:57:18 +0000
committerGerald Carter <jerry@samba.org>2005-06-17 01:57:18 +0000
commit90c1028e02be13c3782704763d20b54493e3f180 (patch)
tree7d84272586f306cbd3ff017be886a2b7b88ce23a /source/include/rpc_reg.h
parentd5c5020470270120c11467a03cb9800e416f407d (diff)
downloadsamba-90c1028e02be13c3782704763d20b54493e3f180.tar.gz
samba-90c1028e02be13c3782704763d20b54493e3f180.tar.xz
samba-90c1028e02be13c3782704763d20b54493e3f180.zip
r7664: add access check hooks to _reg_open_entry which are passed off
to the reg_XXX backend. If the backend does not define a regkey_access_check() function, we default to using the standard registry_access_check()
Diffstat (limited to 'source/include/rpc_reg.h')
-rw-r--r--source/include/rpc_reg.h12
1 files changed, 5 insertions, 7 deletions
diff --git a/source/include/rpc_reg.h b/source/include/rpc_reg.h
index c83802b3f53..270ba32f4b9 100644
--- a/source/include/rpc_reg.h
+++ b/source/include/rpc_reg.h
@@ -96,7 +96,7 @@ typedef struct {
int (*fetch_values) ( char *key, REGVAL_CTR *val );
BOOL (*store_subkeys)( char *key, REGSUBKEY_CTR *subkeys );
BOOL (*store_values)( char *key, REGVAL_CTR *val );
- BOOL (*reg_access_check)( uint32 parent_granted, uint32 requested, uint32 *granted );
+ BOOL (*reg_access_check)( const char *keyname, uint32 requested, uint32 *granted, NT_USER_TOKEN *token );
} REGISTRY_OPS;
typedef struct {
@@ -108,13 +108,11 @@ typedef struct {
/* structure to store the registry handles */
typedef struct _RegistryKey {
-
struct _RegistryKey *prev, *next;
- /* POLICY_HND hnd; */
- pstring name; /* full name of registry key */
- REGISTRY_HOOK *hook;
-
+ pstring name; /* full name of registry key */
+ uint32 access_granted;
+ REGISTRY_HOOK *hook;
} REGISTRY_KEY;
/*
@@ -412,7 +410,7 @@ typedef struct {
} REG_Q_OPEN_ENTRY;
typedef struct {
- POLICY_HND pol;
+ POLICY_HND handle;
WERROR status;
} REG_R_OPEN_ENTRY;