← Back to team overview

registry team mailing list archive

[Bug 230877] Re: dbus inherits parent filedescriptors

 

Launchpad has imported 9 comments from the remote bug at
http://bugs.freedesktop.org/show_bug.cgi?id=15947.

If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.

------------------------------------------------------------------------
On 2008-05-15T15:29:06+00:00 Colin Walters wrote:

From: Markus Rechberger <mrechberger@xxxxxxxxxxxxx>

Hi,

when the dbus library spawns out dbus-launch it
inherits all the filedescriptors from the parent.
This causes problems in several ways for example when
the inherited file is a devicenode, it won't be closed
until dbus gets shut down.
As for multimedia devices when mplayer starts up and
opens for example the video4linux node dbus will
inherit that filedescriptor and the device will never
be closed. For devices which support multiple
devicemodes this lock the device in the certain mode.

Attached a patch which fixes that problem.

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/0

------------------------------------------------------------------------
On 2008-05-15T15:29:54+00:00 Colin Walters wrote:

Created an attachment (id=16558)
don't inherit fds

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/1

------------------------------------------------------------------------
On 2008-05-15T15:37:12+00:00 Markus Rechberger wrote:

Created an attachment (id=16559)
removed the if check

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/2

------------------------------------------------------------------------
On 2008-05-15T15:44:27+00:00 Colin Walters wrote:

I was about to follow up on that =)

Looks like a reasonable patch to me.

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/3

------------------------------------------------------------------------
On 2008-05-15T15:56:45+00:00 Hp-pobox wrote:

(From update of attachment 16559)
This should look more like in glib/gspawn.c ; should use fdwalk() if available, and probably sysconf() or getrlimit() would be more modern than getdtablesize().

Can't just cut-and-paste glib code though, due to license. Maybe the
author of that code would be willing to relicense, though it is not
complex to reimplement.

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/4

------------------------------------------------------------------------
On 2008-05-21T09:09:57+00:00 MarkusRechberger wrote:

Created an attachment (id=16665)
using posix sysconf(_SC_OPEN_MAX) instead getdtablesize

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/9

------------------------------------------------------------------------
On 2008-05-23T16:33:26+00:00 Colin Walters wrote:

I had a quick look at how Python's subprocess module does it; it
basically uses sysconf to get the max fds, and then calls a new function
"os.closerange", which  is just a basic loop doing close() over the fd
range.

fdwalk() seems like a Solaris-specific function?  I would say let a
patch for that be written/tested by someone from the OpenSolaris
community if they want it.

Stylistically this patch doesn't match the rest of the code - need a
space between name and function call and the for loop.

After that's fixed r=me.

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/10

------------------------------------------------------------------------
On 2008-05-28T13:31:50+00:00 Colin Walters wrote:

commit e2bc7232069b14b7299cb8b2eab436f60a232007
Author: Colin Walters <walters@xxxxxxxxxx>
Date:   Wed May 28 16:01:22 2008 -0400

    Bug 15947: Close file descriptors before execing helper (Markus Rechberger)
    
    	* dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address):
    	Close file descriptors before exec.

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/11

------------------------------------------------------------------------
On 2008-05-30T17:51:51+00:00 Colin Walters wrote:

*** Bug 10777 has been marked as a duplicate of this bug. ***

Reply at: https://bugs.launchpad.net/dbus/+bug/230877/comments/13


** Changed in: dbus
   Importance: Unknown => Medium

-- 
dbus inherits parent filedescriptors
https://bugs.launchpad.net/bugs/230877
You received this bug notification because you are a member of Registry
Administrators, which is the registrant for D-Bus.