openvpn: fix invoking user up & down commands from hotplug wrapper
This commit adds a number of fixes to the OpenVPN up/down hotplug command wrapper which currently fails to actually invoke user defined up and down commands for uci configurations not using external native configurations. - Use the `--setenv` to pass the user configured `up` and `down` commands as `user_up` and `user_down` environment variables respectively - Instead of attempting to scrape the `up` and `down` settings from the (possibly generated) native OpenVPN configuration in `/etc/hotplug.d/openvpn/01-user`, read them from the respective environment variables instead - Fix parsing of native configuration values in `get_openvpn_option()`; first try to parse a given setting as single quoted value, then as double quoted and finally as non-quoted, potentially white-space escaped one. This ensures that `up '/bin/foo'` is interpreted as `/bin/foo` and not `'/bin/foo'` Ref: https://forum.openwrt.org/t/openvpn-up-down-configuration-ignored/91126 Supersedes: #15121, #15284 Signed-off-by:Jo-Philipp Wich <jo@mein.io> (cherry-picked from commit 7f065a94)
Showing
- net/openvpn/Makefile 1 addition, 1 deletionnet/openvpn/Makefile
- net/openvpn/files/etc/hotplug.d/openvpn/01-user 8 additions, 8 deletionsnet/openvpn/files/etc/hotplug.d/openvpn/01-user
- net/openvpn/files/lib/functions/openvpn.sh 2 additions, 2 deletionsnet/openvpn/files/lib/functions/openvpn.sh
- net/openvpn/files/openvpn.init 16 additions, 5 deletionsnet/openvpn/files/openvpn.init
Please register or sign in to comment