AV *modules = get_av(dl_modules, FALSE);
void **handles;
- if (!librefs) {
- radlog(L_ERR,
- "Could not get @%s for unloading.\n",
- dl_librefs);
- return NULL;
- }
+ if (!librefs) return NULL;
if (!(AvFILL(librefs) >= 0)) {
return NULL;
PERL_SET_CONTEXT(perl);
handles = rlm_perl_get_handles(aTHX);
+ if (handles) rlm_perl_close_handles(handles);
rlm_perl_destruct(perl);
- rlm_perl_close_handles(handles);
}
/* Create Key */
PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
#endif
+ newXS("radiusd::radlog",XS_radiusd_radlog, "rlm_perl");
+
exitstatus = perl_parse(inst->perl, xs_init, argc, embed, NULL);
end_AV = PL_endav;
PL_endav = end_AV;
- newXS("radiusd::radlog",XS_radiusd_radlog, "rlm_perl.c");
-
rad_reply_hv = newHV();
rad_check_hv = newHV();
rad_config_hv = newHV();