]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
set process after decoding, not before
authorAlan T. DeKok <aland@freeradius.org>
Thu, 15 Jun 2017 19:27:27 +0000 (15:27 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Thu, 15 Jun 2017 19:27:27 +0000 (15:27 -0400)
src/lib/io/worker.c

index dfd215bfcad4686e36786605326d938a77973d7a..f04c5cd65503d4855917e86aa5b67c2020b17d09 100644 (file)
@@ -688,12 +688,6 @@ static REQUEST *fr_worker_get_request(fr_worker_t *worker, fr_time_t now)
        request->async->io = cd->io;
        io = request->async->io;
 
-       /*
-        *      Call the main protocol handlr to set the right async
-        *      process function.
-        */
-       io->set_process(request, io->app_ctx);
-
        /*
         *      Now that the "request" structure has been initialized, go decode the packet.
         *
@@ -708,6 +702,12 @@ nak:
                return NULL;
        }
 
+       /*
+        *      Call the main protocol handlr to set the right async
+        *      process function.
+        */
+       io->set_process(request, io->app_ctx);
+
        rad_assert(request->async->process != NULL);
 
        /*