diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-08-24 01:52:17 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:34:28 -0500 |
commit | 479ef0a3874098bdc90021908b329f6d74aa1b4b (patch) | |
tree | e7478177a24c2b2cb241bea5cb8cf0727939b5b0 /source4/lib/samba3/samba3dump.c | |
parent | 6622d3be0996c6de2d714a3d32e5b06ffd5db171 (diff) | |
download | samba-479ef0a3874098bdc90021908b329f6d74aa1b4b.tar.gz samba-479ef0a3874098bdc90021908b329f6d74aa1b4b.tar.bz2 samba-479ef0a3874098bdc90021908b329f6d74aa1b4b.zip |
r9557: Some more updates. Use combined function for parsing a set of
samba3 databases
(This used to be commit b91a695bd854c6d37ec536edb2db7b6f97fe69dc)
Diffstat (limited to 'source4/lib/samba3/samba3dump.c')
-rw-r--r-- | source4/lib/samba3/samba3dump.c | 47 |
1 files changed, 10 insertions, 37 deletions
diff --git a/source4/lib/samba3/samba3dump.c b/source4/lib/samba3/samba3dump.c index 6bcfce96fa..88d5cf9369 100644 --- a/source4/lib/samba3/samba3dump.c +++ b/source4/lib/samba3/samba3dump.c @@ -23,49 +23,18 @@ #include "lib/samba3/samba3.h" #include "lib/cmdline/popt_common.h" -static const char *libdir = "/var/lib/samba"; - -static NTSTATUS print_policy(void) +static NTSTATUS print_policy(struct samba3_policy *ret) { - struct samba3_policy *ret; - char *policy_file; - TALLOC_CTX *mem_ctx = talloc_init(NULL); - - policy_file = talloc_asprintf(mem_ctx, "%s/account_policy.tdb", libdir); - - printf("Opening policy file %s\n", policy_file); - - ret = samba3_read_account_policy(mem_ctx, policy_file); - - if (ret == NULL) - return NT_STATUS_UNSUCCESSFUL; - printf("Min password length: %d\n", ret->min_password_length); - talloc_free(mem_ctx); - return NT_STATUS_OK; } -static NTSTATUS print_sam(void) +static NTSTATUS print_sam(struct samba3 *samba3) { - struct samba3_samaccount *accounts; - uint32_t count, i; - char *tdbsam_file; - NTSTATUS status; + struct samba3_samaccount *accounts = samba3->samaccounts; + uint32_t count = samba3->samaccount_count, i; - asprintf(&tdbsam_file, "%s/passdb.tdb", libdir); - - printf("Opening TDB sam %s\n", tdbsam_file); - - status = samba3_read_tdbsam(NULL, tdbsam_file, &accounts, &count); - if (NT_STATUS_IS_ERR(status)) { - fprintf(stderr, "Error reading tdbsam database %s\n", tdbsam_file); - SAFE_FREE(tdbsam_file); - return status; - } - SAFE_FREE(tdbsam_file); - for (i = 0; i < count; i++) { printf("%d: %s\n", accounts[i].user_rid, accounts[i].username); } @@ -76,6 +45,8 @@ static NTSTATUS print_sam(void) int main(int argc, char **argv) { int opt; + const char *libdir = "/var/lib/samba"; + struct samba3 *samba3; poptContext pc; struct poptOption long_options[] = { POPT_AUTOHELP @@ -91,8 +62,10 @@ int main(int argc, char **argv) while((opt = poptGetNextOpt(pc)) != -1) { } - print_sam(); - print_policy(); + samba3 = samba3_read(libdir, NULL); + + print_sam(samba3); + print_policy(&samba3->policy); poptFreeContext(pc); |