Project

General

Profile

Download (234 KB) Statistics
| Branch: | Tag: | Revision:

# Date Author Comment
0680e73e 05/05/2025 08:37 PM Reid Linnemann

Fix serialization/deserialization of ppp hostuniq and provider attributes

When these two properties were added, the form handling set their config values
to boolean true if empty, leading to empty tags in the config.xml which would be
serialized to the config.cache as empty strings. As a result, later fetches of a...

30cad817 05/05/2025 08:37 PM Reid Linnemann

if_pppoe: Resolve endless loop on dhcp6c

When using if_pppoe, the use of ppp-ipv6 to up the pppoe interface on ADDR_ADD
causes a loop of calling interface_dhcp6_configure(), which
restarts dhcp6c, which acquires a lease and assigns an address, which emits an...

1c9355bd 04/24/2025 01:09 AM Marcos M

Remove the pppoe reset cron job when the interface is disabled or with if_pppoe

06824b27 04/21/2025 04:56 PM Marcos M

Correct DHCP6 client log

This function is called regardleass of the "without RA" option. Followup
to dd3d48af87c892a070210f0064e589157868e7c2.

98c25d78 03/21/2025 03:59 AM Luiz Souza

Add the description (interface name) to the if_pppoe interfaces.

(cherry picked from commit 2cd86e498122da4b43feb041f442967efebdcdba)

aff7e91b 03/21/2025 03:59 AM Luiz Souza

Change the mpd5/if_pppoe knob back to a global setting.

They cannot cooexist, so makes no sense have it as a per connection setting.

Enforce a few protections and warnings when the user switch from mpd5 with a
MLPP setup to if_pppoe, which do not support MLPPP....

48a44422 03/21/2025 03:59 AM Luiz Souza

Do not allow the selection of more than one NIC with if_pppoe.

Effectively disable the MLPPP support with if_pppoe.

(cherry picked from commit 00c6e25f2ce6d793680dbe01053ec84c7cba500b)

258e764e 03/21/2025 03:59 AM Luiz Souza

Change the knob to select mpd5/kernel PPPoE to a per-connection setting.

Replaces the original global setting.

Ticket: #18294
(cherry picked from commit e52a8eda6fa90e613f940553cfe438baafc7e7ea)

0f78a966 03/21/2025 03:59 AM Renato Botelho

pppoe: Configure PPPoE interface using if_pppoe

Introduce the new kernel module if_pppoe and start using it by default
to configure PPPoE client interfaces.

(cherry picked from commit 09537b486e731f3061f7e13d33214e6560b3f2f4)

a5ac05e8 03/21/2025 03:59 AM Renato Botelho

pppoe: Destroy PPPoE interface when using if_pppoe

Change interface_bring_down() to destroy pppoe interface instead of
dealing with mpd stuff if system is using if_pppoe.

(cherry picked from commit d6d167222c010516e1a7644622f5d5cc0e04c95f)

78cfbc5e 02/11/2025 08:57 PM Marcos M

Reduce rc.newwanipv6 actions on RENEW

This change passes the dhcp6c REASON to the script. The script uses this
to retain the previous behavior for REASONs other than RENEW. If the
reason is RENEW, action is only taken when there has been a change. Also
include the REASON in the info log message....

64638940 02/11/2025 06:02 PM Marcos M

Trigger rc.newwanipv6 on dhcp6c RENEW

The upstream DHCPv6 server may respond to the RENEW with a different
prefix hence the rc.newwanipv6 script should be called. The script should
avoid taking action as appropriate when the address has not changed.

Part of https://redmine.pfsense.org/issues/12947

1d909abb 02/11/2025 03:07 PM Marcos M

Fix regression when configuring the interface MAC address

Followup to dbb8c4840dbd75f28528a3ce4a0070091d95336a

dbb8c484 02/10/2025 07:01 PM Marcos M

Handle a null return from pfSense_get_ifaddrs()

- Update the usage of get_interface_addresses() to handle a null return
- Update the usage of get_interface_mac() to handle an empty string
- Remove unused argument from interface_qinq2_configure()

1a578050 02/07/2025 03:13 PM Luiz Souza

Fix the case where pfSense_get_ifaddrs() returns NULL.

It happens when the interface has no address (triggered with pppoe).

eb35f2ee 02/04/2025 10:57 PM Marcos M

Consider the linklocal_fallback value when checking the interface cache

This is needed to make sure that callers to find_interface_ipv6() using
different linklocal_fallback values receive the correct data.

Followup to ec7c1879da64f8a39e4aa8103c351768118af03d...

28a94ddf 02/04/2025 07:59 PM Marcos M

