Hi All,
I upgraded my freeradius from 1 to 2. When do eap-tls authenticate, the radiusd crashed in debug mode.
After debug the code, I found the following code which didn't appear in version 1.
int eaplist_add(rlm_eap_t *inst, EAP_HANDLER *handler)
    ......
    if (fr_debug_flag) {
        check_handler_t *check = rad_malloc(sizeof(*check));

        check->inst = inst;
        check->handler = handler;
        check->trips = handler->trips;
        request_data_add(request, inst, 0, check, check_handler);
    }
    ......
}


In function request_free, it would call "this->free_opaque(this->opaque);", this is actually  "check_handler".
The process crashed in "rbtree_finddata()".

Could anyone tell me why add these code in new version?