More generic coa separation
authorAlan T. DeKok <aland@freeradius.org>
Mon, 7 Apr 2014 18:13:18 +0000 (14:13 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 7 Apr 2014 18:13:18 +0000 (14:13 -0400)
src/main/process.c

index 74308b6..cf722cf 100644 (file)
@@ -421,15 +421,10 @@ STATE_MACHINE_DECL(request_done)
        /*
         *      Move the CoA request to its own handler.
         */
-       if (request->coa) request_coa_separate(request->coa);
-
-       /*
-        *      If we're the CoA request, make the parent forget about
-        *      us.
-        */
-       if (request->parent && (request->parent->coa == request)) {
-               request->parent->coa = NULL;
-               (void) talloc_steal(NULL, request);
+       if (request->coa) {
+               request_coa_separate(request->coa);
+       } else if (request->parent && (request->parent->coa == request)) {
+               request_coa_separate(request);
        }
 
 #endif