summaryrefslogtreecommitdiff
path: root/source3/include/secrets.h
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2010-08-05 02:25:37 +0200
committerGünther Deschner <gd@samba.org>2010-08-05 10:12:25 +0200
commitc136b84f0d28d1a88c5918b06f81766a271a3780 (patch)
treeff9f74effdf63e58517597fecc92474786100ff7 /source3/include/secrets.h
parent1946ab5a1b4be6d64307fb24847640f959a1e024 (diff)
downloadsamba-c136b84f0d28d1a88c5918b06f81766a271a3780.tar.gz
samba-c136b84f0d28d1a88c5918b06f81766a271a3780.tar.bz2
samba-c136b84f0d28d1a88c5918b06f81766a271a3780.zip
s3-secrets: only include secrets.h when needed.
Guenther
Diffstat (limited to 'source3/include/secrets.h')
-rw-r--r--source3/include/secrets.h56
1 files changed, 47 insertions, 9 deletions
diff --git a/source3/include/secrets.h b/source3/include/secrets.h
index 624b1465bb..095ab6ee78 100644
--- a/source3/include/secrets.h
+++ b/source3/include/secrets.h
@@ -62,15 +62,6 @@ struct machine_acct_pass {
};
/*
- * trusted domain entry/entries returned by secrets_get_trusted_domains
- * (used in _lsa_enum_trust_dom call)
- */
-struct trustdom_info {
- char *name;
- struct dom_sid sid;
-};
-
-/*
* Format of an OpenAFS keyfile
*/
@@ -88,4 +79,51 @@ struct afs_keyfile {
#define SECRETS_AFS_KEYFILE "SECRETS/AFS_KEYFILE"
+/* The following definitions come from passdb/secrets.c */
+
+bool secrets_init(void);
+struct db_context *secrets_db_ctx(void);
+void secrets_shutdown(void);
+void *secrets_fetch(const char *key, size_t *size);
+bool secrets_store(const char *key, const void *data, size_t size);
+bool secrets_delete(const char *key);
+bool secrets_store_domain_sid(const char *domain, const struct dom_sid *sid);
+bool secrets_fetch_domain_sid(const char *domain, struct dom_sid *sid);
+bool secrets_store_domain_guid(const char *domain, struct GUID *guid);
+bool secrets_fetch_domain_guid(const char *domain, struct GUID *guid);
+void *secrets_get_trust_account_lock(TALLOC_CTX *mem_ctx, const char *domain);
+enum netr_SchannelType get_default_sec_channel(void);
+bool secrets_fetch_trust_account_password_legacy(const char *domain,
+ uint8 ret_pwd[16],
+ time_t *pass_last_set_time,
+ enum netr_SchannelType *channel);
+bool secrets_fetch_trust_account_password(const char *domain, uint8 ret_pwd[16],
+ time_t *pass_last_set_time,
+ enum netr_SchannelType *channel);
+bool secrets_fetch_trusted_domain_password(const char *domain, char** pwd,
+ struct dom_sid *sid, time_t *pass_last_set_time);
+bool secrets_store_trusted_domain_password(const char* domain, const char* pwd,
+ const struct dom_sid *sid);
+bool secrets_delete_machine_password(const char *domain);
+bool secrets_delete_machine_password_ex(const char *domain);
+bool secrets_delete_domain_sid(const char *domain);
+bool secrets_store_machine_password(const char *pass, const char *domain, enum netr_SchannelType sec_channel);
+char *secrets_fetch_prev_machine_password(const char *domain);
+char *secrets_fetch_machine_password(const char *domain,
+ time_t *pass_last_set_time,
+ enum netr_SchannelType *channel);
+bool trusted_domain_password_delete(const char *domain);
+bool secrets_store_ldap_pw(const char* dn, char* pw);
+bool fetch_ldap_pw(char **dn, char** pw);
+NTSTATUS secrets_trusted_domains(TALLOC_CTX *mem_ctx, uint32 *num_domains,
+ struct trustdom_info ***domains);
+bool secrets_store_afs_keyfile(const char *cell, const struct afs_keyfile *keyfile);
+bool secrets_fetch_afs_key(const char *cell, struct afs_key *result);
+void secrets_fetch_ipc_userpass(char **username, char **domain, char **password);
+bool secrets_store_generic(const char *owner, const char *key, const char *secret);
+char *secrets_fetch_generic(const char *owner, const char *key);
+bool secrets_delete_generic(const char *owner, const char *key);
+bool secrets_store_local_schannel_key(uint8_t schannel_key[16]);
+bool secrets_fetch_local_schannel_key(uint8_t schannel_key[16]);
+
#endif /* _SECRETS_H */