More required fields for Interface pages
(cherry picked from commit fb572e810abe247c273c27ffafb129430b13be1f)
Use gettext on Username and Password
(cherry picked from commit e52b5a409faa41222a4ff0c917355eb66d0ff19a)
Required fields in Interfaces pages
(cherry picked from commit 1095b20410963e748fe13268e6fa8f35ccce2319)
Required fields in Status pages
(cherry picked from commit f311d3ba11572364488ee25ca9df08a33e42a089)
Remaining required fields for Diag pages
(cherry picked from commit fe54f09154f4116ceea6897bff54a624f1eb63bc)
Required fields for firewall*.php
(cherry picked from commit 8a1b5c561f93611b711eb4e7b58ccb4990577d8e)
Required fields for Captive Portal
(cherry picked from commit c06865be6de6b164d06ee9bb1768dfe6829d783c)
Required fields in Services pages
(cherry picked from commit 24b82516e0baac87316245427e870a36fbcda4ac)
Fix indentation
(cherry picked from commit c18d0d12b3e683f07b4bac933240332cd4d95829)
Changed max repeat alert to use sprintf get text
(cherry picked from commit 950342400bdc75b35c01442c400bd53a18015818)
Bug #7164 Limit NTP time source fields to the maximum number saved to configuration.
(cherry picked from commit 5a1d67b17d485697e19ef49d66e8e5f91e7e884d)
Typo in pppoe_subnet input error message(cherry picked from commit 01799e5bd5f363e21c744752760ab0cc591713da)
Captive Portal auth method is required
When creating a new Captive Portal Zone the user can fail to select any of the Authorization Method radio buttons. No default radio button is selected - that is probably good, as the user has to think and click to decide which authorization method they will use....
CP HTTPS Forwards setHelp format
Add full stop and spacing between sentences.(cherry picked from commit 0046a7da59fb3015512ce181cba6b37516c0b76f)
Changed default state of GPS init command auto correct tool.
(cherry picked from commit 2559f37539cf37221f8fddd7c0b7928e8e3969a8)
Feature #7159 Add GPS initialization command auto correct toolCorrects malformed NMEA sentences by calculating and appending the checksum and adding missing special characters "$" and "*"
(cherry picked from commit 8c23d92a159c1282e7d185665977f0c45d45f845)
Require at least one tag value in a QinQ entry(cherry picked from commit 4085eb055850e07540145c87fd6d3b5912a865dd)
Use is_intrange() to validate QinQ tag range
Note: is_intrange() only tells us that the range is good and might be delimited by a "-" or a ":", so if we want to take apart the 2 parts of the range (like is done here) we have to also test the string to decide which separator to use....
QinQ Tag Value Validation
Tags must be in the range 1 to 4094Flag the various input errors and only report them once each.(cherry picked from commit e0b7a2e76bddd121bc7f92a6ecb20266c8485ed1)
QinQ Edit fix row add delete
1) Make the row delete button actually work2) Do not allow ranges that go backwards like 25-20 or just "-" or 1-sided ranges "-42" "42-" 3) Remember the POSTed stuff to redisplay to the user if there were input errors4) Ranges or numbers entered could overlap - just save a list of the unique members. e.g. If the user enters 5-15 and 10-20...
change opacity on disabled rows to fix #6448
Introduce is_intrange() to validate a range of integers delimited by ':' or '-'
Merge pull request #3166 from NOYB/System_Update_Settings_-_GitSync_Options
Validate POSTed interface description
Copy-paste error from code that used $_REQUEST. This is more correct to use $_POST.(cherry picked from commit b07adc116c47a2f6a27ae69c84fe0e36a5a27fbd)
Interface description should be required
I was blanking out stuff to see what input error messages came about fields that are required. I was surprised that the Interface Description would save empty. The system did not immediately explode (I was playing with a bonus interface I had created in a VM) but I don't think it is desirable to have interfaces with no description....
Interface Group Name should be required
Do not allow it to be blank. Do not bother with all the other checks on the group name if it is blank.(At the moment I can enter an Interface Group with blank name)(cherry picked from commit 3effec3b515a97e3b5820ba8687645868b807463)
traffic-graphs, setting to keep updating them while invisible- allow showing different graphs to be shown on different browser tabs (dont use localstorage for graphs to query)- show interface name in graph instead of realname
Parse GPS initialization commands, extended status for GPSs other than SureGPS and make optional.- Parse GPS initialization commands for explicitly configured GPS commands- Add extended GPS status if GPGSV or GPGGA are explicitly configured- Add config option to toggle extended status...
Force compress for where_is_ipaddr_configured check_localip
(cherry picked from commit f0b1358dfe520ad3b771127127daed970ba2c0a0)
Force compress for where_is_ipaddr_configured
(cherry picked from commit cde28bfa0e11f268485ec1f6ccb73a3a2f66448f)
Always force compress when calling Net_IPv6
(cherry picked from commit 587995fb57f91894d1f8eb6b296a9fe2fa111fac)
Interface description must be unique including case
(cherry picked from commit 3692adec74d438eedb41a7be8eae9cd58f6fe5c1)
Required fields in Load Balancer pages
(cherry picked from commit 275d769e0d99e02984e42e2328cbcb681f9b87fb)
firewal_nat_edit function name typo
This unrelated fix is in a big diff listing of other stuff related to a proposed RADIUS enhancement https://github.com/pfsense/pfsense/pull/3407/files#diff-f080be89fa12ff3c28d7467b12985d09The accidental typo should be fixed, rather than getting stuck in that other PR....
6RD Border Relay input error message
This field is labelled "6RD Border Relay" on the main UI. It confused me for a moment when I got this message "6RD Border Gateway must be an IPv4 address." since there was no field with that label in the 6RD section of the UI....
Add required fields to firewall_aliases_import(cherry picked from commit b6368b73d921a29e87cc1cd02ab912024ba66d0a)
Display input error when no aliases to import
Currently if you put nothing in the "Aliases to import" box and press Save then the page just reloads - nothing saves and there is no message about the problem. It should tell you to that "Aliases to import" is required....
Remove unused variable $cfglckkeyconsumers
System Update Settings - GitSync Options
Add GitSync options selectors to post update GitSync.Minimal, Diff, Verbose, Dry Run
The GitSync options have utility for post update sync also.
Internationalization (getttext)
Please also backport to 2.3
(cherry picked from commit d0718a0f9031f9dc7c6eff3e47e472178c900ece)
Fix #7141 Add a priv for UPNP
so users can grant access to Services->UPNPNote: Status->UPNP already has a priv and it works.(cherry picked from commit a5a899e4388f2737a6d1cdc82c7325c20fb72ee4)
Fix #7139 Accessing help about this page
from a user that does not have admin or all page privilege.(cherry picked from commit 166540830275318c8dec9199d8a9ee0e605f606a)
Fix #7136 Start OpenVPN on ordinary VIP
(cherry picked from commit ddf99718d5f1f4545483c39d3759fdfbb788b0fb)
Fix copy-paste of ipsec.widget.php file name
Noticed while looking in widget code, might as well fix it.(cherry picked from commit a80ce1a7e03ca4fa61f83166b747b4f72dddd4ba)
Fix #7134 Interface Stats widget ifdescrs not defined
When doing testing I had the Interfaces widget open as well as Interface Statistics. $ifdescrs was already populated as an array by the Interfaces widget, so Interface Statistics had (accidentally) gained the benefit....
Merge pull request #3391 from NOYB/Status_/_Interfaces_-_Relinquish_DHCP_Lease_2_3
Protect against forech errors if this function does not return an array. Fixes #7134
Fixup update_pot.sh adding --from-code to xgettext calls
Regenerate pot
Add filter to SMART status widget
(cherry picked from commit 22e8fa1f6aec0b1536f0c07e1573ac78a291891f)
Status / Interfaces - Relinquish DHCP Lease
Send gratuitous DHCP release message to server.
Dependency:To fully relinquish the DHCP lease, the "RELEASE" reason needs to be added to the /sbin/dhclient-script.s/EXPIRE|FAIL)/EXPIRE|FAIL|RELEASE)/
Without the 'RELEASE' reason, the DHCP release message will still be sent to the server, however the local dhclient leases will not reflect the relinquishment. Therefore, DHCP renewal will do a DHCP request for the previous address rather than doing a DHCP discovery and being more likely to be assigned a different address.
Status / Interfaces - Match Var Names
Match Form Input and Function Parameter Names with associated Var Name.
Use "ifdescr" as form input name instead of "if" since "ifsescr" is the var being passed.Use "ifdescr" as showDefBtn function var instead of "ifval" since "ifsescr" is the var being passed....
The confirmation checkboxes on diag_resetstate.php should not be checked by default.
Remove get_openvpnent_key()
(cherry picked from commit 27bf84fc10d723deebb814a38ee9303014b41711)
Add Filter to OpenVPN Widget
(cherry picked from commit a670560bf9a3de550e9e4e20df4ffe1ed2d4f05c)
Do not nag people about passwords mismatch when SMTP notifications are disabled (Bug #7129)(cherry picked from commit 3988cfa7d281370500a7f58cb5f73f28a931f0ae)
Do not nag people about passwords mismatch when growl is disabled (Bug #7129)
These fields tend to get "helpfully" pre-filled with random crap by built-in browser password managers or extensions such as LastPass. No need to bother people with these when the feature is disabled....
Only show the DHCP Leases Status link if DHCP server is enabled
Does not make sense otherwise, can only contain stale data.(cherry picked from commit 8ed692516534248e58a20aec70f8cf3035d35348)
Remove extra parenthesis and blank line
Simplify logic
Fix #7126 RFC2136 links
(cherry picked from commit 47b35618f025082b5504eae5518d89c772ae8bd5)
Add filter to Dynamic DNS Status Widget
(cherry picked from commit 5f8a3dc09e550f3aa2ef086c03e7133f78756913)
Fix #7118 icmp-type any
When 'any' is selected as the ICMP type, do not write 'icmp-type any' in the rule, just leave it out.
Fix #7105: Old rules may not have ipprotocol defined, consider it icmp6-type only when ipprotocol is inet6
Make sure /var/tmp permissions are correct. Fixes #7120
Add filter to Interfaces Widget
(cherry picked from commit 35310a493f19d6758747cbc8e9961c2ca3395246)
Add filter to Interface Statistics widget
(cherry picked from commit 84a7e840eac8f62a95ccb900089faf14a9a9fc65)
Add filter to WoL widget
(cherry picked from commit d82c5cbf4f693d70e55b5a484a34ea84f88fa250)
Redmine #5549 Allow variable number of DNS Servers
(cherry picked from commit a2d23e88596deab6bbed2818385a0b72c913843a)
Check for duplicate Wake on LAN entries
Currently it is posible to enter an interface+MAC combination that is already in the WoL list. That seems silly.(cherry picked from commit 257dd20749a235538855cc5e5fc7484e4fbfbf68)
Tidy up "<script>" tags
Tidy up <script> tags by adding TYPE attribute
(https://doc.pfsense.org/index.php/Developer_Style_Guide#HTML_Specific_Rules)
(cherry picked from commit 463456964709015d4b1c591aa4251c831a39c71d)
Display Dyn DNS type if description not found
(cherry picked from commit 7b3d8a4b8cee0588ed2ccd272588026002369433)
Remove excess loops in DynDNS Widget
(cherry picked from commit b84126b5e74473b1e6a576f38da2149a95ab03fc)
Add IPsec to the state table interface list.
Fix #6153
Initialize cached IP and Time on loop for RFC2136 items, without thisthe items used on last loop iteration will be used again and seconditem on the same interface will not be updated
Enable net-snmpd for experimentation
Display client id in DHCP Mapping list
(cherry picked from commit 6e3e95a538c4dda9c9f14b2ab78435eec0debf46)
Ticket #6340:
- Stop misusing fsck F parameter, it's supposed to be used when you plan to run background fsck after filesystems are mounted, what is not the case on pfSense Increase attempts to mount all filesystems as read-write to 10- If we cannot mount filesystems as read-write, start a recovery shell...
Fix #6712
Use system_hosts_entries to generate unbound host_entries.conf
Ticket #6712: Create system_hosts_entries()
This function will return an array all items to be added to /etc/hosts.
Ticket #6712: Create system_hosts_dhcpd_entries()
This function will return an array with dhcpd and dhcpdv6 items to be added to/etc/hosts.
Ticket #6712: Create system_hosts_override_entries()
This function will return an array with dnsmasq or unbound items to be added to/etc/hosts
Ticket #6712: Deprecate read_hosts()
Read local items from system_hosts_local_entries()
Ticket #6712: Create system_hosts_local_entries()
This function will return an array with 127.0.0.1, ::1 and LAN (orfirst interface with no gateway when LAN is not there) items to beadded to /etc/hosts
Kill dhcpleases after we are sure we can write /etc/hosts
Fix style
Make sure IP address is v4 before create /etc/hosts entry
Exclude non-qualified hostnames from hosts file. Ticket #6064
Do not write a 'restrict' line to the NTP config if it will be empty. Fixes #7110
Only include files that ends with .inc
Add requirestatefilter. Implements #7069.
(cherry picked from commit 88081ea257fa683ed28b588c4c35260589604741)
(cherry picked from commit 0a3150896bc412868cfb79473293ed81c87a50a7)
Captive portal: make captiveportal_disconnect_all() faster
captiveportal_disconnect_all() removes the users one at a time and in some cases, when many hundreds of users are connected, can take up to several dozens of seconds to complete.Instead of looping through all users, send all the accounting information, reset the user database and delete all the active rules and reinit them. Use locking to prevent new users from logging in until the function ends....
openvpn, check for valid pid using isvalidpid()
(cherry picked from commit a1b39e949ab3a0e53ac4c1837f5d2c02b28142f3)
openvpn, make sure config is written and not overwritten while starting openvpn, and wait for pid of child process to be written before exiting function
(cherry picked from commit 8845e137b630497d47a8ce93fb072e47419f8af5)
Services widget filter checkboxes
(cherry picked from commit ada6bfa7ca68169408b80af6325afe3948ee85f7)
Revert "get_pkg_info() fallback using pkg info if no local copy of repo catalog"
This reverts commit 46237e23f35db70a917939609061dce7b7f955f9.
Merge branch 'RELENG_2_3' of git.netgate.com:pfsense/pfsense into RELENG_2_3
Crash Reporter report when no data found
The glob for $crash_files always returns an array - an empty one in the case when there are no matching crash files. So the echo at old line 115 never happened. In any case, if the echo happens, it is spat out as plain text on the GUI outside of all the nice boxes and menus....