4 #include "reg_objects.h"
6 /* The following definitions come from registry/reg_api.c */
8 WERROR
reg_openhive(TALLOC_CTX
*mem_ctx
, const char *hive
,
10 const struct nt_user_token
*token
,
11 struct registry_key
**pkey
);
12 WERROR
reg_openkey(TALLOC_CTX
*mem_ctx
, struct registry_key
*parent
,
13 const char *name
, uint32 desired_access
,
14 struct registry_key
**pkey
);
15 WERROR
reg_enumkey(TALLOC_CTX
*mem_ctx
, struct registry_key
*key
,
16 uint32 idx
, char **name
, NTTIME
*last_write_time
);
17 WERROR
reg_enumvalue(TALLOC_CTX
*mem_ctx
, struct registry_key
*key
,
18 uint32 idx
, char **pname
, struct registry_value
**pval
);
19 WERROR
reg_queryvalue(TALLOC_CTX
*mem_ctx
, struct registry_key
*key
,
20 const char *name
, struct registry_value
**pval
);
21 WERROR
reg_queryinfokey(struct registry_key
*key
, uint32_t *num_subkeys
,
22 uint32_t *max_subkeylen
, uint32_t *max_subkeysize
,
23 uint32_t *num_values
, uint32_t *max_valnamelen
,
24 uint32_t *max_valbufsize
, uint32_t *secdescsize
,
25 NTTIME
*last_changed_time
);
26 WERROR
reg_createkey(TALLOC_CTX
*ctx
, struct registry_key
*parent
,
27 const char *subkeypath
, uint32 desired_access
,
28 struct registry_key
**pkey
,
29 enum winreg_CreateAction
*paction
);
30 WERROR
reg_deletekey(struct registry_key
*parent
, const char *path
);
31 WERROR
reg_setvalue(struct registry_key
*key
, const char *name
,
32 const struct registry_value
*val
);
33 WERROR
reg_deletevalue(struct registry_key
*key
, const char *name
);
34 WERROR
reg_getkeysecurity(TALLOC_CTX
*mem_ctx
, struct registry_key
*key
,
35 struct security_descriptor
**psecdesc
);
36 WERROR
reg_setkeysecurity(struct registry_key
*key
,
37 struct security_descriptor
*psecdesc
);
38 WERROR
reg_getversion(uint32_t *version
);
39 WERROR
reg_restorekey(struct registry_key
*key
, const char *fname
);
40 WERROR
reg_savekey(struct registry_key
*key
, const char *fname
);
41 WERROR
reg_deleteallvalues(struct registry_key
*key
);
42 WERROR
reg_open_path(TALLOC_CTX
*mem_ctx
, const char *orig_path
,
43 uint32 desired_access
, const struct nt_user_token
*token
,
44 struct registry_key
**pkey
);
45 WERROR
reg_deletekey_recursive(TALLOC_CTX
*ctx
,
46 struct registry_key
*parent
,
48 WERROR
reg_deletesubkeys_recursive(TALLOC_CTX
*ctx
,
49 struct registry_key
*parent
,
51 WERROR
reg_create_path(TALLOC_CTX
*mem_ctx
, const char *orig_path
,
52 uint32 desired_access
,
53 const struct nt_user_token
*token
,
54 enum winreg_CreateAction
*paction
,
55 struct registry_key
**pkey
);
56 WERROR
reg_delete_path(const struct nt_user_token
*token
,
57 const char *orig_path
);
59 /* The following definitions come from registry/reg_init_basic.c */
61 WERROR
registry_init_common(void);
62 WERROR
registry_init_basic(void);
64 /* The following definitions come from registry/reg_init_full.c */
66 WERROR
registry_init_full(void);
68 /* The following definitions come from registry/reg_init_smbconf.c */
70 NTSTATUS
registry_create_admin_token(TALLOC_CTX
*mem_ctx
,
71 NT_USER_TOKEN
**ptoken
);
72 WERROR
registry_init_smbconf(const char *keyname
);
74 /* The following definitions come from lib/util_reg_api.c */
76 WERROR
registry_pull_value(TALLOC_CTX
*mem_ctx
,
77 struct registry_value
**pvalue
,
78 enum winreg_Type type
, uint8
*data
,
79 uint32 size
, uint32 length
);
80 WERROR
registry_push_value(TALLOC_CTX
*mem_ctx
,
81 const struct registry_value
*value
,
84 #endif /* _REGISTRY_H */