Correct typo on variable. Should help https://forum.pfsense.org/index.php?topic=84451.0
Fixes #4040 for pppoe use static route with -iface option to help when more than one pppoe has the same gateway. Also kill states when reloading apinger to catch up with new route
Put the safety belts for rrds on its proper location. No need to create /tmp and change permissions on these paths
Setup rrd dir before calling create_gateway_quality_rrd
Stops error:ERROR: opening '/var/db/rrd/WAN_DHCP-quality.rrd': No such file or directoryin system log during boot.Forum: https://forum.pfsense.org/index.php?topic=84627.0
Rather than set the g['booting'] on globals provide a function to test for that doing the right checks
Only skip tap-type OpenVPN servers, not all. Fixes #3713
show tunnelv4 on v4 the same way tunnelv6 is shown on v6
fix missing strpos parameter
Compare the right things here.
Tighten checks here to avoid overriding the default gw with garbage
Make some more useful checks here
Be sure the same gateway is not processed for v4 and v6
Make sure target has scope when it's a link-local. Fixes #3969
Make sure srcip has scope when it's link-local. Should fix #3969
s/removing/omitting/g for gateway monitor log entires. "Removing" is not necessarily correct, there are many circumstances where this runs where it wasn't there to begin with, and is potentially misleading.
Provide a toggle for apinger debug messages to be logged to syslog. To help with roubleshooting issues
fixes #3713
Replace some backticks by exec ans simplify commands
pfSense - Bug #3607: Fix issue whereby the ICMP6 messages sometimes have the wrong source IP when a monitor gateway has been set.
[pfSense - Bug #3607] Ensure gateway detection can cope with the gateway being a dynamically assigned PPoE interface.
Merge pull request #953 from N0YB/Gateway_Quality_RRD
Fix gateway quality RRD to have the correct granularity and be consistent with the pfSense graphs set.
Merge pull request #984 from phil-davis/master
Return GWG IP protocol (version) when no gateway IP
Remove broken 'dynamic6' gateway, we already have ipprotocol to tell us the IP version, leave it more simple using only 'dynamic'. It helps #3484
Fix typo on var name
Small correction for clear code
Ticket #3484 Correct the case for GRE tunnels as well since they behave the same. GRE seems to need the prefixlen 128 specified all the time so do it explicitly to be on safe side
Fixes #3484. Provide a dynamic gateway for gif v6 tunnels so it can be used on firewall rules etc. The guide for setting up this tunnels on docs need to change to leave the gif interface as none type. People upgrading need to fix this themselves with a not on release notes. This can be fixed if the kernel condition is relaxed to allow setting the prefixlen on the tunnel as ipv4
This is a resubmit of an older pull request I had closed. It came up again in the forum, with a user setting up a VM environment and wondering why he cannot make policy-routing rules to a gateway group. The gateway group names did not display because all his WANs were down at the time and so the existing code was too dumb to determine the IP protocol (version 4 or 6) when none of the WANs in the gateway group actually have an IP address yet.
Create gateway quality RRD with settings suitable for pfSense graph set, since apinger uses default step (300) and other settings that are not so good/consistent with the pfSense graphs set....
Gateway Monitor Advanced Settings
Exposes 3 additional apinger configuration options in the gateway monitor advanced section which can either be set manually, calculated based on interval, or use the hard coded defaults. 1) Avg Delay Samples 2) Avg Loss Samples...
Add an option to force a gateway to be down, it fixes #2847
Fix a bug introduced in commit 06b8d43c that breaks return_gateways_array() called with $disabled == false
No reason to set the same value to ipprotocol
Add a new param to return_gateways_array and make it return gateways when interface doesn't exist. Default behavior didn't change. Also check the new gateway parameter (disabled) when filtering
Fix an issue that changes wrong gateway entry when items are hidden
Don't flush interface cache on each call of the function when looping through all gateways.
Revert "Define dynamic gateway for GRE interfaces and do not user to define IP address to the interface. Fixes #3280"
Another solution will be implemented
This reverts commit 6721d6d0443bd7e697bd6ca33f470c801608df7e.
Define dynamic gateway for GRE interfaces and do not user to define IP address to the interface. Fixes #3280
Make return_gateways_array() return all disabled gateways when $disabled is true, it should fix #3291
Bring back static routes to fix issues reported on Ticext #3179
Fix #3172, return_gateway_groups_array() was returning the last vip since it was using wrong variable name on iteration
Ooops fix this to add only th einterface
Add scope identifier to target when its link-local
Cleanup some code that is not needed anymore
Force apinger to write the status file before getting gateway status
Reload apinger now that we can rather than restarting. Related to Ticket #3119
Fix #3113, fix multiple english spell errors s/seperet/separat/
Fix #3091, fix bad var assignment
Resolves #2910. Make apinger write its status file just after starting so that thing work as expected
Remove referenced binary not used anymore
Remove unused code and spurious alert
Use file_put_contents for simplicity and readbility
Replace all linklocal checks by is_linklocal()
Fixup gwlb functions related to gw failover
Make apinger pass the gateway parameter both when an alarm alarms (gateway is down) and when it comes good (gateway is up). This way the downstream openvpn and dyndns code can know what happened and do sensible stuff....
ipprotocol is inet or inet6
Take dynamic6 into consideration too
Deduplicate and simplify code
Make more strict comparison to avoid type issues when gw name only contain numbers. Fixes #2956
Fix whitespace and indent
Add default case when detecting dynamic gateway ip
Add a default to $wancfg['ipaddr'] case for both ipv4 and ipv6 to allow gateway ip to be returned rather then 'dynamic' for an openvpn connection
Make fe80: addresses check case insensitive
Use apinger macros to send the gateway name for openvpn and dyndns. Ipsec will reload all of it since its single process
Provide a function to get all gateway groups a gateway is member of
Optimize a bit interface_gateway_group_member
Check if the argument is a gateway or an interface
Correct code and initialize properly variables escpecially arrays. Also do fixes and simplificate to make it more readble
Correct check from previous code path simplification
Initialize some arrays to avoid php issues and also use list() here to avoid double array dereference
Simplify a bit code branching no change on functionality
Track apinger status in /var/run instead of /tmp
This is a one line status file updated every few seconds. It would bebetter to store this in /var/run since that is (always?) a ram disk onpfSense. Especially important on systems with flash storage.
see: http://forum.pfsense.org/index.php/topic,52734.msg281834.html#msg281834
If gatway is dynamic the type cannot be determined, trim the code trying to do something impossible. While here optimize a bit
Try to remove as much as possible _stf special case through the code
Just set defaultgw after all gateways are processed, it fixes return_gateways_array()
This message can be really spammy on a failure if you have multiple gateway groups. Disable e-mail notification of this message for now.If the e-mail actually made it out, at least one of the gateways must still be up...
If the user has IPv6 disabled, don't create dynamic IPv6 gateways.
Only allow gateways of the appropriate type (ipv4 or ipv6) to affect whether a gateway is marked as default, otherwise you can end up with an ipv4 gateway marked as default for ipv6 and the gui just shows "default".
Oops correct interface name
Make gateways for assigned OpenVPN servers as well as clients.
Add unset
Switch to is_array() check and add curly
gateway monitoring, make the notifications generated clear to tell which gateway/group they are about
Separate default gateway switching code to its own function, fix it to only operate on one address family at a time. Old method wouldn't re-set inet gateway if there was an inet6 default.
Make the gateway group member check a boolean, might convert to something else at a later time so we could check group memberships.Also launch the dyndns configure if the dyndns interface is a gateway group name, could check membership later if we wanted.
Add function that checks if the interface is part of a gateway group.
Reference the correct variable here, it was broken before and could never have worked.
Remove the filter configure call as this could otherwise lead to a recursive filter configure.
Put apinger default values into a function
The default advanced apinger parameter values are now returned by function return_apinger_defaults. So they can easily be obtained by any code that cares.
Make sure that we process the logic statement correctly, otherwise we might accidentally end up missing dual stacked or tunneled interface gateways
Change field name from lowloss to losslowrelated in http://redmine.pfsense.org/issues/2537
Reconfigure OpenVPN on gateway change
Comment out adding static routes for gateway monitor IPs because we now bind to the correct Interface with apinger.
Fix: Warning: preg_match(): No ending delimiter '/' found in /etc/inc/gwlb.inc on line 696
Check in code that allows for using a gateway group as the interface on the OpenVPN server page. Only allow IPv4 gateway groups for now. We'll need to add IPv6 suppport here later when we import OpenVPN 2.3.Unbreak the gateway group function on broken configurations like a missing 3G stick....
Needs a default case so IPv6 interfaces are resolved to a real interface
Changeover to the new multiple command pfSctl
Reverse the arguments, i got them wrong.Redmine ticket #1965
Trigger dyndns and ipsecdns updates through check_reload_status. IpsecDNS already performs a filter_configure() too.Redmine ticket #1965
Make sure to return the Null route gateways too for looking up a gateway entry
Some minor enhancements from renaming the Gathering Data to Pending.When it doesn't exist in the array it's really unknown. Make that lightblue. show a ~