rpc spec: default connect point search path does not conform to absolute path requirement
rpc-connect-sketch.md says:
Each entry in the search path must be one of the following:
- a literal connect point, which can be:
- [...]
- An absolute path on disk of a connect file (a file that should contain a connect point).
- An absolute path on disk, to a directory containing one or more connect files.
As specified, paths in the search path must be absolute paths.
Later it says:
The default search path is:
- ${ARTI_LOCAL_DATA}/rpc/connect.d/. (Notes A,B)
- /etc/arti-rpc/connect.d/ (unix and mac only)
- The "USER_DEFAULT" connect point. (Note C)
- The "SYSTEM_DEFAULT" connect point. (Note C)
Note A: $ARTI_LOCAL_DATA above expands to:
- $XDG_DATA_HOME/arti/ on Unix if $XDG_DATA_HOME is set.
- $HOME/.local/arti/ on Unix otherwise.
- $HOME/Library/Application Support/org.torproject.arti on MacOS.
- {FOLDERID_LocalAppData}/arti/ on Windows. (This is typically \Users<USERNAME>\AppData\Local\arti.)
There's no guarantee that ${ARTI_LOCAL_DATA} will expand to an absolute path. For example $XDG_DATA_HOME and $HOME may expand to anything. The default search path may not conform to the requirements above.
Edited by opara