From 13f65125ac8bcbb3b3367ec6feab504272fb388f Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Fri, 7 Feb 2003 08:03:37 +0000 Subject: Invert flag testing (This used to be commit 05397c526d2fad63faee781cc68934c58ee97500) --- source3/utils/pdbedit.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'source3') diff --git a/source3/utils/pdbedit.c b/source3/utils/pdbedit.c index 3b7f59ff2a..9df10c21a4 100644 --- a/source3/utils/pdbedit.c +++ b/source3/utils/pdbedit.c @@ -260,17 +260,19 @@ static int set_user_info (struct pdb_context *in, const char *username, pdb_set_profile_path (sam_pwent, profile, PDB_CHANGED); if (account_control) { - uint16 types = ACB_NORMAL|ACB_MNS|ACB_DOMTRUST|ACB_WSTRUST|ACB_SVRTRUST; + uint16 not_settable = ~(ACB_DISABLED|ACB_HOMDIRREQ|ACB_PWNOTREQ| + ACB_PWNOEXP|ACB_AUTOLOCK); + uint16 newflag = pdb_decode_acct_ctrl(account_control); - if (newflag & types) { + if (newflag & not_settable) { fprintf(stderr, "Can only set [NDHLX] flags\n"); pdb_free_sam(&sam_pwent); return -1; } pdb_set_acct_ctrl(sam_pwent, - (pdb_get_acct_ctrl(sam_pwent) & types) | newflag, + (pdb_get_acct_ctrl(sam_pwent) & not_settable) | newflag, PDB_CHANGED); } -- cgit