X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fevent.c;h=95008a4c55dd7c299e8fd57d3e0d2a338114d134;hb=ab972f1f9b724fc0b71e6ca726078c92ad26bc6b;hp=a67d90bae9bee0c01f8e2720c267c9a1834e6e8a;hpb=8dcf3e2a2b53342b0d6a65d7078b6c4629548321;p=freeradius.git diff --git a/src/main/event.c b/src/main/event.c index a67d90b..95008a4 100644 --- a/src/main/event.c +++ b/src/main/event.c @@ -1232,16 +1232,17 @@ static void wait_a_bit(void *ctx) case REQUEST_RUNNING: /* * If we're not thread-capable, OR we're capable, - * but have been told to run without threads, - * complain when the requests is queued for a - * thread, or running in a child thread. + * but have been told to run without threads, and + * the request is still running. This is usually + * because the request was proxied, and the home + * server didn't respond. */ #ifdef HAVE_PTHREAD_H if (!have_children) #endif { - rad_assert("We do not have threads, but the request is marked as queued or running in a child thread" == NULL); - break; + request->child_state = REQUEST_DONE; + goto done; } #ifdef HAVE_PTHREAD_H @@ -1312,6 +1313,7 @@ static void wait_a_bit(void *ctx) * and clean it up. */ case REQUEST_DONE: + done: #ifdef HAVE_PTHREAD_H request->child_pid = NO_SUCH_CHILD_PID; #endif @@ -3568,7 +3570,7 @@ int event_new_fd(rad_listen_t *this) } #ifdef WITH_PROXY else { - int count = this->count; + int count; /* * Duplicate code