Jakob Borg
73c5184518
build: Update all dependencies ( #7968 )
...
Also add a script step for how to do this, as frankly I forget each time
what the canonical way is.
`go run build.go update-deps`
2021-09-26 12:08:23 +02:00
Simon Frei
ac2988a485
gui, lib: Handle pw adding remote encrypted folder ( fixes #7705 ) ( #7772 )
2021-06-17 13:53:02 +02:00
Simon Frei
52eb7392c4
lib/api, lib/config: Apply defaults before deserializing json ( #7690 )
2021-06-03 15:09:35 +02:00
Simon Frei
0126188ba7
lib/config: Set DisableTempIndexes to true on receive-encrypted ( #7701 )
2021-05-20 22:33:23 +02:00
Simon Frei
5bdb6798a9
all: Regenerate proto ( #7696 )
2021-05-19 13:30:20 +02:00
greatroar
3746c899b7
build: List go:generate tools in tools.go ( #7599 )
2021-05-08 12:52:06 +02:00
Jakob Borg
74823e81e9
all: Deprecate TLS 1.2 on sync connections ( fixes #7594 ) ( #7598 )
...
This makes us use TLS 1.3+ on sync connections by default. A new option
`insecureAllowOldTLSVersions` exists to allow communication with TLS
1.2-only clients (roughly Syncthing 1.2.2 and older). Even with that
option set you get a slightly simplified setup, with the cipher suite
order fixed instead of auto detected.
2021-04-26 10:04:35 +02:00
Simon Frei
3938b61c3f
lib/fs: Expose fs option on interface ( fixes #7385 , ref #7381 ) ( #7389 )
2021-03-11 15:23:56 +01:00
Jakob Borg
cdef503db6
all: Make config.Wrapper an actual suture.Service ( fixes #7451 ) ( #7452 )
2021-03-11 14:51:00 +01:00
Simon Frei
3d91f7c975
lib: Use counterfeiter to mock interfaces in tests ( #7375 )
2021-03-03 08:53:50 +01:00
Simon Frei
fff8805ff6
all: Fix versioning path handling ( #7407 )
2021-02-26 12:04:05 +01:00
Simon Frei
aa1c274231
lib/fs: Consider options in case-fs caching ( fixes #7371 ) ( #7381 )
2021-02-19 11:06:25 +01:00
Simon Frei
80fc238bec
all: Automatic/disabled folder-config when receive-encrypted ( #7327 )
2021-02-12 22:51:29 +01:00
Jakob Borg
55afa625fc
cmd/syncthing: Add decrypt subcommand ( #7332 )
...
This adds the `syncthing decrypt` subcommand that is used to
(offline-)decrypt or just verify the contents of an encrypted folder.
2021-02-12 08:38:43 +01:00
Simon Frei
ffc14a77c6
all: Add configurable defaults ( fixes #4224 , fixes #6086 ) ( #7131 )
2021-02-04 21:10:41 +01:00
Simon Frei
e19d6e993d
lib/fs: Cache all real-case results ( fixes #7270 ) ( #7286 )
2021-01-27 19:25:34 +01:00
Simon Frei
f63cdbfcfa
lib: Apply config changes sequentially (ref #5298 ) ( #7188 )
2021-01-15 15:43:34 +01:00
Jakob Borg
0b193b76c2
lib/config, lib/connections: Add optional connection limits ( fixes #7176 ) ( #7223 )
...
This adds two new configuration options:
// The number of connections at which we stop trying to connect to more
// devices, zero meaning no limit. Does not affect incoming connections.
ConnectionLimitEnough int
// The maximum number of connections which we will allow in total, zero
// meaning no limit. Affects incoming connections and prevents
// attempting outgoing connections.
ConnectionLimitMax int
These can be used to limit the number of concurrent connections in
various ways.
2021-01-11 15:14:44 +01:00
Simon Frei
739e99c4d9
lib/config: Remove deprecated pending entries from config (ref #6443 ) ( #7204 )
2020-12-17 22:49:29 +01:00
André Colomb
7502997e7e
all: Store pending devices and folders in database ( fixes #7178 ) ( #6443 )
2020-12-17 19:54:31 +01:00
Simon Frei
0db3b7a530
build: Switch to gopsutil's v3 module ( #7191 )
2020-12-10 16:43:15 +01:00
Simon Frei
24af89c8e2
all: Refactor preparing configuration ( #7127 )
2020-11-20 14:21:54 +01:00
Simon Frei
e8fc465ea8
lib/config: Use correct var in MaxConcurrentIncomingRequestKiB() ( #7121 )
2020-11-16 16:51:51 +01:00
Rahmi Pruitt
2f6a25a56f
gui: Add advance config port mapping to gui ( fixes #4824 ) ( #7017 )
2020-11-10 09:24:11 +01:00
Simon Frei
31559e908b
all: Add untrusted folders behind feature flag (ref #62 ) ( #7055 )
2020-11-09 15:33:32 +01:00
Simon Frei
d0ccea0404
lib/config: Sanity checks on MaxConcurrentWrites (ref #7064 ) ( #7069 )
2020-11-03 19:09:32 +01:00
Tomasz Wilczyński
4a616f3cb2
lib/config: Check for "msdos" when detecting FAT FS in Android ( #7072 )
2020-10-30 15:13:56 +01:00
Simon Frei
f0f60ba2e7
lib/api: Add /rest/config endpoint ( fixes #6540 ) ( #7001 )
2020-10-22 19:54:35 +02:00
Simon Frei
48da6f0f22
lib: Use uint64 for disk stats (ref #3930 ) ( #7019 )
2020-10-02 15:22:28 +02:00
Audrius Butkevicius
e027175446
all: Move remaining protos to use the vanity plugin ( #7009 )
2020-10-02 08:07:05 +02:00
Jakob Borg
7774932302
lib/config, lib/syncthing: Only drop delta index on upgrade if so ordered ( fixes #6982 ) ( #6983 )
2020-09-30 20:16:30 +02:00
Audrius Butkevicius
b19b5c95d3
lib/connections: Announce LAN addresses by default ( fixes #6928 ) ( #6896 )
2020-08-25 11:48:14 +02:00
Audrius Butkevicius
d507d932b8
all: Use protobuf to generate config structs ( fixes #6734 ) ( #6900 )
2020-08-25 08:11:14 +02:00
Simon Frei
fc2c46e82f
lib/config, lib/fs: Make junction behaviour configurable (ref #6606 ) ( #6907 )
2020-08-19 19:58:51 +02:00
Audrius Butkevicius
bf9ff17267
all: Remove need to restart syncthing ( #6883 )
2020-08-18 09:26:33 +02:00
Jakob Borg
62cff26edf
lib/config: Repair versioning XML serialization ( fixes #6859 , ref #6693 )
2020-07-28 12:08:37 +02:00
Simon Frei and Jakob Borg
932d8c69de
lib/fs: Properly handle case insensitive systems ( fixes #1787 , fixes #2739 , fixes #5708 )
...
With this change we emulate a case sensitive filesystem on top of
insensitive filesystems. This means we correctly pick up case-only renames
and throw a case conflict error when there would be multiple files differing
only in case.
This safety check has a small performance hit (about 20% more filesystem
operations when scanning for changes). The new advanced folder option
`caseSensitiveFS` can be used to disable the safety checks, retaining the
previous behavior on systems known to be fully case sensitive.
Co-authored-by: Jakob Borg <jakob@kastelo.net >
2020-07-28 11:15:11 +02:00
Jakob Borg
aedc2d788f
lib/model, lib/versioner: Drive version cleanup from scanner ( fixes #6313 ) ( #6693 )
...
This change adds a separate config for the cleanup interval, and runs that cleanup from the main folder loop.
2020-07-14 10:48:50 +02:00
Simon Frei
8d67235a75
lib/config: Don't cache device map ( fixes #6816 ) ( #6817 )
2020-07-07 23:44:49 +02:00
Audrius Butkevicius
4812fd3ec1
all: Add copy-on-write filesystem support ( fixes #4271 ) ( #6746 )
2020-06-18 08:15:47 +02:00
Jonathan and Audrius Butkevicius
9ef17322be
lib/config: Add missing quic address in case of non-default port ( fixes #6679 ) ( #6703 )
...
* Add quic listener on instance of port blockage
* Update lib/config/config.go
Co-authored-by: Audrius Butkevicius <audrius.butkevicius@gmail.com >
2020-06-02 15:06:02 +01:00
Jędrzej Kula
28d5c84599
gui, lib/config: Add GUI user and password notification ( fixes #4703 ) ( #6536 )
2020-06-02 12:08:22 +02:00
Jakob Borg
bfc9478965
cmd/syncthing: Correct auto upgrade criteria ( fixes #6701 ) ( #6702 )
2020-06-02 11:38:39 +02:00
Simon Frei
b784f5b9e3
lib/config, lib/model: Commit auto-accepted folders all at once ( #6684 )
2020-05-27 08:05:26 +02:00
Audrius Butkevicius
6201eebc98
lib/model: Add support for different puller block ordering ( #6587 )
...
* WIP
* Tests
* Header and format
* WIP
* Fix tests
* Goland you disappoint me
* Remove CC storage
* Update blockpullreorderer.go
2020-05-11 22:44:04 +01:00
Audrius Butkevicius
782bd08aad
lib/model: Add option to disable fsync ( #6588 )
...
* lib/model: Add option to disable fsync
* Fix test
* Dont open stuff for no reason
2020-05-01 08:36:46 +01:00
Jakob Borg
8c61e0d6ab
lib/config: Sort versioning options on marshal ( fixes #6576 ) ( #6577 )
2020-04-27 00:13:35 +02:00
Jakob Borg
6c73617974
lib/model: Use semaphore to limit concurrent folder writes ( fixes #6541 ) ( #6573 )
2020-04-27 00:13:18 +02:00
Jakob Borg
48f9d323fa
lib/api: Add LDAP search filters ( fixes #5376 ) ( #6488 )
...
This adds the functionality to run a user search with a filter for LDAP
authentication. The search is done after successful bind, as the binding
user. The typical use case is to limit authentication to users who are
member of a group or under a certain OU. For example, to only match
users in the "Syncthing" group in otherwise default Active Directory
set up for example.com:
<searchBaseDN>CN=Users,DC=example,DC=com</searchBaseDN>
<searchFilter>(&(sAMAccountName=%s)(memberOf=CN=Syncthing,CN=Users,DC=example,DC=com))</searchFilter>
The search filter is an "and" of two criteria (with the ampersand being
XML quoted),
- "(sAMAccountName=%s)" matches the user logging in
- "(memberOf=CN=Syncthing,CN=Users,DC=example,DC=com)" matches members
of the group in question.
Authentication will only proceed if the search filter matches precisely
one user.
2020-04-04 11:33:43 +02:00
Jakob Borg
80107d5f5e
lib/config: Correct spelling of address in LDAP config ( #6420 )
...
Literally noone uses this so I don't see a need to call this out or
trigger a 1.5 release for it.
2020-03-18 10:44:00 +00:00