-
Notifications
You must be signed in to change notification settings - Fork 52
Description
Bug report
Describe your environment
- Device: _____
- OS name and version: Fedora 42_
- IVPN app version: 3.14.17_
Describe the problem
A file path with a space (/home/user/script 2.sh
, or /usr/lib/plexmediaserver/Plex Media Server
) is not recognized as valid for the IVPN App's split tunnel command.
Steps to reproduce:
Create a trivial script called script1.sh
:
#!/bin/bash
curl ifconfig.co/json
Make executable chmod +x script1.sh
and run the script:
{
"ip": "...
...
}
Add a space to the script name:
cp script1.sh "script 2.sh"
Run it again to verify that the shell handles the space via escape (\
) or using quotes:
$ script\ 2.sh
$ "script 2.sh"
Enable the split tunnel feature, and run the first script to verify that it works:
$ ivpn splittun -appadd /home/user/script1.sh
Running command in Split Tunneling environment (pid:5603):
{
"ip": "...
...
}
Using common space-handling techniques, try to run the second script:
$ivpn splittun -appadd /home/user/script\ 2.sh
Error: Exec: "/home/user/script": stat /home/user/script: no such file or directory
$ ivpn splittun -appadd "/home/jordan/script 2.sh"
Error: Exec: "/home/user/script": stat /home/user/script: no such file or directory
$ PATH_TO_EXEC="/home/jordan/script 2.sh"
$ ivpn splittun -appadd $PATH_TO_EXEC
Error: Exec: "/home/user/script": stat /home/user/script: no such file or directory
$ ivpn splittun -appadd "$PATH_TO_EXEC"
Error: Exec: "/home/user/script": stat /home/user/script: no such file or directory
$ ivpn splittun -appadd $(echo "$PATH_TO_EXEC")
Error: Exec: "/home/user/script": stat /home/user/script: no such file or directory
Observed Results:
The IVPN App seems to be taking split tunnel commands via a shift-like procedure, shifting the next command line arg to a buffer, then parsing, and processing. This does not handle spaces for the file path as expected.
The connect
command successfully handles spaces for city names:
ivpn connect -p wg "Las Vegas" # success
ivpn connect -p wg Las Vegas # fail
Expected Results:
Accept an escape (\
) or using quotes for split tunnel executable path.
--
Thanks.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status