diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2009-10-05 19:45:03 +0200 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2009-10-22 14:04:28 -0400 |
commit | f3bc40136878ab91cb98f1b206ff9517000112f7 (patch) | |
tree | 2cae1ff9ad9b537c93e6ffaef51b3f69f16862ca /server/tools/sss_sync_ops.h | |
parent | f2119734c75b71577eba4a17ea3a84a5d89493e8 (diff) | |
download | sssd-f3bc40136878ab91cb98f1b206ff9517000112f7.tar.gz sssd-f3bc40136878ab91cb98f1b206ff9517000112f7.tar.xz sssd-f3bc40136878ab91cb98f1b206ff9517000112f7.zip |
User home directories management
Create and populate user directories on useradd, delete them on userdel
Fixes: #212
Diffstat (limited to 'server/tools/sss_sync_ops.h')
-rw-r--r-- | server/tools/sss_sync_ops.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/server/tools/sss_sync_ops.h b/server/tools/sss_sync_ops.h index 3988992e9..383319a8f 100644 --- a/server/tools/sss_sync_ops.h +++ b/server/tools/sss_sync_ops.h @@ -27,6 +27,13 @@ #define DO_LOCK 1 #define DO_UNLOCK 2 +/* 0 = not set, pick default */ +#define DO_CREATE_HOME 1 +#define DO_NOT_CREATE_HOME 2 +#define DO_REMOVE_HOME 1 +#define DO_NOT_REMOVE_HOME 2 +#define DO_FORCE_REMOVAL 1 + struct ops_ctx { struct sss_domain_info *domain; @@ -38,6 +45,12 @@ struct ops_ctx { char *shell; int lock; + bool create_homedir; + bool remove_homedir; + mode_t umask; + char *skeldir; + char *maildir; + char **addgroups; char **rmgroups; }; @@ -48,7 +61,15 @@ int useradd_defaults(TALLOC_CTX *mem_ctx, struct ops_ctx *data, const char *gecos, const char *homedir, - const char *shell); + const char *shell, + int create_home, + const char *skeldir); + +/* default values for remove operations */ +int userdel_defaults(TALLOC_CTX *mem_ctx, + struct confdb_ctx *confdb, + struct ops_ctx *data, + int remove_home); /* synchronous operations */ int useradd(TALLOC_CTX *mem_ctx, |