[RFC] [WIP] tevent/glib integration

Ralph Boehme rb at sernet.de
Sat Dec 26 18:44:33 UTC 2015


some more updates:

We should use a GMainContext passed as argument to tevent/glib-init function.

The last patch modifies mdssvc to make use of the teven/glib
integration. I've tested it with "rpc_server:mdssvc = embedded" (the
default) and it works. :)

There's one thing that won't work when integrating the glib event
context(s) with tevent and that is being able to independently poll
*multiple* glib GMainContexts. We use this in "rpc_daemon:mdssd =
fork, rpc_server:mdssvc = external" when running the RPC service in a
seperate process.

With the current implementation we have one GMainContext per
connection, so the mdssd process running the RPC service is able to
isolate the client requests.

In theory we could support multiple GMainContexts and maintain a list,
but then we'd poll all contexts at one in tevent and that won't work.

But I'm leaning towards dropping the context isolation in favor of a
nicely integrated main tevent/glib loop.


SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen

More information about the samba-technical mailing list