]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
tree-wide: replace readdir_r() with readdir() 1310/head
authorChristian Brauner <cbrauner@suse.de>
Tue, 9 Aug 2016 19:05:19 +0000 (21:05 +0200)
committerChristian Brauner <christian.brauner@canonical.com>
Tue, 22 Nov 2016 05:17:59 +0000 (06:17 +0100)
Signed-off-by: Christian Brauner <christian.brauner@canonical.com>
src/lxc/bdev.c
src/lxc/cgfs.c
src/lxc/conf.c
src/lxc/confile.c
src/lxc/lxccontainer.c
src/lxc/start.c
src/lxc/utils.c

index 510897f78749389dab992a54111ba3a10fc42de6..c43719d5673bb0c9f0905dc49d4d42e3575e9f09 100644 (file)
@@ -1897,7 +1897,7 @@ static int loop_detect(const char *path)
 
 static int find_free_loopdev_no_control(int *retfd, char *namep)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        struct loop_info64 lo;
        DIR *dir;
        int fd = -1;
@@ -1907,8 +1907,8 @@ static int find_free_loopdev_no_control(int *retfd, char *namep)
                SYSERROR("Error opening /dev");
                return -1;
        }
-       while (!readdir_r(dir, &dirent, &direntp)) {
 
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
                if (strncmp(direntp->d_name, "loop", 4) != 0)
index 6bf0fca006867e63bdc450015840014c6ce724df..a6d7300ed3522c72a1f22adae5ff204b1da245f6 100644 (file)
@@ -155,7 +155,7 @@ static struct cgroup_ops cgfs_ops;
 
 static int cgroup_rmdir(char *dirname)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        int saved_errno = 0;
        DIR *dir;
        int ret, failed=0;
@@ -167,7 +167,7 @@ static int cgroup_rmdir(char *dirname)
                return -1;
        }
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                struct stat mystat;
                int rc;
 
@@ -2068,26 +2068,14 @@ out:
 static int cgroup_recursive_task_count(const char *cgroup_path)
 {
        DIR *d;
-       struct dirent *dent_buf;
        struct dirent *dent;
-       ssize_t name_max;
        int n = 0, r;
 
-       /* see man readdir_r(3) */
-       name_max = pathconf(cgroup_path, _PC_NAME_MAX);
-       if (name_max <= 0)
-               name_max = 255;
-       dent_buf = malloc(offsetof(struct dirent, d_name) + name_max + 1);
-       if (!dent_buf)
-               return -1;
-
        d = opendir(cgroup_path);
-       if (!d) {
-               free(dent_buf);
+       if (!d)
                return 0;
-       }
 
-       while (readdir_r(d, dent_buf, &dent) == 0 && dent) {
+       while ((dent = readdir(d))) {
                const char *parts[3] = {
                        cgroup_path,
                        dent->d_name,
@@ -2101,13 +2089,11 @@ static int cgroup_recursive_task_count(const char *cgroup_path)
                sub_path = lxc_string_join("/", parts, false);
                if (!sub_path) {
                        closedir(d);
-                       free(dent_buf);
                        return -1;
                }
                r = stat(sub_path, &st);
                if (r < 0) {
                        closedir(d);
-                       free(dent_buf);
                        free(sub_path);
                        return -1;
                }
@@ -2123,7 +2109,6 @@ static int cgroup_recursive_task_count(const char *cgroup_path)
                free(sub_path);
        }
        closedir(d);
-       free(dent_buf);
 
        return n;
 }
index b5d94fe68619e101c2bbb49cfee54b2691f9aac2..cab49e77ce05313b92198fb6c63672986115c5f4 100644 (file)
@@ -590,7 +590,7 @@ out:
 static int mount_rootfs_file(const char *rootfs, const char *target,
                                             const char *options)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        struct loop_info64 loinfo;
        int ret = -1, fd = -1, rc;
        DIR *dir;
@@ -602,8 +602,7 @@ static int mount_rootfs_file(const char *rootfs, const char *target,
                return -1;
        }
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
-
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
 
@@ -2938,7 +2937,7 @@ void lxc_restore_phys_nics_to_netns(int netnsfd, struct lxc_conf *conf)
 {
        int i, ret, oldfd;
        char path[MAXPATHLEN];
-       char ifname[IFNAMSIZ]; 
+       char ifname[IFNAMSIZ];
 
        if (netnsfd < 0 || conf->num_savednics == 0)
                return;
index 75cc423370b4e89f9ebf5613f04cc6dc4c03df8b..eec19acd7e6877988ac032684f15b8c79588154b 100644 (file)
@@ -1007,7 +1007,7 @@ static int config_hook(const char *key, const char *value,
                                 struct lxc_conf *lxc_conf)
 {
        char *copy;
-       
+
        if (!value || strlen(value) == 0)
                return lxc_clear_hooks(lxc_conf, key);
 
index f9cc4c3d42c28ec49098a0d59fbc2078fcfa7440..c92c616fcd82da95191b77ff915b987e9309f72b 100644 (file)
@@ -509,7 +509,7 @@ static bool wait_on_daemonized_start(struct lxc_container *c, int pid)
 
 static bool am_single_threaded(void)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        DIR *dir;
        int count=0;
 
@@ -519,7 +519,7 @@ static bool am_single_threaded(void)
                return false;
        }
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
 
@@ -2988,7 +2988,7 @@ static int lxcapi_snapshot_list(struct lxc_container *c, struct lxc_snapshot **r
 {
        char snappath[MAXPATHLEN], path2[MAXPATHLEN];
        int dirlen, count = 0, ret;
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        struct lxc_snapshot *snaps =NULL, *nsnaps;
        DIR *dir;
 
@@ -3007,7 +3007,7 @@ static int lxcapi_snapshot_list(struct lxc_container *c, struct lxc_snapshot **r
                return 0;
        }
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
 
@@ -3439,7 +3439,7 @@ int list_defined_containers(const char *lxcpath, char ***names, struct lxc_conta
 {
        DIR *dir;
        int i, cfound = 0, nfound = 0;
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        struct lxc_container *c;
 
        if (!lxcpath)
@@ -3456,7 +3456,7 @@ int list_defined_containers(const char *lxcpath, char ***names, struct lxc_conta
        if (names)
                *names = NULL;
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
 
index a6bdd25a1aab195d615638cf9f3d3c7ae59c249f..b46e85920ad03389169dd728b09f3a99185d5408 100644 (file)
@@ -188,7 +188,7 @@ static int match_fd(int fd)
 
 int lxc_check_inherited(struct lxc_conf *conf, int fd_to_ignore)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        int fd, fddir;
        DIR *dir;
 
@@ -201,7 +201,7 @@ restart:
 
        fddir = dirfd(dir);
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                if (!direntp)
                        break;
 
index db4ea68119d87d6898c5e7fe553a5763cd8e3f13..5a179ae05795321f0477da24e2eb5712ac373268 100644 (file)
@@ -62,7 +62,7 @@ extern bool btrfs_try_remove_subvol(const char *path);
 
 static int _recursive_rmdir(char *dirname, dev_t pdev, bool onedev)
 {
-       struct dirent dirent, *direntp;
+       struct dirent *direntp;
        DIR *dir;
        int ret, failed=0;
        char pathname[MAXPATHLEN];
@@ -73,7 +73,7 @@ static int _recursive_rmdir(char *dirname, dev_t pdev, bool onedev)
                return -1;
        }
 
-       while (!readdir_r(dir, &dirent, &direntp)) {
+       while ((direntp = readdir(dir))) {
                struct stat mystat;
                int rc;