diff --git a/net/freeradius3/Makefile b/net/freeradius3/Makefile index 27ab27245..27dd69f6e 100644 --- a/net/freeradius3/Makefile +++ b/net/freeradius3/Makefile @@ -2,6 +2,7 @@ PORTNAME= freeradius DISTVERSION= 3.0.23 +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= ftp://ftp.freeradius.org/pub/freeradius/%SUBDIR%/ \ ftp://ftp.ntua.gr/pub/net/radius/freeradius/%SUBDIR%/ \ diff --git a/net/freeradius3/files/patch-src__main__state.c b/net/freeradius3/files/patch-src__main__state.c new file mode 100644 index 000000000..ea33f43de --- /dev/null +++ b/net/freeradius3/files/patch-src__main__state.c @@ -0,0 +1,86 @@ +--- src/main/state.c.orig ++++ src/main/state.c +@@ -311,15 +311,30 @@ static state_entry_t *fr_state_cleanup_find(fr_state_t *state) + continue; + } + ++ /* ++ * Not yet time to clean it up. ++ */ ++ if (entry->cleanup > now) { ++ continue; ++ } ++ ++ /* ++ * We're not running the "client lost" section. ++ * Just nuke the entry now. ++ */ ++ if (!main_config.postauth_client_lost) { ++ state_entry_free(state, entry); ++ continue; ++ } ++ + /* + * Old enough that the request has been removed. + * We can add it to the cleanup list. + */ +- if (entry->cleanup < now) { +- (*tail) = entry; +- state_entry_unlink(state, entry); +- tail = &entry->next; +- } ++ state_entry_unlink(state, entry); ++ entry->next = NULL; ++ (*tail) = entry; ++ tail = &entry->next; + } + + return head; +@@ -335,30 +349,28 @@ static void fr_state_cleanup(state_entry_t *head) + if (!head) return; + + for (entry = head; entry != NULL; entry = next) { +- next = entry->next; ++ REQUEST *request; + +- if (main_config.postauth_client_lost) { +- REQUEST *request; ++ next = entry->next; + +- request = fr_state_cleanup_request(entry); +- if (request) { +- RDEBUG2("No response from client, cleaning up expired state"); +- RDEBUG2("Restoring &session-state"); ++ request = fr_state_cleanup_request(entry); ++ if (request) { ++ RDEBUG2("No response from client, cleaning up expired state"); ++ RDEBUG2("Restoring &session-state"); + +- /* +- * @todo - print out message +- * saying where the handler was +- * in the process? i.e. "sent +- * server cert", etc. This will +- * require updating the EAP code +- * to put a new attribute into +- * the session state list. +- */ ++ /* ++ * @todo - print out message ++ * saying where the handler was ++ * in the process? i.e. "sent ++ * server cert", etc. This will ++ * require updating the EAP code ++ * to put a new attribute into ++ * the session state list. ++ */ + +- rdebug_pair_list(L_DBG_LVL_2, request, request->state, "&session-state:"); ++ rdebug_pair_list(L_DBG_LVL_2, request, request->state, "&session-state:"); + +- request_inject(request); +- } ++ request_inject(request); + } + + talloc_free(entry); diff --git a/net/freeradius3/pkg-plist b/net/freeradius3/pkg-plist index 2c361f42b..a0e016e9c 100644 --- a/net/freeradius3/pkg-plist +++ b/net/freeradius3/pkg-plist @@ -362,6 +362,82 @@ sbin/radmin %%PORTDOCS%%%%DOCSDIR%%/ChangeLog %%PORTDOCS%%%%DOCSDIR%%/Makefile.sphinx %%PORTDOCS%%%%DOCSDIR%%/README +%%PORTDOCS%%%%DOCSDIR%%/antora/antora.yml +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/favicon.png +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/favicon.svg +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/networkradius.png +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/nav.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/pages/directories.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/pages/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/nav.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/enable.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_common_options.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_device_options.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_ippool_access.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_ippool_creation.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_network_options.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_subnet_options.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/prepare.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/test.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/nav.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/dependencies.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/packages.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/source.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/upgrade.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/nav.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/attr.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/break.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/case.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/and.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/cmp.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/eq.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/not.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/operands.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/or.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/para.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/regex.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/return_codes.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/default.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/else.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/elsif.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/foreach.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/group.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/if.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/keywords.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/list.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/load-balance.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module_builtin.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module_method.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/redundant-load-balance.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/redundant.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/return.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/return_codes.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/switch.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/all_types.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/double.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/ip.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/numb.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/backticks.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/double.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/escaping.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/single.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/unquoted.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/update.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/alternation.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/attribute.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/builtin.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/character.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/index.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/module.adoc +%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/partials/rcode_table.adoc %%PORTDOCS%%%%DOCSDIR%%/bugs %%PORTDOCS%%%%DOCSDIR%%/concepts/aaa.rst %%PORTDOCS%%%%DOCSDIR%%/concepts/proxy.rst @@ -405,6 +481,7 @@ sbin/radmin %%PORTDOCS%%%%DOCSDIR%%/rfc/draft-kamath-pppext-eap-mschapv2-00.txt %%PORTDOCS%%%%DOCSDIR%%/rfc/draft-sterman-aaa-sip-00.txt %%PORTDOCS%%%%DOCSDIR%%/rfc/genref.pl +%%PORTDOCS%%%%DOCSDIR%%/rfc/leap.txt %%PORTDOCS%%%%DOCSDIR%%/rfc/per-rfc.pl %%PORTDOCS%%%%DOCSDIR%%/rfc/rewrite.pl %%PORTDOCS%%%%DOCSDIR%%/rfc/rfc1157.txt @@ -500,83 +577,6 @@ sbin/radmin %%PORTDOCS%%%%DOCSDIR%%/vendor/bay %%PORTDOCS%%%%DOCSDIR%%/vendor/cisco.rst %%PORTDOCS%%%%DOCSDIR%%/vendor/proxim -%%PORTDOCS%%%%DOCSDIR%%/antora/antora.yml -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/favicon.png -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/favicon.svg -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/assets/images/networkradius.png -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/nav.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/pages/directories.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/ROOT/pages/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/nav.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/enable.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_common_options.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_device_options.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_ippool_access.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_ippool_creation.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_network_options.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/policy_subnet_options.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/prepare.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/howto/pages/protocols/dhcp/test.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/nav.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/dependencies.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/packages.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/source.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/installation/pages/upgrade.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/nav.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/attr.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/break.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/case.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/and.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/cmp.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/eq.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/not.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/operands.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/or.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/para.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/regex.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/condition/return_codes.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/default.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/else.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/elsif.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/foreach.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/group.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/if.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/keywords.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/list.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/load-balance.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module_builtin.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/module_method.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/redundant-load-balance.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/redundant.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/return.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/return_codes.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/switch.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/all_types.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/double.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/ip.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/numb.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/backticks.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/double.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/escaping.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/single.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/type/string/unquoted.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/update.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/alternation.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/attribute.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/builtin.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/character.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/index.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/pages/xlat/module.adoc -%%PORTDOCS%%%%DOCSDIR%%/antora/modules/unlang/partials/rcode_table.adoc -%%PORTDOCS%%%%DOCSDIR%%/rfc/leap.txt %%EXAMPLESDIR%%/raddb/README.rst %%EXAMPLESDIR%%/raddb/certs/01.pem %%EXAMPLESDIR%%/raddb/certs/02.pem @@ -816,6 +816,7 @@ sbin/radmin %%EXAMPLESDIR%%/raddb/mods-enabled/replicate %%EXAMPLESDIR%%/raddb/mods-enabled/soh %%EXAMPLESDIR%%/raddb/mods-enabled/sradutmp +%%EXAMPLESDIR%%/raddb/mods-enabled/totp %%EXAMPLESDIR%%/raddb/mods-enabled/unix %%EXAMPLESDIR%%/raddb/mods-enabled/unpack %%EXAMPLESDIR%%/raddb/mods-enabled/utf8 @@ -859,6 +860,7 @@ sbin/radmin %%EXAMPLESDIR%%/raddb/sites-available/soh %%EXAMPLESDIR%%/raddb/sites-available/status %%EXAMPLESDIR%%/raddb/sites-available/tls +%%EXAMPLESDIR%%/raddb/sites-available/totp %%EXAMPLESDIR%%/raddb/sites-available/virtual.example.com %%EXAMPLESDIR%%/raddb/sites-available/vmps %%EXAMPLESDIR%%/raddb/sites-enabled/default