for env in $(printenv | grep '^TOR_'); do
The for loop uses space as a delimiter unless IFS is set to '\n'
Another problem here is that arguments other than [0-9]+|false|true are encapsulated in quotes which will not work for those settings.
In fact, there is not a single torrc setting that requires quotes. And even if necessary, the quotes could be added inside the environment var instead of forcing them on all non boolean/decimal values.
This patch will allow multiple arguments and spaces for custom settings.
some examples of settings requiring multiple arguments:
for env in $(printenv | grep '^TOR_'); do
The for loop uses space as a delimiter unless IFS is set to '\n' Another problem here is that arguments other than [0-9]+|false|true are encapsulated in quotes which will not work for those settings. In fact, there is not a single torrc setting that requires quotes. And even if necessary, the quotes could be added inside the environment var instead of forcing them on all non boolean/decimal values.