Copy security attributes of root skeleton 67/35567/1
authorJosé Bollo <jose.bollo@open.eurogiciel.org>
Wed, 18 Feb 2015 10:09:08 +0000 (11:09 +0100)
committerJosé Bollo <jose.bollo@open.eurogiciel.org>
Wed, 18 Feb 2015 10:09:08 +0000 (11:09 +0100)
The xattr of the root of the skeleton are now
copied when the home directories of users are
created.

This patch is needed to set default Smack attributes
to home directories.

For example, for automatically setting the Smack access of home
directories to User::Home and their transmute value to TRUE for
the newly created users, it is now enough to issue

 chsmack -a User::Home -t /etc/skel

where /etc/skel is the skeleton directory used when creating users.

Change-Id: I0a310d03b5fc335a54fad09b1bbff2be107fbb06
Signed-off-by: José Bollo <jose.bollo@open.eurogiciel.org>
src/useradd.c

index 568e9be..27a743f 100644 (file)
@@ -1121,7 +1121,8 @@ create_home_directory (const char *home, uid_t uid, gid_t gid,
 
       if (skeldir != NULL && *skeldir != '\0' && access (skeldir, F_OK) == 0)
        {
-         if (copy_dir_rec (skeldir, home, 0, uid, gid) != 0)
+         if (copy_xattr (skeldir, home) != 0 ||
+             copy_dir_rec (skeldir, home, 0, uid, gid) != 0)
            {
              fprintf (stderr, _("%s: Copying of skel directory failed.\n"),
                       program);