openvpn: sync with proto shell-script
authorPaul Donald <redacted>
Wed, 11 Mar 2026 18:25:01 +0000 (19:25 +0100)
committerHannu Nyman <redacted>
Sun, 15 Mar 2026 06:45:36 +0000 (08:45 +0200)
add hotplug script handlers to ucode version

follow-up to 647b67e18b6bf857e60e4e2e1874fd04d4138586

Signed-off-by: Paul Donald <redacted>
net/openvpn/files/lib/netifd/proto/openvpn.uc

index 1dc823e4685a39019a34c5d67a383abfb8ff2208..127cda5e643610dd24c8f6cd4ac5515062bccc6d 100755 (executable)
@@ -448,6 +448,23 @@ function proto_setup(proto) {
                }
        }
 
+       // hotplug handler scripts
+       if (cfg.script_security >= 2) {
+               push(params, '--setenv', 'INTERFACE', iface);
+               push(params, '--up', '/usr/libexec/openvpn-hotplug');
+               if (cfg.up) push(params, '--setenv', 'user_up', cfg.up);
+               push(params, '--down', '/usr/libexec/openvpn-hotplug');
+               if (cfg.down) push(params, '--setenv', 'user_down', cfg.down);
+               push(params, '--route-up', '/usr/libexec/openvpn-hotplug');
+               if (cfg.route_up) push(params, '--setenv', 'user_route_up', cfg.route_up);
+               push(params, '--route-pre-down', '/usr/libexec/openvpn-hotplug');
+               if (cfg.route_pre_down) push(params, '--setenv', 'user_route_pre_down', cfg.route_pre_down);
+               if (cfg.client || cfg.tls_client) {
+                       push(params, '--ipchange', '/usr/libexec/openvpn-hotplug');
+                       if (cfg.ipchange) push(params, '--setenv', 'user_ipchange', cfg.ipchange);
+               }
+       }
+
        // assemble the final command line
        let cmd = [
                OPENVPN,
git clone https://git.99rst.org/PROJECT