2007-11-09 01:20:18

by Andreas Dilger

[permalink] [raw]
Subject: [PATCH] fix check_mntent_file() to pass mode for open(O_CREAT)

On my FC8 install, ismounted.c fails to build because open(O_CREAT) is
used without passing a mode. The following trivial patch fixes it.

Signed-off-by: Andreas Dilger <[email protected]>

Index: e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
===================================================================
--- e2fsprogs-1.40.2.orig/lib/ext2fs/ismounted.c
+++ e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
@@ -147,7 +147,7 @@ static errcode_t check_mntent_file(const
is_root:
#define TEST_FILE "/.ismount-test-file"
*mount_flags |= EXT2_MF_ISROOT;
- fd = open(TEST_FILE, O_RDWR|O_CREAT);
+ fd = open(TEST_FILE, O_RDWR|O_CREAT, 0600);
if (fd < 0) {
if (errno == EROFS)
*mount_flags |= EXT2_MF_READONLY;

Cheers, Andreas
--
Andreas Dilger
Sr. Software Engineer, Lustre Group
Sun Microsystems of Canada, Inc.


2007-11-09 03:30:11

by Eric Sandeen

[permalink] [raw]
Subject: Re: [PATCH] fix check_mntent_file() to pass mode for open(O_CREAT)

Andreas Dilger wrote:
> On my FC8 install, ismounted.c fails to build because open(O_CREAT) is
> used without passing a mode. The following trivial patch fixes it.

You can add:

Acked-by: Eric Sandeen <[email protected]>

'cause it's an awful lot like the patch I sent for the same issue back
on 8/16 ;-) Guess I should have followed that up with a ping. (though
your 0600 mode is probably better than my 0644 was)

Andreas, did you also run into trouble with struct_io_manager's ->open
calls triggering this test?

I sent a patch for that,

[PATCH] rename ->open and ->close ops in struct_io_manager

too... maybe the glibc #define tricks got smarter and don't trigger that
now?

-Eric

> Signed-off-by: Andreas Dilger <[email protected]>
>
> Index: e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
> ===================================================================
> --- e2fsprogs-1.40.2.orig/lib/ext2fs/ismounted.c
> +++ e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
> @@ -147,7 +147,7 @@ static errcode_t check_mntent_file(const
> is_root:
> #define TEST_FILE "/.ismount-test-file"
> *mount_flags |= EXT2_MF_ISROOT;
> - fd = open(TEST_FILE, O_RDWR|O_CREAT);
> + fd = open(TEST_FILE, O_RDWR|O_CREAT, 0600);
> if (fd < 0) {
> if (errno == EROFS)
> *mount_flags |= EXT2_MF_READONLY;
>
> Cheers, Andreas
> --
> Andreas Dilger
> Sr. Software Engineer, Lustre Group
> Sun Microsystems of Canada, Inc.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

2007-11-09 20:22:05

by Andreas Dilger

[permalink] [raw]
Subject: Re: [PATCH] fix check_mntent_file() to pass mode for open(O_CREAT)

On Nov 08, 2007 21:30 -0600, Eric Sandeen wrote:
> Andreas Dilger wrote:
> > On my FC8 install, ismounted.c fails to build because open(O_CREAT) is
> > used without passing a mode. The following trivial patch fixes it.
>
> You can add:
>
> Acked-by: Eric Sandeen <[email protected]>
>
> 'cause it's an awful lot like the patch I sent for the same issue back
> on 8/16 ;-) Guess I should have followed that up with a ping. (though
> your 0600 mode is probably better than my 0644 was)

Oh, hmm. I'm only testing against 1.40.2, so it is possible your fix got
in already... Should have checked that first.

> Andreas, did you also run into trouble with struct_io_manager's ->open
> calls triggering this test?

No, didn't see any such problems with FC8-test3.

> I sent a patch for that,
>
> [PATCH] rename ->open and ->close ops in struct_io_manager
>
> too... maybe the glibc #define tricks got smarter and don't trigger that
> now?
>
> -Eric
>
> > Signed-off-by: Andreas Dilger <[email protected]>
> >
> > Index: e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
> > ===================================================================
> > --- e2fsprogs-1.40.2.orig/lib/ext2fs/ismounted.c
> > +++ e2fsprogs-1.40.2/lib/ext2fs/ismounted.c
> > @@ -147,7 +147,7 @@ static errcode_t check_mntent_file(const
> > is_root:
> > #define TEST_FILE "/.ismount-test-file"
> > *mount_flags |= EXT2_MF_ISROOT;
> > - fd = open(TEST_FILE, O_RDWR|O_CREAT);
> > + fd = open(TEST_FILE, O_RDWR|O_CREAT, 0600);
> > if (fd < 0) {
> > if (errno == EROFS)
> > *mount_flags |= EXT2_MF_READONLY;
> >
> > Cheers, Andreas
> > --
> > Andreas Dilger
> > Sr. Software Engineer, Lustre Group
> > Sun Microsystems of Canada, Inc.
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

Cheers, Andreas
--
Andreas Dilger
Sr. Software Engineer, Lustre Group
Sun Microsystems of Canada, Inc.

2007-11-30 23:39:49

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [PATCH] fix check_mntent_file() to pass mode for open(O_CREAT)

On Fri, Nov 30, 2007 at 09:54:10AM -0600, Eric Sandeen wrote:
> Andreas Dilger wrote:
> > On my FC8 install, ismounted.c fails to build because open(O_CREAT) is
> > used without passing a mode. The following trivial patch fixes it.
> >
> > Signed-off-by: Andreas Dilger <[email protected]>
>
> Ted, I don't yet see this in the tree, can we make sure this doesn't get
> lost?

I'm on vacation, but yes, no problem, this will be in the next 1.40.x
stable release (which will be going out soon thanks to a security
issue that will be going public probably next week).

- Ted

P.S. There will be a press release going out early next week that
will explain why I will have a lot more time to work on e2fsprogs in
the near future....

2007-12-01 17:35:33

by Ted Ts'o

[permalink] [raw]
Subject: Re: [PATCH] fix check_mntent_file() to pass mode for open(O_CREAT)

On Thu, Nov 08, 2007 at 06:20:15PM -0700, Andreas Dilger wrote:
> On my FC8 install, ismounted.c fails to build because open(O_CREAT) is
> used without passing a mode. The following trivial patch fixes it.
>
> Signed-off-by: Andreas Dilger <[email protected]>

Thanks, applied.

- Ted