Commit Graph

40986 Commits

Author SHA1 Message Date
R. Christian McDonald
a8aa22049c
Fix format string in French translation of DNS Forwarder. Fixes #14741
* Updated in Zanata
* Exported from Zanata
* pfSense.mo generated with `msgfmt pfSense.po -o pfSense.mo`
2025-10-24 13:54:00 -04:00
Marcos Mendoza
e70742c796 Fix Korean locale. Fix #16505 2025-10-24 11:36:36 -06:00
Marcos Mendoza
18798984b0 Log when states are killed by gateway recovery 2025-10-23 12:44:52 -06:00
Marcos Mendoza
9e8e28cefe Normalize use of failover gateway group labels
Followup to 5892cfc70e.
- Move the failover gateway group label code into its own function.
- Include the failover gateway group label in the default IPsec rules.
- Always include the active tier in the failover gateway group label. This
  is accomplished by changing get_highest_failover_tier_online() to also
  return the tier when the chosen tier is the highest tier (i.e. when the
  failover gateway group is not in a failover state).
- Change get_highest_failover_tier_online() to use the gateway status from
  filter_generate_gateways(). This ensures that the route-to macros in the
  pf ruleset align with the failover gateway group labels. Do the same for
  filter_rules_generate() when creating the gateway monitoring rules.
