Bug 8041 - Add LOCAL_CREDS socket credentials support
Summary: Add LOCAL_CREDS socket credentials support
Status: RESOLVED FIXED
Alias: None
Product: dbus
Classification: Unclassified
Component: core (show other bugs)
Version: unspecified
Hardware: x86 (IA32) NetBSD
: high major
Assignee: Havoc Pennington
QA Contact: John (J5) Palmieri
URL:
Whiteboard:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2006-08-28 06:32 UTC by Julio Merino
Modified: 2006-09-13 22:08 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Implementation of LOCAL_CREDS support. (4.74 KB, patch)
2006-08-28 06:33 UTC, Julio Merino
Details | Splinter Review

Description Julio Merino 2006-08-28 06:32:45 UTC
D-Bus' external authentication method is currently broken under NetBSD.  Due to
the lack of any alternative authentication scheme for the system service
(DBUS_COOKIE_SHA1 is broken), it is impossible to use the D-Bus *system* daemon
under that operating system.  This has not been detected until now because there
were no applications under NetBSD that needed it, but recent efforts to port HAL
exposed the problem.

According to D-Bus verbose messages, the external method is broken because there
aren't "socket credentials" available.  After some investigation, NetBSD does
support socket credentials through the LOCAL_CREDS feature, but this is not
implemented in D-Bus.

The attached patch implements support for LOCAL_CREDS in a way that does not
break protocol compatibility.  This was discussed in the mailing list; thanks go
to Havoc Pennington for discovering the trick to achieve it.  Hopefully the
changes are correct now but if they are not, please let me know :-)
Comment 1 Julio Merino 2006-08-28 06:33:51 UTC
Created attachment 6729 [details] [review]
Implementation of LOCAL_CREDS support.
Comment 2 John (J5) Palmieri 2006-09-13 22:08:01 UTC
Patch looks good.  Committed with changes due to teh dbus-sysdeps-unix split.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.