From: Greg Hudson Date: Thu, 29 Nov 2012 06:58:13 +0000 (-0500) Subject: Fix spin-loop bug in k5_sendto_kdc X-Git-Tag: krb5-1.12-alpha1~450 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2b06a22f7fd8ec01fb27a7335125290b8ceb6f18;p=thirdparty%2Fkrb5.git Fix spin-loop bug in k5_sendto_kdc In the second part of the first pass over the server list, we passed the wrong list pointer to service_fds, causing it to see only a subset of the server entries corresponding to sel_state. This could cause service_fds to spin if an event is reported on an fd not in the subset. ticket: 7454 target_version: 1.10.4 tags: pullup --- diff --git a/src/lib/krb5/os/sendto_kdc.c b/src/lib/krb5/os/sendto_kdc.c index 63dbcd8f41..22cd908126 100644 --- a/src/lib/krb5/os/sendto_kdc.c +++ b/src/lib/krb5/os/sendto_kdc.c @@ -1287,7 +1287,7 @@ k5_sendto(krb5_context context, const krb5_data *message, continue; if (maybe_send(context, state, sel_state, callback_info)) continue; - done = service_fds(context, sel_state, 1, state, seltemp, msg_handler, + done = service_fds(context, sel_state, 1, conns, seltemp, msg_handler, msg_handler_data, &winner); }