Re: Problem using mandatory locks (other apps can read/delete etc)

Denis Vlasenko (vda@port.imtp.ilyichevsk.odessa.ua)
Thu, 11 Apr 2002 09:37:37 -0200


On 10 April 2002 15:08, E. Abbink wrote:
> I'm trying to solve a problem using mandatory locks but am having some
> difficulty in doing so. (if there's a more appropriate place for
> discussing this please ignore the rest of this post. pointers to that
> place would be appreciated ;) )
>
> my problem:
>
> when I lock a file with a mandatory write lock (ie. fcntl, +s-x bits and
> mand mount option. for code see below) it is still possible:
>
> - for me to rm the file in question
> - for the file to be read by an other process

[snip]

> lock.l_type = F_WRLCK ; <================
> lock.l_whence = SEEK_SET ;
> lock.l_start = 0 ;
> lock.l_len = 0 ;
> lock.l_pid = 0 ; // ignored
>
> int err = fcntl (fd, F_SETLK, &lock) ;

I know nothing about file locking in Unix, but it looks like you
requested write lock, i.e. forbid writing to a file. Why are you
surprised that reads are allowed?

Probably someone else would comment on why rm is working, though...

--
vda
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/