Fix condition check in get_interface_addresses()

Followup to ec7c1879da64f8a39e4aa8103c351768118af03d

ec7c1879 02/04/2025 05:31 PM Marcos M

Don't include LL addresses by default in get_interface_addresses()

- Update get_interface_addresses() to make including the IPv6 LL address
optional. It defaults to the function's previous behavior.
- Update find_interface_ipv6() to pass the $linklocal_fallback preference...

ef4d1687 02/03/2025 10:07 PM Marcos M

Fix regression with IPv6 LL addresses

- Update does_vip_exist() to correctly compare LL VIPs that include the
interface in the address (e.g. '%lo0').
- Return the previous find_interface_ipv6_ll() behavior of including the
the interface in the LL address....

c66e2894 02/01/2025 06:07 PM Marcos M

Include all IPv6 address flags in get_interface_addresses()

09a0164d 02/01/2025 06:07 PM Marcos M

Select an interface IPv6 address based on priority

4294e51e 02/01/2025 06:07 PM Marcos M

pfSense_getall_interface_addresses() is deprecated

Use pfSense_get_ifaddrs() instead which now includes LL addresses.

cdba77b2 01/16/2025 08:31 PM Renato Botelho

Fix typo in function name on log error message

21b966d4 01/16/2025 08:30 PM Renato Botelho

Style fixes

37d60e23 01/07/2025 02:11 PM Luiz Souza

Bump up the year in the Copyright notice.

aaf29961 12/03/2024 10:01 PM Christian McDonald

dhcp: fix static arp config access

6a499415 12/03/2024 09:58 PM Christian McDonald

Revert "dhcp: fix static arp config access"

This reverts commit c31cc5d0e1121e973abc0d58b4808f6d90762dba.

437d8274 12/03/2024 09:50 PM Christian McDonald

remove rogue character

c31cc5d0 12/03/2024 09:48 PM Christian McDonald

dhcp: fix static arp config access

499340e4 11/21/2024 04:47 PM Marcos M

Add some function descriptions

b8f18410 10/15/2024 06:44 PM Marcos M

Remove unnecessary config_init_path() calls

81057112 09/25/2024 03:47 AM Marcos M

Add check for empty interface

Callers may call get_real_interface() with an empty interface;
bail early if so.

9f9a9100 09/20/2024 03:33 PM Marcos M

Handle empty variable

Callers of these functions may send null variabes; bail early if so.

449efba0 09/09/2024 05:31 PM Marcos M

Additional safety checks for explode()

See 8c81cad531b1dd43a6514604091b3c4a6932d715

7939322b 09/05/2024 08:02 PM Marcos M

Fix config paths with leading slash

A single or a leading forwward-slash is not supported.

dbe25e25 09/05/2024 07:48 PM Marcos M

Skip ppp modem interfaces where appropriate

5843f3bf 09/04/2024 11:24 PM Marcos M

Add safety checks for calls to convert_real_interface_to_friendly_interface_name()

The function will return null for unassigned interfaces. Add checks
for this where appropriate.

8c81cad5 09/04/2024 07:47 PM Marcos M

Filter out empty array values for explode()

Calling explode() with an empty string will return a single-element
array with an empty value. This change filters out empty values
where appropriate - i.e. where it's not already a condition check for
it and the value should not be empty.

35f66a30 09/04/2024 06:25 PM Marcos M

Skip ppp modem interfaces where appropriate

This avoids calling e.g. get_real_interface() for a modem device.

dcfd6fa4 09/03/2024 08:08 PM Marcos M

Don't try to configure interface groups without members

65db621a 06/07/2024 03:59 PM Reid Linnemann

Add defaults to config_get_path where needed in select files

Some calls to config_get_path may introduce errors if the key does not exist and
the default of null is returned. This commit changes some defaults in these files:

src/etc/inc/auth.inc...
ac39332c 06/04/2024 09:23 PM Marcos M

Handle failures to create an interface. Fix #14708

The function pfSense_interface_create2() may fail to create the
requested interface, in which case it returns the array:
['error'=>'Could not create interface']

82e22457 06/04/2024 09:12 PM Marcos M

Add a helper function for unserialize(). Fix #15423

For calls to unserialize() which do not check for errors, use the
helper function instead.

487d7d5e 05/31/2024 04:31 PM Marcos M

Update the interface cache when configuring IPsec. Fix #15449

74ad34bc 05/24/2024 06:11 PM Marcos M

Avoid configuration loop with LAGG interfaces. Fix #14083

The fix to #9453 introduced a loop when configuring LAGG interfaces.
This happens when interface_lagg_configure() ultimately calls
set_interface_mtu() which also calls interface_lagg_configure(). Since...