2025-10-23 12:37:42 -06:00
Marcos Mendoza
758d2963cc Correct gateawy label for default rules
Followup to 5892cfc70e.
- Use get_gateways() to include offline gateways.
- Fix gateway label string.
2025-10-22 09:59:46 -06:00
Marcos Mendoza
496ed862cb Update gateway_is_gwgroup_member() to always return an array
This change simplifies the use of the function for all callers by
removing the is_array() check.
2025-10-21 12:18:24 -06:00
Marcos Mendoza
5892cfc70e Kill firewall host's states without affecting user rules. Implement #16502
Interfaces with gateways (a.k.a WAN interfaces) have non-quick "pass out"
rules which catch traffic from the firewall host itself. By adding the
appropriate gateway labels to these rules, state killing on gateway
recovery can avoid killing states from policy routing user rules which
specify a lower-priority gateway (that's part of the default group).
2025-10-21 12:08:33 -06:00
Marcos Mendoza
5314765608 Don't call idn_to_ascii,idn_to_utf8 with an empty $domain parameter
Followup to fd0d707023
2025-10-21 10:16:48 -06:00
R. Christian McDonald
fd0d707023
Don't call idn_to_ascii,idn_to_utf8 with an empty $domain parameter 2025-10-17 15:17:16 -04:00
Marcos Mendoza
f281647a09 RFC2136 DDNS: use get_request_source_address()
When the RFC2136 config uses the option "usepublicip" the source address
is found by calling the function dyndnsCheckIP() which in turn calls
get_request_source_address(). A different code path is followed when
"usepublicip" is not used which can result in the wrong source address
being returned (e.g. when the interface is a failover gateway group). This
change aligns the logic used for determining the request address
regardless of the "usepublicip" option (except for "_stf" interfaces).
2025-10-15 16:11:24 -06:00
Marcos Mendoza
0232956ca1 Refactor get_request_source_address()
Clarify varaible name and simplify logic.
2025-10-15 14:48:43 -06:00
Marcos Mendoza
63566d0b47 if_pppoe: clear VIPs and reload dpinger when link goes down. Fix #16487
These actions are done with "normal" ethernet interfaces, e.g. in
interface_bring_down(). Implement this in pppoe-handler as well.
2025-10-15 10:29:45 -06:00
Marcos Mendoza
876c6d71e3 Allow RA liftetime of 0. Fix #16472 2025-10-13 09:08:24 -06:00
Marcos Mendoza
8544b85f8c DDNS: abort when CARP is not master. Fix #16326
While there, also increase verbosity about failure reasons.
2025-10-09 12:51:09 -06:00
Marcos Mendoza
120fdd650e Fix rc.interfaces_carp_configure
interfaces_carp_configure() isn't defined - adapt the code from another
script instead. Note: this script doesn't seem to be used anywhere.
2025-10-09 07:57:32 -06:00
Marcos Mendoza
e7d52c4cfa Fix linter errors
Fix unassigned vars, deprecated string interpolation, unreachable code.
2025-10-09 07:57:32 -06:00
Marcos Mendoza
bc9aa09c6e Chase switch to PHP 8.4 2025-10-09 07:57:25 -06:00
Marcos Mendoza
faa37aaf14 Only use the config cache if it's not older than the config file 2025-10-08 13:46:10 -06:00
Brad Davis
9768a35e0c Switch to php 8.4 2025-10-08 19:05:58 +00:00
Marcos Mendoza
0e56ef43ec Rework handling of the config cache file
Move the removal of the configuration cache file from config_read_file()
to config_write_file(). With this change the cache does not have to be
manually removed after a change, including in the following cases:
- In config_provider_init(). The cache should be up-to-date regardless of
  the configuration provider.
- In restore_config_section(). The "subsequent requests" will already use
  an up-to-date cache (see a57d617019).
- In backup.inc execPost() when restoring a specific area. The previous
  write already removes the cache.
- In backup.inc execPost() when doing a full restore. The call to
  config_install() and write_config() already removes the cache.
- In rc.filter_configure. The cache should be up-to-date at this point.
- In write_config() when reading back the written config. The call to
  config_write_file() already results in the cache being removed.
- In usermgrpasswd when re-reading the config in case of changes outside
  the script, i.e. from the GUI.
- In interfaces.php when applying changes. It's no longer relevant since
  there's no "FTP helper" (see b1c525eed2).
- In services_acb_backup.php when writing the change from a POST request.

The change also allows the cache to be used (if it exists) when starting
the following scripts since the cache should be up-to-date:
- /src/etc/phpshellsessions/disabledhcpd:
- /src/etc/phpshellsessions/disablereferercheck
- /src/etc/phpshellsessions/enableallowallwan
- /src/etc/phpshellsessions/enablesshd
- /src/etc/phpshellsessions/resetwebgui
- /src/etc/phpshellsessions/restartallwan

Other related changes:
- Deprecate generate_config_cache().
- Allow bypassing the cache when a config provider reads the config.
- Change the default behavior of config_read_file() to use the cache.
- Update callers of config_read_file() as needed.
- Remove the unnecessary cache deletion in config_read_file().
- Remove parse_config() since upgrades from 24.03 to now aren't supported.
- Remove dead code for $config_extra and config.extra.cache.
- Fix typos in related comments.
2025-10-08 12:25:49 -06:00
R. Christian McDonald
97de21ca72
kea: The parameter 'client-class' is deprecated. Use 'client-classes'. Fixes #16468 2025-10-08 13:28:42 -04:00
Marcos Mendoza
579cb76383 Revert "unbound: remove sock-queue-timeout until supported upstream. Fixes #16299"
This reverts commit 7b9907f18a.

unbound 1.24.0 adds FreeBSD support.
2025-10-03 10:06:21 -06:00
Steve Wheeler
d1687ce928 Build intel-igb-kmod in dev for testing 2025-10-02 15:16:55 +00:00
Luiz Souza
9c93c459c8 Update the default FreeBSD repository names.
And... make sure they are disabled.

Reported by:	SteveW
2025-10-01 21:28:22 -03:00
Marcos Mendoza
29cd5f4bfd Remove unused crypto option. Fix #16451 2025-09-26 11:18:03 -06:00
Marcos Mendoza
f8940f56d4 Include more error info for filter reload failures
In some cases the line referenced by the error is syntatically correct, in
which case it may be helpful to see the return of the command as well.
2025-09-23 11:40:27 -06:00
Marcos Mendoza
7c07d7f0a8 Handle empty config for VLAN tag type
Followup to 682b0eb2ee.
2025-09-23 08:36:55 -06:00
Marcos Mendoza
51377471e7 Retain previous VLAN tag type for exisint interfaces on upgrade. Fix #13622 2025-09-22 17:48:48 -06:00
Marcos Mendoza
682b0eb2ee Allowing changing the VLAN Tag Type. Implement #13340 2025-09-22 16:49:11 -06:00
Marcos Mendoza
d48f755902 Use the IPv6 interface address as the OpenVPN server gateway. Fix #16351
In OpenVPN server configurations OpenVPN sets the environment variable
"ifconfig_ipv6_remote" when an IPv6 tunnel network is specified. This is
not the case for IPv4 and its respective variables. These variables are
later used to create a gateway for assigned interfaces in which case the
gateway address should always be the local interface address.
2025-09-18 16:15:11 -06:00
Marcos Mendoza
8efabfca9e Fix removing old address config elements when saving gif interfaces 2025-09-18 11:05:07 -06:00
jim-p
f234af29d5 Check OpenVPN client2client for p2p_tls case. Fixes #16428 2025-09-17 09:26:43 -04:00
Marcos Mendoza
67c1251d77 Allow bridge members with IP addresses. Implement #16432 2025-09-16 16:25:24 -06:00
Marcos Mendoza
6a0f77740e Fix input validation for NAT64 destination type
When the option to overide the prefix is enabled, the destination type
should remain enabled so that the POST request contains the value and
triggers the correct input validation.
2025-09-12 15:40:10 -06:00
Brad Davis
c1d6a3b2a2 Update the bind parameter after src commit 9ba51cce8bbd 2025-09-11 15:05:12 +00:00
Brad Davis
36270ba736 Fix typo with generating the IPv6 interface using 6rd 2025-09-10 21:33:50 +00:00
Marcos Mendoza
6c744fef2f Add missing include when deleting assigned interface
"firewall_nat.inc" is needed for remove_rdr_rules().
2025-09-10 11:51:49 -06:00
Marcos Mendoza
40f9d5a31f Alert user about NAT64 rules changes from config upgrade 2025-09-08 11:36:03 -06:00
Brad Davis
04026a297d Improve generating the 6rd prefix for OpenVPN by using the configured interface instead of hardcoding the WAN 2025-09-05 20:49:41 +00:00
Brad Davis
97f9eb5c81 Add support for OpenVPN to track the WAN interface for IPv6 delegations 2025-09-04 00:03:12 +00:00
Brad Davis
dde1f55723 Move generating the 6rd prefix out to a new function called generate_6rd_prefix() 2025-09-03 17:55:49 +00:00
Brad Davis
b4a156b65d Move build_ipv6interface_list() to an include file 2025-09-03 17:55:49 +00:00
Marcos Mendoza
d5488f39c0 Clean up ports build conf 2025-09-02 20:29:21 +00:00
Marcos Mendoza
c6ed6e26e4 Build net-mgmt/pfSense-pkg-ANDwatch 2025-09-02 12:50:21 -06:00
Reid Linnemann
7d545332c0 Only delete a local user on rpc sync if not being modified. Fixes #16391 2025-08-28 17:09:37 +00:00
R. Christian McDonald
cfb34ce428
kea2fib6: use new binding-variables in Kea 3 2025-08-28 12:22:01 -04:00
R. Christian McDonald
f69de4c1ef
kea: use binding-variables for storing remote-addr and iface-name 2025-08-28 12:17:45 -04:00
Marcos Mendoza
7a44ce9bb6 Add upgrade function to handle spaces in PPP passwords
Now that spaces are respected, they should be removed when upgrading from
older configuraitons.
2025-08-27 13:22:45 -06:00
Marcos Mendoza
9da0ba1c65 Sanitize pppoe configuration parameters. Fix #16128 2025-08-27 08:04:35 -06:00
Marcos Mendoza
75bd205285 Merge pull request #4740 from Godwottery/patch-1 2025-08-22 13:53:17 -06:00