fwknopd: More reliable network dependency

Two issues:

  1. The fwknopd init script did not handle unprepared logical networks.
     This is fixed by A) not defining instance for procd when the physical
     interface is unknown, and B) by watching the logical network for
     changes.

  2. When using PPPoE, there are two physical interfaces -- one for raw
     PPPoE communication and one for wrapped communication. The function
     network_get_physdev returns the physical device, while the function
     network_get_device returns the wrapped one -- we shall use the
     wrapped interface. Usually (for non-wrapped interfaces) the physdev
     and device are the same, also other network scripts use the latter
     function.

Both issues found by and thanks are going to @lucize.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
This commit is contained in:
Oldřich Jedlička
2018-04-09 13:52:39 +02:00
parent 4750b7261e
commit 133274c607
3 changed files with 45 additions and 25 deletions
+6 -1
View File
@@ -2,7 +2,9 @@ config global
# option uci_enabled '1'
config network
# option network 'wan' # takes precedence over config.PCAP_INTF
# Logical network dependency, fully tracked, fwknopd gets restarted when
# necessary. Specifying network takes precedence over config.PCAP_INTF
# option network 'wan'
config access
option SOURCE 'ANY'
@@ -10,3 +12,6 @@ config access
option KEY 'CHANGEME'
config config
# Alternative direct physical interface definition, but untracked - you
# are on your own to correctly start/stop the service when needed
# option PCAP_INTF 'eth0'