4b9165e5 05/24/2024 05:25 PM Marcos M

Default to an empty array for functions expecting a countable value

Do this for foreach() and count().

63d6bb4f 05/23/2024 05:37 PM Marcos M

Update all direct config access with accessor functions

26308930 05/23/2024 05:37 PM Marcos M

Use config accessors in certificate functions

816fef25 05/23/2024 05:37 PM Marcos M

Move to is_platform_booting()

The function platform_booting() is deprecated.

134a8703 05/23/2024 05:37 PM Marcos M

Move from ${var} to {$var}

The use of ${var} has been deprecated since PHP 8.2

d900b9d4 05/23/2024 05:37 PM Marcos M

Fix PHP linter issues

a68f7a3d 01/03/2024 06:26 AM Luiz Souza

Update the years in the Copyright notice.

8e83f722 12/28/2023 10:27 PM Marcos M

Strip the prefix size from the VTI remote address. Fix #15124

88674cdb 12/27/2023 09:10 PM Marcos M

Reconfigure VLANs after recreating LAGG interfaces. Fix #9453

c32312a3 12/20/2023 12:31 AM Marcos M

Handle IPv6 GUA and ULA in get_interface_track6ip(). Fix #15057

4bbbcc36 11/15/2023 12:57 AM Marcos M

Refactor use of return_gateways_array() with get_gateways(). Fix #14893

Most calls to return_gateways_array() do not need the gateway list to be
recreated. get_gateways() can filter the gateway list, and indexing is
moved from return_gateways_array() to get_gateways() to avoid using...

e67b20f4 10/19/2023 03:42 PM Jim Pingle

Fix some syntax/logic errors in interface config.

9bda254d 09/15/2023 09:28 PM Marcos M

Uncompress IPv6 before filtering interface addresses. Fix #14785

c830f50d 09/13/2023 07:55 PM Marcos M

Remove the cached interface address when killing the dhcp client. Fix #14616

35b6dbe6 08/29/2023 03:07 PM Marcos M

Prioritize the first GUA when selecting the primary IPv6 address. Fix #14725

baa612e5 08/23/2023 09:37 PM Marcos M

Return the first interface address instead of the last. Fix #14623

5df71c77 08/23/2023 04:21 PM Jim Pingle

Correct IPv6 LL addr locate behavior. Fixes #14392

Comments said it should take the first but it was taking the last.

Make that behavior optional but default to taking the first as was
originally intended.

14beb636 08/23/2023 02:44 PM Jim Pingle

Simplify interface_find_child_cfgmtu(). Fixes #13218

  • Simplify the code in interface_find_child_cfgmtu() so it doesn't have
    so much repetition
  • Do not test GIF/GRE as they are virtual and not tied to MTU of the
    physical interface.
5082edf9 07/06/2023 05:21 PM Jim Pingle

Fix static ARP interface check. Fixes #14374

d69d6c84 07/05/2023 07:31 PM Jim Pingle

Improve GIF/GRE interface handling. Fixes #14549

9947de3e 06/20/2023 05:03 PM Luiz Souza

Add "ixv" to the list of capable ALTQ interfaces.

Ticket: #14408

e47285ae 06/13/2023 03:57 PM Marcos M

Don't modify routes when adding or removing DNS IP addresses that exist on interfaces. Fix #14288

62fb07c8 05/10/2023 10:44 PM Reid Linnemann

Disable CARP until services have started and before shutdown/reboot. Fixes #2218

CARP has historically been enabled as part of interface bringup and sync setup
fairly early in rc.bootup. This change intentionally shuts down CARP from
interface bringup all the way until services have been started to ensure that a...

16bf36e0 05/02/2023 04:36 PM Kristof Provost

Have rtsold always call the script, even if 'M' or 'O' bits are not set

04491654 04/26/2023 10:05 PM Reid Linnemann

Load if_gif if needed when creating a gif interface. Fixes #14035

9d6220c6 04/11/2023 07:19 PM Jim Pingle

Remove sleep from Do Not Wait for RA code path. Fixes #13492

The purpose of the sleep was never documented as far back as I could
tell, and it appears to cause more harm than good on modern systems.

c5b8e57a 02/28/2023 08:54 PM Jim Pingle

Improve validation and escaping of bridge interfaces. Fixes #14052

e53f0573 02/16/2023 02:24 PM Jim Pingle

Fix DNS override enable test. Fixes #13962

402c98a2 02/09/2023 12:17 AM Reid Linnemann

Update copyright years to include 2023

5daac457 12/21/2022 04:38 PM Jim Pingle

