r25256: Fix missing field set in libnet_ModifyUser routine.
authorRafal Szczesniak <mimir@samba.org>
Thu, 20 Sep 2007 10:23:02 +0000 (10:23 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 20:07:00 +0000 (15:07 -0500)
Submitted by Matthias Dieter Wallnoefer <mwallnoefer@yahoo.de>

rafal
(This used to be commit 4fe47e4f976f125537b6a9fc7b13b25efe3d73a6)

source4/libnet/libnet_user.c
source4/libnet/libnet_user.h

index fe303620fe16098cadbac252d097e52134ce8c0e..28b743b42e5a553fa1121e989706ae3135a61cba 100644 (file)
@@ -1,7 +1,7 @@
 /* 
    Unix SMB/CIFS implementation.
    
-   Copyright (C) Rafal Szczesniak <mimir@samba.org> 2005
+   Copyright (C) Rafal Szczesniak  2005
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -533,6 +533,9 @@ static NTSTATUS set_user_changes(TALLOC_CTX *mem_ctx, struct usermod_change *mod
        /* account expiry change */
        SET_FIELD_NTTIME(r->in, user, mod, acct_expiry, USERMOD_FIELD_ACCT_EXPIRY);
 
+       /* account flags change */
+       SET_FIELD_UINT32(r->in, user, mod, acct_flags, USERMOD_FIELD_ACCT_FLAGS);
+
        return NT_STATUS_OK;
 }
 
index 3bbe1cc65e804f12eb8fbb53f8647c4abdbd925c..ece06f08fc0b6261b68655fdc413f6a31745771d 100644 (file)
@@ -85,6 +85,12 @@ struct libnet_ModifyUser {
                } \
        }
 
+#define SET_FIELD_UINT32(new, current, mod, field, flag) \
+       if (current->field != new.field) { \
+               mod->field = new.field; \
+               mod->fields |= flag; \
+       }
+
 
 struct libnet_UserInfo {
        struct {