ismounted.c (check_mntent_file): Use a test file in / to check to see
if the root filesystem is mounted read-only. This protects against
the case where /etc might not be on /, as well as the case where
/etc/mtab doesn't exist. (Both are should-never happen scenarios, but
you never know...)
+2001-06-15 Theodore Tso <tytso@valinux.com>
+
+ * ismounted.c (check_mntent_file): Use a test file in / to check
+ to see if the root filesystem is mounted read-only. This
+ protects against the case where /etc might not be on /, as
+ well as the case where /etc/mtab doesn't exist. (Both are
+ should-never happen scenarios, but you never know...)
+
2001-06-14 Theodore Tso <tytso@valinux.com>
* ismounted.c (ext2fs_check_if_mounted): Fix grammer in comment.
*/
if (!strcmp(mnt->mnt_dir, "/")) {
is_root:
+#define TEST_FILE "/.ismount-test-file"
*mount_flags |= EXT2_MF_ISROOT;
- fd = open(MOUNTED, O_RDWR);
+ fd = open(TEST_FILE, O_RDWR|O_CREAT);
if (fd < 0) {
if (errno == EROFS)
*mount_flags |= EXT2_MF_READONLY;
} else
close(fd);
+ (void) unlink(TEST_FILE);
}
endmntent (f);
return 0;