summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoel van Meer <rolek@alt001.com>2010-02-26 15:09:33 -0800
committerKarolin Seeger <kseeger@samba.org>2010-05-06 14:23:31 +0200
commit0839da5e76a13012efbcca0ef5fab7717cb3fc2d (patch)
treec8bd2cb1c4d5f17a7e86be6900cd32bed6b1b82c
parent5fa627c4629e28921a042de31948ba36a1336b27 (diff)
downloadsamba-0839da5e76a13012efbcca0ef5fab7717cb3fc2d.tar.gz
Fix one of the valgrind warnings from bug #6814 - Fixes for problems reported by valgrind
The timeval passed to event_add_to_select_args() must be initialized as event_add_to_select_args() uses a timeval_min() on this and next_event. (cherry picked from commit a0254fa053cbaa8689de4f13893c50014085f7c8)
-rw-r--r--source3/winbindd/winbindd.c9
-rw-r--r--source3/winbindd/winbindd_dual.c8
2 files changed, 17 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd.c b/source3/winbindd/winbindd.c
index 147781f2e0a..0443ebfdf2c 100644
--- a/source3/winbindd/winbindd.c
+++ b/source3/winbindd/winbindd.c
@@ -1047,6 +1047,15 @@ static void process_loop(void)
struct timeval now;
GetTimeOfDay(&now);
+ /*
+ * Initialize this high as event_add_to_select_args()
+ * uses a timeval_min() on this and next_event. Fix
+ * from Roel van Meer <rolek@alt001.com>.
+ */
+
+ ev_timeout.tv_sec = 999999;
+ ev_timeout.tv_usec = 0;
+
event_add_to_select_args(winbind_event_context(), &now,
&r_fds, &w_fds, &ev_timeout, &maxfd);
}
diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c
index be6b1371b06..72e5607d3f4 100644
--- a/source3/winbindd/winbindd_dual.c
+++ b/source3/winbindd/winbindd_dual.c
@@ -1406,6 +1406,14 @@ static bool fork_domain_child(struct winbindd_child *child)
FD_SET(state.sock, &r_fds);
maxfd = state.sock;
+ /*
+ * Initialize this high as event_add_to_select_args()
+ * uses a timeval_min() on this and next_event. Fix
+ * from Roel van Meer <rolek@alt001.com>.
+ */
+ t.tv_sec = 999999;
+ t.tv_usec = 0;
+
event_add_to_select_args(winbind_event_context(), &now,
&r_fds, &w_fds, &t, &maxfd);
tp = get_timed_events_timeout(winbind_event_context(), &t);