if you use D-Bus on non-Linux Unix, please try new DBusSocket code
Rick Mann
rmann at latencyzero.com
Wed Apr 8 14:10:44 PDT 2015
Attempting to build with cmake resulted in errors during the cmake stage. I followed the linux instructions in README.cmake.
CMakeErrors.log: http://pastebin.com/KMYutyDv
CMakeOutput.log: http://pastebin.com/mP7d6ZFt
> On Mar 31, 2015, at 05:35 , Simon McVittie <simon.mcvittie at collabora.co.uk> wrote:
>
> On <https://bugs.freedesktop.org/show_bug.cgi?id=89444> we've been
> working on fixing the distinction between file descriptors and sockets,
> which are the same thing on Unix, but unfortunately not on Windows
> (where a SOCKET is basically a uintptr_t, if done correctly).
>
> The solution we're trying is to introduce an internal DBusSocket struct
> containing an int (on Unix) or a SOCKET (on Windows), to force APIs to
> distinguish between the native thing and the abstraction.
>
> If you use D-Bus on non-Linux Unix platforms (*BSD, Solaris, etc.) it's
> possible that this will cause compilation failures, if I missed code
> paths that are not compiled on Linux. So, please try compiling, and
> preferably testing, this branch on your favourite Unix platform:
>
> git clone -b dbussocket git://people.freedesktop.org/~smcv/dbus
> web: http://cgit.freedesktop.org/~smcv/dbus/log/?h=dbussocket
>
> and report any problems on #89444, ideally with patches. The fix for any
> compilation errors will probably be something quite simple, like
> replacing "getsomesocketthing (s)" with "getsomesocketthing (s.fd)".
>
> The intention is:
>
> * non-Unix-specific code consistently uses DBusSocket (if the thing
> is definitely a socket) or DBusPollable (if it's an arbitrary
> pollable thing, i.e. a socket on Windows but any fd on Unix),
> and does not assume that either of those is an integer
>
> * Unix-specific socket handling (dbus-sysdeps-*unix.c etc.) passes s.fd,
> which is an int, to platform APIs
>
> * Unix-specific pollable handling may rely on the fact that DBusPollable
> is really an int
>
> * for the moment, public APIs are still in terms of int, although
> we should probably add dbus_watch_get_windows_socket() eventually
>
> --
> Simon McVittie
> Collabora Ltd. <http://www.collabora.com/>
> _______________________________________________
> dbus mailing list
> dbus at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dbus
--
Rick Mann
rmann at latencyzero.com
More information about the dbus
mailing list