1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
samba-mirror/source3/lib/unix_msg
Volker Lendecke 6dcf2c7eab lib: Add unix_msg
This is a messaging layer based on unix domain datagram sockets.

Sending to an idle socket is just one single nonblocking sendmsg call. If the
recv queue is full, we start a background thread to do a blocking call. The
source4 based imessaging uses a polling fallback. In a situation where
thousands of senders beat one single blocked socket, this will generate load on
the system due to the constant polling. This does not happen with a threaded
blocking send call.

The threaded approach has another advantage: We save become_root() calls on the
retries. The access checks are done when the blocking socket is connected, the
threaded blocking send call does not check permissions anymore.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2014-04-23 22:33:08 +02:00
..
test_drain.c lib: Add unix_msg 2014-04-23 22:33:08 +02:00
test_source.c lib: Add unix_msg 2014-04-23 22:33:08 +02:00
tests.c lib: Add unix_msg 2014-04-23 22:33:08 +02:00
unix_msg.c lib: Add unix_msg 2014-04-23 22:33:08 +02:00
unix_msg.h lib: Add unix_msg 2014-04-23 22:33:08 +02:00
wscript_build lib: Add unix_msg 2014-04-23 22:33:08 +02:00