From d68319431e62e43c0ecb23328e3162128d823958 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 16 Oct 2005 12:43:09 +0000 Subject: r11095: Implement wb_getuserdomgroups. Tridge, if you have the time, you might want to look at a problem I'm having with unix domain stream sockets. From a comment in this commit: /* Using composite_trigger_error here causes problems with the client * socket. Linux 2.6.8 gives me a ECONNRESET on the next read after * writing the reply when I don't wait the 100 milliseconds. */ This is in winbind/wb_cmd_userdomgroups.c:93. The problem I have is that I can not *immediately* send an error reply to the client because the next receive fails. Waiting 100 milliseconds helps. It might also be a problem with epoll(), I don't really know. I'd appreciate if you took a brief look at this, maybe I'm doing something wrong. Thanks, Volker (This used to be commit 3e535cce743710a68a4264e4f66e9c0c4d6770c6) --- source4/libcli/composite/composite.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source4/libcli/composite/composite.c') diff --git a/source4/libcli/composite/composite.c b/source4/libcli/composite/composite.c index f5eed77300..c78d039905 100644 --- a/source4/libcli/composite/composite.c +++ b/source4/libcli/composite/composite.c @@ -69,6 +69,13 @@ void composite_trigger_done(struct composite_context *c) event_add_timed(c->event_ctx, c, timeval_zero(), composite_trigger, c); } +void composite_trigger_error(struct composite_context *c) +{ + c->state = COMPOSITE_STATE_ERROR; + /* a zero timeout means immediate */ + event_add_timed(c->event_ctx, c, timeval_zero(), composite_trigger, c); +} + /* * Some composite helpers that are handy if you write larger composite -- cgit