** Description changed: - In the portion of code copied below from mhddfs/main.c, version 0.1.38, the function mhdd_statfs does: - stats = calloc(mhdd.cdirs, sizeof(struct statvfs)); - devices = calloc(mhdd.cdirs, sizeof(dev_t)); - and it should do: - stats = calloc(mhdd.cdirs, mhdd.cdirs*sizeof(struct statvfs)); - devices = calloc(mhdd.cdirs, mhdd.cdirs*sizeof(dev_t)); - because they are used as arrays with stats[i] and devices[i] - - I'm not 100% sure about this being an actual error, and I'm guessing this may be working with some compilers or in some circumstances, yet I think this: - int ret = statvfs(mhdd.dirs[i], stats+i); - should be replaced by this: - int ret = statvfs(mhdd.dirs[i], stats[i]); - - - Here is the portion of code: - - static int mhdd_statfs(const char *path, struct statvfs *buf) - { - int i, j; - struct statvfs * stats; - struct stat st; - dev_t * devices; - - mhdd_debug(MHDD_MSG, "mhdd_statfs: %s\n", path); - - stats = calloc(mhdd.cdirs, sizeof(struct statvfs)); // HERE - devices = calloc(mhdd.cdirs, sizeof(dev_t)); //HERE - - for (i = 0; i < mhdd.cdirs; i++) { - int ret = statvfs(mhdd.dirs[i], stats+i); //HERE - if (ret != 0) { - free(stats); - free(devices); - return -errno; - } - - ret = stat(mhdd.dirs[i], &st); - if (ret != 0) { - free(stats); - free(devices); - return -errno; - } - devices[i] = st.st_dev; - } - - unsigned long - min_block = stats[0].f_bsize, - min_frame = stats[0].f_frsize; - - for (i = 1; i<mhdd.cdirs; i++) { - if (min_block>stats[i].f_bsize) min_block = stats[i].f_bsize; - if (min_frame>stats[i].f_frsize) min_frame = stats[i].f_frsize; - } - ... - } - - /* - mhddfs - Multi HDD [FUSE] File System - Copyright (C) 2008 Dmitry E. Oboukhov <di...@avanto.org> - ... - Modified by Glenn Washburn <gwashb...@crossroads.com> - (added support for extended attributes.) - */ + REMOVED
** Changed in: mhddfs (Ubuntu) Status: New => Invalid -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1198535 Title: mhddfs Use unallocated memory which may cause undefined behaviour To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/mhddfs/+bug/1198535/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs