Captive portal: convert tables to sortable tables
Convert the used vouchers table from the old GET order method to a sortable table, and make the other tables (allowed IPs, hostnames, zones) sortable too.
(cherry picked from commit 0122f1d05b24ff8160b9ec42af382185572788c4)
Fix "<onchange>" tag processing in package XML handling
Use sprintf()(cherry picked from commit ea0a3f9ced58ab872e8cf83fb3c6200a5409bdb8)
gettext-ize this while here(cherry picked from commit 2f7cd36737b4e1b1ba02061c6c25f538bf9ed2b3)
Add enable link to Status > UPnP & NAT-PMP error message if disabled (Todo #6689)(cherry picked from commit cbe5405f70c8f1443b90d35a16890bcd9dc22714)
Use empty()(cherry picked from commit 605a9e6c1f1fae786468b81bf7c911a874048fad)
Fix CPU update period in System Information widget
This only updates after the refresh period set in System - General Setup - Dashboard update period; should not be hardcoded.(cherry picked from commit 827c3f1e2bd99a4b27e65d0fa317bcb3b8944943)
Fix display of the number of states in the firewall rules page
For numbers greater than 1000 format_number() returns strings formatted like N.NNN K/M/G/T, that get cut to only the integer part if '%d' is used.
(cherry picked from commit ef0e956e48ec1b97a307a546cbc24d00872cde1f)
Allow "DHCP" in upper or lower case when adding LAN IP to setup wizard
Disable DHCP server on interfaces with subnet >= 31. Fixes #6930
Fix #6927 1:1 NAT validate address family
Ensure that all the manually-entered addresses come from the sameaddress family - i.e. they are all either IPv4 or IPv6 addresses.(cherry picked from commit bcdf453402a2f742b2656cd59602250f062896ee)
NAT 1:1 use constant name when checking validateipaddr return value(cherry picked from commit 13cf61ba2c7ab5c9029ba40606e27e71075ef8ac)
Captive Portal: convert active sessions table to a sortable table
Convert the active sessions table in the captive portal status page to a sortable table and remove the old sorting code. The conversion fixes both sorting by ip address and by last activity time....
"Internationalize" help text in router advertisements
Unbound - add support for "deny_non_local" and "refuse_non_local" ACLs (Feature #6914)(cherry picked from commit 6ff48cf16b4264f6554feffcf35ec2eaea4bce16)
dhcp6c no release
Script changes to allow no-release option of dhcp6c. These changes to beused in conjunction with pfSense/FreeBSD-ports/net/dhcp6c recent changefrom PR #231
(cherry picked from commit 505635302a3d555eb6f82cb552c99c7ecb813f46)
Revised #6889 to use formatted list syntax
COmpleted #6889 by re-formatting help text
Fix capitalization of confirmation messages for btn-danger buttons and fa-trash icons
Value and title were converted to lower case but not textContent. Consequently some pop-up messages included capitalized words, for example in the Log Settings page ("Are you sure you wish to Reset Log Files?")....
Improve RADVD router mode help text (Todo #6889)(cherry picked from commit 69bfc8ede81fb28b6eceb7f1343d94c68073c706)
status_queues.php - remove redundant escaping(cherry picked from commit c69a1a745045cbb7feef216ee97fcb72a00558ec)
Fix up validation and encoding on Captive Portal status pages. Fixes #7019
Suppress error logging for Diag > Command Prompt so an error in user-entered code doesn't offer to submit a crash report. A notice is still generated since PHP <7 doesn't yet have error_clear_last(). Fixes #6702
Correct the descriptions and behavior of the Adaptive Start and Adaptive End settings.
DHCPv6 server edit when DHCPv6 Relay enabled
Part of Redmine #6997This implements the similar behaviour as for the DHCPv4 server in PullRequest https://github.com/pfsense/pfsense/pull/3271
(cherry picked from commit 756da4bdc633c309070ce9f78faae18fecde135a)
DHCP server edit when DHCP Relay enabled
Part of Redmine #69971) Display the DHCP Server settings even when DHCP Relay is enabled, butdisable the "enable" checkbox in this case - so the user cannot enableDHCP Server when DHCP Relay is enabled, but can view and modify the DHCP...
status_dcp_leases change if statement style(cherry picked from commit dadc11d7a7aae33ef284a4f8f4258d04e17d27fc)
Status DHCP Leases show CID and other enhancements
1) If there is a Client Id specified then show it (otherwise it is possible to define a Static Mapping that has only Client Id and all other fields empty, which would look like an empty row in the displayed table)....
Check for lo0 when reconfiguring VIPs on sync. Fixes #7010
Services DHCPv6 Static Edit fix var name
The example format at the end of the error message was not coming out.(cherry picked from commit d59ac1d6b8e14fb12dd9705be70842a26e3a5da0)
Status DHCP Leases table row end
Each row of the table needs a tr end, only the last row was getting the tr end.(cherry picked from commit cd2b1e76444ea1c620c09a15f4c929fbcf91cdf2)
DHCP4 Relay must relay to an IPv4 address
This code would accept an IPv6 address, but that causes an error to be reported by the DHCP (v4) Relay service on startup.Validate the destination server IP address(es) to ensure they are IPv4.(cherry picked from commit bdda1446ca335dfcbfb3d9937a20dd2a5bf93ae9)
DHCPv6 Relay Form_IpAddress is V6(cherry picked from commit 3cb06e5ffaa4d101267825715e777ace1fa30f41)
Improve input validation for services_dhcpv6_relay
Make the same imrovements as was done for services_dhcp_relay in commit https://github.com/pfsense/pfsense/commit/ac999f3b7894bd8d5fc35419a22cc2df39416e42(cherry picked from commit 03444470be5c4c2d713873342acb04793c2aa561)
Do not allow a group name to start with 'pkg-', reserve it for packages use (e.g. tinc)
Update interface group name validation rules to match ifconfig
Fix #6976: Make sure interface description, interface name and alias don't have the same name
Ticket #6976: Check disabled interfaces
Update services_captiveportal.php
fixes https://redmine.pfsense.org/issues/6391(cherry picked from commit 6ba184a1d6ead4cdbc4369c1a7ddcc820e8ffcce)
Improve input validation for services_dhcp_relay
While looking at interactions between DHCP Relay and DHCP Server, I noticed a few annoying/inconsistent things in driving the UI:1) If there were validation errors on the Destination Server IP Addresses that the user input, messages would be given about invalid addresses but the data in the Destination Server row(s) would be reset to what it was before the user started editing, losing whatever they changes they had been trying to make so far....
move export button to heading for status monitoring page
Fix #6472: Enable/Disable associated firewall rule when NAT rule changes
Ticket #6472: Respect disabled field
Respect disabled field when creating firewall associated rule
Do not set disabled or nordr fields when they are not selected. Checks are using isset() and not its boolean value
Fix copy/paste error in variable test.
Fix log file deletion
Remove destination self from NAT 1:1
It is not needed and caused problems if used and was not remembered onedit anyway.
(cherry picked from commit 6b8f9c356f8580c2c7b34b9c2526ab2a4cc7e662)
Fix #6224 NAT edit - preserve user selections when input errors
1) Edit a NAT Port Forward rule, change the destination type to "Network", but do not input any network address/mask.2) Press Save, an input error is reported telling that the network destination address/mask is required - good....
Feature #3151 Disable gateway monitoring actions
without disabling gateway monitoring.
This allows the user to continue to monitor the gateway with dpinger, sothey can see how it is performing, but for the system not to take anyreal action if the latency/loss exceeds the given limits....
NAT 1:1 edit - preserve user selections on edit-save with input errors
1) Edit a NAT 1:1 rule, change the source and/or destination type to "Network", but do not input any network address/mask.2) Press Save, input errors are reported telling that the network source and/or destination address/mask is required - good....
Captive portal: add option to include idle time in total session time
Add an option to choose whether the time spent idle by a user disconnected for exceeding the idle timeout must be included in the total session time sent to the RADIUS server or not.
(cherry picked from commit 1878e1c932fa467956ef44d4bd39adb7d4d21243)
Added STARTTLS to LDAP Auth Server Config
(cherry picked from commit d672403c250556ced61d6eec7c51f5518b5f8c6b)
Merge pull request #3251 from phil-davis/dyndnsclass23
Tidy input errors in services_ntpd_acls
1) If there are multiple rows with invalid IP addresses then the same message was displayed multiple times. We might as well let the use know which row(s) have the problem.2) The section that checks is_subnet stuff was first using is_ipaddr() (redundantly given it is already in the else of !is_ipaddr() ), and then is_subnet() - these would have handled both the IPv4 and IPv6 cases, so the other IPv6 tests would never have happened....
Backport Cloudflare and Gratis plus passwords in base64 DynDNS changes
Note: corresponding change to upgrade_config.inc to come in master tocorrectly implement the upgrade_155_to_156 code, that is master only andwill become upgrade_158_to_159
Do not truncate IPv6 addresss in NTP widget (Bug #4815)(cherry picked from commit cd2c59c9839e38fa7cbd4ae217fe14883b086145)
wbr tag needs a css compatibility fix for some browsers
See comment in the PR(cherry picked from commit e67157bee85f71929d687e2c03020618f18c8f6d)
[theme] Compact-RED: fix `sortable` table fonts
(cherry picked from commit f84c1e1ef92e7e69e0eb8672a450a255ee2dfe95)
remove bogus debug
Fixed #6454Fixed #6984
interfaces, show error message if adding duplicate gateway
(cherry picked from commit e8517c7c16b8a845333c7d0e91f552144e6b5560)
Clarified help text for ddnsforcehostname option.
(cherry picked from commit 9ca5d4abf949e088d6f1966003a6bf957f3cbdf6)
Added title to ddnsforcehostname checkbox
(cherry picked from commit cfc10a3364fee9ab220b9ada5584bfbe62ba800c)
Add ddnsforcehostname option to DHCP6 Server configuration editor
(cherry picked from commit 1a6bda5b389df05d6dac024e8445d3a00e01e823)
Add ddnsforcehostname option to DHCP Server configuration editor
(cherry picked from commit cf15bcb41f5befb3668f4608aafeddcb8bb18a58)
Add ddnsforcehostname option to Static Mapping editor
(cherry picked from commit 62abab65c9c3fb010862201b327b426b3b9fc3b8)
Remove extraneous )
Correct "not ready" flag
Update setup_wizard.xml(cherry picked from commit b0b2af901f352dbbaad0b09d06fe7adb105ff7a4)
LAN IP validation logic(cherry picked from commit 6a365a4c80aced41ec87ad93ed2c986d9935a4ea)
Update setup_wizard.xml(cherry picked from commit 3ad0f9b63f690f77cf8c4d398b521eba6909f0bc)
update conditional re:LAN dhcp(cherry picked from commit 0eb2512f93c7e187511ea258948715c2e230e98f)
update LAN regex for case insensitivity(cherry picked from commit 32980f321e854bf008efa04ee9187553231b6423)
IPv6 address can contain a dot
When requiring the entry of an IPv6 address, the regex pattern should still allow a dot, so that an IPv6 address can be entered in the format that has an IPv4-address-like part at the end:aa:bb:cc:dd:ee:ff:1.2.3.4which is a valid way to choose to specify an IPv6 address....
Captive portal: use "Admin Reset" as termination cause when disconnecting a user from admin UI
When a user is disconnected by the administrator using the pfSense captive portal status page or widget set the value of the Acct-Terminate-Cause in the RADIUS accounting stop packet to "Admin Reset" (6) as per RFC 2866....
clarified input format hint for expiration date(cherry picked from commit 98b87cfafe8a890787ca5d22a1089678b9b250ac)
Fix System Update link
Improved error message to explicitly state allowable characters
Related to Bug #6432.
(cherry picked from commit 3b55b54e9c76998a2b0e28897a0be79d5cf0cb8f)
DHCPv6 ddnsdomainprimary must currently be IPv4
This field is currently validated to allow only an IPv4 address to be entered, so it may as well be consistent client-side so the user knows that only an IPv4 address is allowed.(cherry picked from commit ff3d11c85450284d8949234f90af7a6c6681199e)
services_dhcp_edit add extra IPv4 validation
a) Validate that ipaddr must be IPv4 (note if you enter an IPv6 address, it will fail other later tests of being in the subnet etc, but it is nice to give the user an explicit message that they must enter an IPv4 address)...
Specify the IP address family in interfaces.php
Where it is known what sort of IP address is required, we can specify it in the call to Form_IpAddress. That will make the hover text reflect what is really required as input, and make the client-side regex pattern also match only the allowed chars....
Keep the rule type selection after input errors on firewall rule
If the user:a) Edit a firewall ruleb) Select "single host or alias" c) Enter an invalid IP address that is not an aliasd) Press "Save" The error is displayed "1.2.3.999 is not a valid source IP address or alias"...
Added addrtolower() to interface pages
Added addrtolower calls to force IPv6 addresses to lower caseFirst of many
Revise filter_reload page to display entire reload_filter_status contents, not just last line
Revise shaper wizards to support multi-line filter_reload_status
Revise update_filter_relaod_status() function to append status messages rather than overwrite the file
Fixed #6922Added code for IPv6 Dynamic DNS
Fixed #6939 by moving CSS only to the two pages that require it
Fixed #6931
Revise host and domain sorting so that the index is not lost
Revert "Fix #6864 automatically convert IPv6 input to lowercase"
This reverts commit d461ff40e364fc0ecc003b9f673cbad7c6a08f2f.
(cherry picked from commit 75bc87fe10f30f49a09218820f7bb59e859cb6bb)
Revert "Fix #6918 Allow aliases with capital letters in rules"
This reverts commit 9444a281f051e11d5456cc37b2a3f56fc8a7bc33.
(cherry picked from commit 9128641db5c9b6839163948f3f71ad139c7a4625)
Fix #6918 Allow aliases with capital letters in rules
Expand the types of Form_IpAddress so that the caller can specifyexactly what combination of IPv4, IPv6 address and alias is allowed forthe field.Set the appropriate input pattern and hover help text....
Revert change to row delete button
Revert "Suppress delete button if only one row"
This reverts commit 13be068fe5e1377d1d5649efe0f860ba5c34ba90.
Suppress delete button if only one row
Fixed #6916
Revert "Fixed #6811"
This reverts commit f92d44da5a4958372c7fb925043abc34588143e3.