syncthing/lib/model
André Colomb ab0eb909a2
gui, lib/connections: Let the backend decide whether connection is local (fixes #8686) (#8694)
* lib/connections: Cache isLAN decision for later external access.

The check whether a remote device's address is on a local network
currently happens when handling the Hello message, to configure the
limiters.  Save the result to the ConnectionInfo and pass it out as
part of the model's ConnectionInfo struct in ConnectionStats().

* gui: Use provided connection attribute to distinguish LAN / WAN.

Replace the dumb IP address check which didn't catch common cases and
actually could contradict what the backend decided.  That could have
been confusing if the GUI says WAN, but the limiter is not actually
applied because the backend thinks it's a LAN.

Add strings for QUIC and relay connections to also differentiate
between LAN and WAN.

* gui: Redefine reception level icons for all connection types.

Move the mapping to the JS code, as it is much easier to handle
multiple switch cases by fall-through there.

QUIC is regarded no less than TCP anymore.  LAN and WAN make the
difference between levels 4 / 3 and 2 / 1:

{TCP,QUIC} LAN --> {TCP,QUIC} WAN --> Relay LAN --> Relay WAN -->
Disconnected.
2022-11-28 09:28:33 +01:00
..
mocks lib/fs, lib/model: Add warning about kqueue resource usage (fixes #7855) (#8249) 2022-04-05 21:32:06 +02:00
testdata lib/model: Spurious tmp file (ref #6607) (#6609) 2020-05-07 08:49:59 +02:00
blockpullreorderer_test.go all: Remove miscellaneous vestigial code (#7495) 2021-03-17 22:23:12 +01:00
blockpullreorderer.go lib/model: Add support for different puller block ordering (#6587) 2020-05-11 22:44:04 +01:00
debug.go all, lib/logger: Refactor SetDebug calls (#6054) 2019-10-04 13:03:34 +02:00
deviceactivity_test.go lib/model: Return index from deviceActivity.leastBusy 2021-11-26 12:07:43 +01:00
deviceactivity.go lib/model: Return index from deviceActivity.leastBusy 2021-11-26 12:07:43 +01:00
devicedownloadstate_test.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
devicedownloadstate.go all: Move remaining protos to use the vanity plugin (#7009) 2020-10-02 08:07:05 +02:00
doc.go all: Update license url to https (ref #3976) 2017-02-09 08:04:16 +01:00
fakeconns_test.go gui, lib: Fix tracking deleted locally-changed on encrypted (fixes #7715) (#7726) 2021-11-10 09:46:21 +01:00
folder_recvenc.go lib/model: Schedule pull after revert on recv-enc (#7892) 2021-08-17 09:24:10 +02:00
folder_recvonly_test.go lib: Get rid of buggy filesystem wrapping (#8257) 2022-04-10 20:55:05 +02:00
folder_recvonly.go all: Support syncing extended attributes (fixes #2698) (#8513) 2022-09-14 09:50:55 +02:00
folder_sendonly.go all: Support syncing extended attributes (fixes #2698) (#8513) 2022-09-14 09:50:55 +02:00
folder_sendrecv_test.go all: Support syncing extended attributes (fixes #2698) (#8513) 2022-09-14 09:50:55 +02:00
folder_sendrecv_unix.go all: Support syncing ownership (fixes #1329) (#8434) 2022-07-26 08:24:58 +02:00
folder_sendrecv_windows.go all: Support syncing ownership (fixes #1329) (#8434) 2022-07-26 08:24:58 +02:00
folder_sendrecv.go lib/model: Correctly set xattrs on temp files (fixes #8667) (#8670) 2022-11-11 11:49:15 +01:00
folder_summary.go gui: Add device sync status (fixes #7981) (#8401) 2022-07-26 10:15:19 +02:00
folder_test.go lib/model: Correctly set xattrs on temp files (fixes #8667) (#8670) 2022-11-11 11:49:15 +01:00
folder.go lib/model, lib/protocol: Fix file comparisons (fixes #8594) (#8603) 2022-10-16 17:04:28 +02:00
folderstate.go lib/model: Improve remoteFolderState reporting (fixes #8266) (#8283) 2022-04-22 08:42:20 +02:00
indexhandler.go all: Support syncing extended attributes (fixes #2698) (#8513) 2022-09-14 09:50:55 +02:00
model_test.go all: Support syncing extended attributes (fixes #2698) (#8513) 2022-09-14 09:50:55 +02:00
model.go gui, lib/connections: Let the backend decide whether connection is local (fixes #8686) (#8694) 2022-11-28 09:28:33 +01:00
progressemitter_test.go lib: Use counterfeiter to mock interfaces in tests (#7375) 2021-03-03 08:53:50 +01:00
progressemitter.go lib/config: Decouple VerifyConfiguration from Committer (#7939) 2021-11-22 08:45:29 +01:00
queue_test.go lib/model: Optimize jobQueue performance and memory use (#8023) 2021-10-29 20:20:46 +02:00
queue.go lib/model: Optimize jobQueue performance and memory use (#8023) 2021-10-29 20:20:46 +02:00
requests_test.go all: Fix various user-facing and non-user-facing typos (#8509) 2022-08-23 15:44:11 +02:00
sentdownloadstate.go all: Fix various user-facing and non-user-facing typos (#8509) 2022-08-23 15:44:11 +02:00
sharedpullerstate_test.go all: use T.TempDir to create temporary test directory (#8280) 2022-04-15 07:44:06 +04:00
sharedpullerstate.go all: Modernize error wrapping (#8491) 2022-08-16 10:01:49 +02:00
testos_test.go lib/fs: Properly handle case insensitive systems (fixes #1787, fixes #2739, fixes #5708) 2020-07-28 11:15:11 +02:00
testutils_test.go all: use T.TempDir to create temporary test directory (#8280) 2022-04-15 07:44:06 +04:00
util.go all: Modernize error wrapping (#8491) 2022-08-16 10:01:49 +02:00
utils_test.go all: Add build constants for runtime.GOOS comparisons (#8442) 2022-07-28 19:36:39 +02:00