]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
confile: cleanup do_includedir()
authorChristian Brauner <christian.brauner@ubuntu.com>
Tue, 8 Dec 2020 14:54:49 +0000 (15:54 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Tue, 8 Dec 2020 15:49:40 +0000 (16:49 +0100)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/confile.c

index d6db65c7348506e2dcf236a316f1229c4b358739..d53efa07ba58dab9cc9759d56c8bd0add20e288b 100644 (file)
@@ -2490,16 +2490,15 @@ static int do_includedir(const char *dirp, struct lxc_conf *lxc_conf)
 {
        __do_closedir DIR *dir = NULL;
        struct dirent *direntp;
-       char path[PATH_MAX];
-       int len;
-       int ret = -1;
+       int len, ret;
 
        dir = opendir(dirp);
        if (!dir)
-               return -1;
+               return -errno;
 
        while ((direntp = readdir(dir))) {
                const char *fnam;
+               char path[PATH_MAX];
 
                fnam = direntp->d_name;
                if (!strcmp(fnam, "."))
@@ -2514,11 +2513,11 @@ static int do_includedir(const char *dirp, struct lxc_conf *lxc_conf)
 
                len = snprintf(path, PATH_MAX, "%s/%s", dirp, fnam);
                if (len < 0 || len >= PATH_MAX)
-                       return -1;
+                       return ret_errno(EIO);
 
                ret = lxc_config_read(path, lxc_conf, true);
                if (ret < 0)
-                       return -1;
+                       return ret;
        }
 
        return 0;