From e40a0a7f27950bd0484fe7d6b67dce45cd75d25c Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Sun, 27 Jan 2002 03:00:56 +0000 Subject: Give pdbedit a -D paramater for setting the DEBUGLEVEL (makes debugging passdb much saner :-). Change to pdb_init_sam()/pdb_free_sam() loop rather than reset based due to the talloc basis. Andrew Bartlett --- source/utils/pdbedit.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/source/utils/pdbedit.c b/source/utils/pdbedit.c index 5202d8d3fe8..4f3ceaf18f8 100644 --- a/source/utils/pdbedit.c +++ b/source/utils/pdbedit.c @@ -58,6 +58,7 @@ static void usage(void) printf(" -m it is a machine trust\n"); printf(" -x delete this user\n"); printf(" -i file import account from file (smbpasswd style)\n"); + printf(" -D debuglevel set DEBUGELEVEL (default = 1)\n"); exit(1); } @@ -160,19 +161,20 @@ static int print_users_list (BOOL verbosity, BOOL smbpwdstyle) ret = pdb_setsampwent(False); if (ret && errno == ENOENT) { fprintf (stderr,"Password database not found!\n"); - pdb_free_sam(&sam_pwent); exit(1); } + pdb_free_sam(&sam_pwent); - while ((ret = pdb_getsampwent (sam_pwent))) { + while ((NT_STATUS_IS_OK(pdb_init_sam(&sam_pwent)) + && (ret = pdb_getsampwent (sam_pwent)))) { if (verbosity) printf ("---------------\n"); print_sam_info (sam_pwent, verbosity, smbpwdstyle); - pdb_reset_sam(sam_pwent); + pdb_free_sam(&sam_pwent); } + pdb_free_sam(&sam_pwent); pdb_endsampwent (); - pdb_free_sam(&sam_pwent); return 0; } @@ -572,7 +574,7 @@ int main (int argc, char **argv) exit(1); } - while ((ch = getopt(argc, argv, "ad:f:h:i:lmp:s:u:vwx")) != EOF) { + while ((ch = getopt(argc, argv, "ad:f:h:i:lmp:s:u:vwxD:")) != EOF) { switch(ch) { case 'a': add_user = True; @@ -619,6 +621,9 @@ int main (int argc, char **argv) import = True; smbpasswd = optarg; break; + case 'D': + DEBUGLEVEL = atoi(optarg); + break; default: usage(); } -- cgit