syncthing/lib/config
Jakob Borg 296db314f5
lib/config: Improve parsing of gui-address overrides (#9144)
improve parsing of gui-address overrides

make checks for whether the gui-address is overridden consistent by
checking whether the environment variable is set and not an empty
string. the `Network()` function however checked for the inclusion of
a slash instead of the presence of any characters. If the config file's
gui address was set to a unix socket and the gui override to a tcp
address, then the function would have wrongly returned "unix".

the `URL()` function always returned the config file's gui address if a
unix socket was configured, even if an override was specified.

the `URL()` function wrongly formatted unix addresses. the http(s)
protocol was used as the sheme and the path was percent escaped. because
of the previous bug, this could only be triggered if the config file's
gui address was tcp and an unix socket override was given.

simplify the `useTLS()` function's codepath for overrides.

Co-authored-by: digital <didev@dinid.net>
2023-10-02 08:40:03 +02:00
..
mocks lib, gui: Default ignores for new folders (fixes #7428) (#7530) 2022-01-13 23:38:21 +01:00
testdata lib/config, gui: Disallow some options in combination with "untrusted" (fixes #8920) (#8921) 2023-06-14 09:24:31 +02:00
authmode.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
authmode.pb.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
blockpullorder.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
blockpullorder.pb.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
commit_test.go all: Remove unused method receivers (#8462) 2022-07-28 17:32:45 +02:00
config_test.go lib/config: Accept pre-hashed password (fixes #9123) (#9124) 2023-09-24 19:23:49 +02:00
config.go all: Support multiple device connections (fixes #141) (#8918) 2023-09-06 12:52:01 +02:00
config.pb.go all: Support syncing ownership (fixes #1329) (#8434) 2022-07-26 08:24:58 +02:00
debug.go all, lib/logger: Refactor SetDebug calls (#6054) 2019-10-04 13:03:34 +02:00
deviceconfiguration.go all: Support multiple device connections (fixes #141) (#8918) 2023-09-06 12:52:01 +02:00
deviceconfiguration.pb.go all: Support multiple device connections (fixes #141) (#8918) 2023-09-06 12:52:01 +02:00
folderconfiguration.go all: Remove lib/util package (#9049) 2023-08-21 19:44:33 +02:00
folderconfiguration.pb.go lib/config: Allow sub-second watcher delay (fixes #7859) (#7864) 2023-03-18 08:50:38 +01:00
foldertype.go all: Add untrusted folders behind feature flag (ref #62) (#7055) 2020-11-09 15:33:32 +01:00
foldertype.pb.go all: Add untrusted folders behind feature flag (ref #62) (#7055) 2020-11-09 15:33:32 +01:00
guiconfiguration.go lib/config: Improve parsing of gui-address overrides (#9144) 2023-10-02 08:40:03 +02:00
guiconfiguration.pb.go all: Regenerate proto (#7696) 2021-05-19 13:30:20 +02:00
ldapconfiguration.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
ldapconfiguration.pb.go all: Regenerate proto (#7696) 2021-05-19 13:30:20 +02:00
ldaptransport.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
ldaptransport.pb.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
migrations_test.go lib/api: Add /rest/config endpoint (fixes #6540) (#7001) 2020-10-22 19:54:35 +02:00
migrations.go all: Remove lib/util package (#9049) 2023-08-21 19:44:33 +02:00
observed.pb.go build: Update all dependencies (#7968) 2021-09-26 12:08:23 +02:00
optionsconfiguration.go all: Remove lib/util package (#9049) 2023-08-21 19:44:33 +02:00
optionsconfiguration.pb.go lib/config, lib/connections: Configurable protocol priority (ref #8626) (#8868) 2023-04-16 14:54:28 +02:00
pullorder.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
pullorder.pb.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
size_test.go all: Remove lib/util package (#9049) 2023-08-21 19:44:33 +02:00
size.go all: Fix check for empty string (#8456) 2022-07-28 16:51:03 +02:00
size.pb.go all: Regenerate proto (#7696) 2021-05-19 13:30:20 +02:00
tuning_test.go Implement database abstraction, error checking (ref #5907) (#6107) 2019-11-29 09:11:52 +01:00
tuning.go all: Use protobuf to generate config structs (fixes #6734) (#6900) 2020-08-25 08:11:14 +02:00
tuning.pb.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
versioningconfiguration.go all: Remove lib/util package (#9049) 2023-08-21 19:44:33 +02:00
versioningconfiguration.pb.go all: Regenerate proto (#7696) 2021-05-19 13:30:20 +02:00
wrapper.go all: Support multiple device connections (fixes #141) (#8918) 2023-09-06 12:52:01 +02:00