Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Dec 2011 10:20:41 -0800
From:      Xin LI <delphij@gmail.com>
To:        Kostik Belousov <kostikbel@gmail.com>
Cc:        kan@freebsd.org, arch@freebsd.org, des@freebsd.org
Subject:   Re: fdlopen(3)
Message-ID:  <CAGMYy3u7PTEOpf537X5Dbp998zna5Qv5h2-gjwschGDYb%2B2nuQ@mail.gmail.com>
In-Reply-To: <20111229113829.GF50300@deviant.kiev.zoral.com.ua>
References:  <20111229084308.GD50300@deviant.kiev.zoral.com.ua> <CAGMYy3u6v-Ypo_wJEqWWGgGUjoTr=Ctx6tn6VV4fWM4nTYonrQ@mail.gmail.com> <20111229113829.GF50300@deviant.kiev.zoral.com.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 29, 2011 at 3:38 AM, Kostik Belousov <kostikbel@gmail.com> wrote:
> On Thu, Dec 29, 2011 at 03:15:09AM -0800, Xin LI wrote:
>> Hi,
>>
>> On Thu, Dec 29, 2011 at 12:43 AM, Kostik Belousov <kostikbel@gmail.com> wrote:
>> > Hello,
>> > below is the patch to add fdlopen(3) function to rtld. It allows to load
>> > shared object referenced by the opened file descriptor. Intent is to allow
>> > the caller to do some additional checks on the object before committing
>> > to load it, in race-free manner.
>> >
>> > The facility was requested by des@, who also tested the patch.
>> >
>> > I will commit this shortly unless somebody objects.
>>
>> Will this prevent e.g. writes to the .so file after open, but before fdlopen()?
>
> How can it ? Even in theory ?

e.g. process 1 open(), check for permissions, etc., then process 2
open() for write, write something, then process proceed with
fdlopen()?  (We do not have mandatory "lock" on file handles to
prevent writing I think?).

But no, this is not a "major" concern and yes, I think fdlopen() is
something good to have.

Cheers,
-- 
Xin LI <delphij@delphij.net> https://www.delphij.net/
FreeBSD - The Power to Serve! Live free or die



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGMYy3u7PTEOpf537X5Dbp998zna5Qv5h2-gjwschGDYb%2B2nuQ>