Revert "Pass reloadall flag to dhcp6c config. Fixes #13253"

This reverts commit 8e88bd48a22b55d213ac7613be74c651706cfa0d.

616579c0 12/15/2022 04:20 PM Steve Wheeler

Remove trailing whitespace

4049406a 12/15/2022 04:20 PM Steve Wheeler

Remove cxl from altq capable interfaces list

2568e151 12/08/2022 09:03 PM Christian McDonald

Rector direct global g accesses

51b682d9 11/30/2022 08:37 PM Reid Linnemann

Add ovpn qinqs to bridges instead of rebuilding them. Fixes #13666

qinq interfaces defined with parent openvpn interfaces are configured late in
rc.bootup, after qinqs for other physical and logical interfaces and bridges are
configured. The resolution to #13225 ensured that these late interfaces were...

8e88bd48 11/28/2022 09:04 PM Jim Pingle

Pass reloadall flag to dhcp6c config. Fixes #13253

This ensures that if the interface is being configured in a way that requires a reload, that the DHCP6 client is also restarted. This allows the DHCP6 client to restart when applying settings and during other necessary events.

2b66dafa 11/18/2022 09:46 PM Reid Linnemann

Fix gif interface _routerv6 files not being created. Fixes #11545

interface_gif_configure() uses the global variable $g to look up the temp
directory in which to write the router/gateway files used for gateway
monitoring. The declaration of $g in this scope was inadvertently removed in...

1688a960 11/18/2022 08:49 PM Jim Pingle

Add iface to some resolver restarts. Fixes #12612

A few interface-specific calls to restart the resolver were not passing
the interface name to ensure it was only restarted when necessary.

b381fa76 11/18/2022 06:23 PM Jim Pingle

Fix PPP reset hr/min blank vs 0. Fixes #13307

29f367a0 11/18/2022 03:58 PM Jim Pingle

Fix Adv DHCP6 f/multiple interfaces. Fixes #13462

4864d7f6 11/15/2022 06:49 PM Josh Soref

Spelling fixes. Fix #13357

Bugs:
  • Incorrect input validation for `dhcp6c` `keyinfo expire` `forever` keyword in `interfaces.inc`.
  • Incorrect input validation for associated rule's `Source Port` in `firewall_rules_edit.php`.
  • Incorrect `voucher*.` file lock reference in `status_captiveportal_voucher_rolls.php`....
26da7653 11/15/2022 03:00 PM Jim Pingle

Correct typo. Fixes #13663

3f5702a9 11/14/2022 08:27 PM Kristof Provost

Add bxe to the ALTQ capable interfaces list

Redmine: #13304

ba97e19f 11/10/2022 03:51 PM Kristof Provost

Remove cxgbe (cc) from the ALTQ capable list

Despite what the relevant man page claimed (now fixed) the cxgbe driver
has not supported ALTQ since 2012. Do not allow ALTQ to be enabled on
those interfaces.

This reverts b3979f4abe9ecb2bdd59cbbcb61e3eccf9180b79....

420dacfe 09/21/2022 08:00 AM Kristof Provost

qinq: use if_vlan rather than netgraph

if_vlan now supports QinQ, so use that rather than netgraph. This is
expected to perform better, removes a subsystem dependency and
simplifies the php code as well.

Note that this is not possible on stable/12.

ee69eee6 09/21/2022 08:00 AM Kristof Provost

Remove unused argument from interface_qinq_configure()

$fd is always NULL, so there's no point in having branches for it.

8fa5038b 09/13/2022 05:14 PM Marcos M

Update external http links

4fee94b6 09/08/2022 10:35 PM Reid Linnemann

Replace all direct $config accesses in interfaces.inc. #13446

c0d3797c 09/07/2022 08:48 PM Christian McDonald

Fixes some PHP81 related config access issues related to interfaces and interface assignments for #13446

95d50585 08/31/2022 07:22 PM Jim Pingle

Fix PHP error building if list. Issue #13446

e2f5ef16 08/31/2022 05:50 PM Viktor Gurov

dhclient pid path fix. Issue #13217

c4117e83 08/24/2022 08:20 PM Reid Linnemann

Make array/config_set_path() create intermediary paths

3bea27fd 08/23/2022 11:24 PM Reid Linnemann

Rename run_dhcp6client_process param to debugOption

18ad7933 08/23/2022 11:24 PM Reid Linnemann

Correct a stray single quote in a config path

63de060f 08/23/2022 11:24 PM Reid Linnemann

Remove '/enable' from a path given to config_path_enabled()

24b3f37e 08/23/2022 11:24 PM Reid Linnemann

Fix unexpected type string for exec output