Jakob Borg
429cc20eb7
cmd/syncthing: Add some common security releated HTTP headers ( fixes #4360 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4361
2017-09-10 08:28:12 +00:00
Audrius Butkevicius
e85ce7c94e
lib/model: Support removing paused folders ( fixes #4357 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4358
LGTM: imsodin, calmh
2017-09-09 15:08:59 +00:00
Jakob Borg
283c8d95e2
lib/protocol: Comment typo
2017-09-08 15:25:14 +02:00
wangguoliang
a9aa375109
lib/fs: Comment typo
...
Skip-check: authors
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4354
2017-09-07 09:40:46 +00:00
Simon Frei
f7d2c58783
lib/model: Deduplicate folder loops
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4352
LGTM: AudriusButkevicius, calmh
2017-09-07 06:17:47 +00:00
Jakob Borg
4d3e0de4ba
cmd/syncthing, lib/sha256: Skip CPU benchmarks when user decided ( fixes #4348 )
...
When STHASHING is set, don't benchmark as it's already decided. If weak
hashing isn't set to "auto", don't benchmark that either.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4349
2017-09-06 06:55:47 +00:00
Simon Frei
9dbc509996
lib/ignore: Consistent behaviour for nil *Matcher
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4310
2017-09-06 06:39:18 +00:00
Jakob Borg
baec3f909c
gui, man: Update docs & translations
2017-09-06 07:45:19 +02:00
Simon Frei
c41aaad3bb
lib/ignore: Ignore duplicate lines in .stignore
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4350
LGTM: AudriusButkevicius, calmh
2017-09-04 12:46:19 +00:00
Jakob Borg
9682bbfbda
lib/protocol: Optimize luhn and chunk functions
...
These functions were very naive and slow. We haven't done much about
them because they pretty much don't matter at all for Syncthing
performance. They are however called very often in the discovery server
and these optimizations have a huge effect on the CPU load on the
public discovery servers.
The code isn't exactly obvious, but we have good test coverage on all
these functions.
benchmark old ns/op new ns/op delta
BenchmarkLuhnify-8 12458 1045 -91.61%
BenchmarkUnluhnify-8 12598 1074 -91.47%
BenchmarkChunkify-8 10792 104 -99.04%
benchmark old allocs new allocs delta
BenchmarkLuhnify-8 18 1 -94.44%
BenchmarkUnluhnify-8 18 1 -94.44%
BenchmarkChunkify-8 44 2 -95.45%
benchmark old bytes new bytes delta
BenchmarkLuhnify-8 1278 64 -94.99%
BenchmarkUnluhnify-8 1278 64 -94.99%
BenchmarkChunkify-8 42552 128 -99.70%
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4346
2017-09-03 10:26:12 +00:00
Audrius Butkevicius
9e6a1fdcd4
vendor: Update kcp, removes closeConn ( fixes #4343 )
2017-09-02 16:11:48 +02:00
Jakob Borg
49bddfbe53
cmd/syncthing: Add test for truncate behavior of log file (ref #4255 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4342
2017-09-02 06:56:35 +00:00
Simon Frei
55e0ac3e24
lib/model: Make puller retrying and logging less aggressive
...
Currently all errors during pulling and the first of these errors again on
finishing are logged to info. Besides that the errors logged when finishing
are stored in f.errors. This PR moves all logging during pulling to the debug
channel (they might still be relevant in some obscure debugging case) and
uses the stored errors to log the main error per fail when all pulling
iterations are done and failed.
Additional instead of trying 11 times it now only tries 3 times.
This is the first part of what is discussed here:
https://forum.syncthing.net/t/reduce-verboseness-of-puller/10261
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4338
2017-09-02 06:05:55 +00:00
Audrius Butkevicius
cbcc3ea132
lib/connections: Use our own fork of kcp ( fixes #4063 )
...
This updates kcp and uses our own fork which:
1. Keys sessions not just by remote address, but by remote address +
conversation id 2. Allows not to close connections that were passed directly
to the library. 3. Resets cache key if the session gets terminated.
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4339
LGTM: calmh
2017-09-02 06:04:35 +00:00
Audrius Butkevicius
ab132ff6fe
lib: Folder marker is now a folder
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4341
LGTM: calmh
2017-09-02 05:52:38 +00:00
Jakob Borg
19e52a10df
readme: Update badges for new build server
2017-09-01 14:23:17 +02:00
Jakob Borg
a8145e187f
lib/model: Fixup because I suck and shouldn't commit directly to master
2017-08-31 10:49:17 +02:00
Jakob Borg
e33fa10115
lib/model: Use same batch size constants in db updater as for protocol
2017-08-31 10:47:39 +02:00
Jakob Borg
4b6e7e7867
lib/tlsutil: Remove undesired bufio from UnionedConnection (ref #4245 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4335
2017-08-31 07:34:48 +00:00
Jakob Borg
70d121a94b
cmd/strelaysrv: Smaller, adjustable network buffer
2017-08-30 18:52:28 +02:00
Jakob Borg
33ffb07d31
cmd/strelaysrv: Don't leak tickers
2017-08-30 18:46:50 +02:00
Jakob Borg
7aaa92ac47
cmd/strelaysrv: Add profiling support, default disabled
2017-08-30 16:07:15 +02:00
Jakob Borg
5883eb9a25
gui, man: Update docs & translations
2017-08-30 10:50:19 +02:00
MaximAL
e60efa2b3d
gui: Correct quotes in title attribute
...
Skip-check: authors
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4332
2017-08-30 06:02:46 +00:00
Simon Frei
ddf6d64faa
lib/model: Create folders via newFolder
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4329
2017-08-25 19:47:01 +00:00
Simon Frei
c7221b035d
gui: Round down in devices completion (consistent with folders)
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4325
2017-08-24 04:26:12 +00:00
Audrius Butkevicius
a69ba18f62
lib/model: Some platforms do not support usage checks ( fixes #4321 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4322
2017-08-22 18:13:58 +00:00
Jakob Borg
b31611a8d1
gui, man: Update docs & translations
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4320
2017-08-22 09:00:52 +00:00
Simon Frei
0ca0e3e9bd
lib/model: GetIgnores: Don't return error for no .stignore file
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4311
2017-08-22 06:48:25 +00:00
Audrius Butkevicius
0a96a1150b
lib/model, lib/ignores: Properly handle out of folder ignores and free space checks ( fixes #4313 , fixes #4314 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4318
2017-08-22 06:45:00 +00:00
Audrius Butkevicius
b8c249cddc
lib/model: Move stale scan check info finisher (ref #4305 , fix #3742 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4317
2017-08-22 06:42:09 +00:00
Audrius Butkevicius
e8ba6d4771
lib/upnp: Fix build
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4316
2017-08-21 11:41:40 +00:00
Audrius Butkevicius
606fce09ca
lib/upnp: Disable confusing messages
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4312
2017-08-21 10:03:25 +00:00
Audrius Butkevicius
3d8b4a42b7
all: Convert folders to use filesystem abstraction
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4228
2017-08-19 14:36:56 +00:00
Simon Frei
ab8c2fb5c7
lib/model: Fix race in GetIgnores ( fixes #4300 )
...
In addition this function returned an error when .stignore file was not
present, which is perfectly valid. Also removed inconsistent nil check in
ignores.go (only relevant for tests) and adjusted walk.go to do what it says
in comments (check if Matcher is nil) to prevent nil deref in tests.
Originally reported in:
https://forum.syncthing.net/t/reason-for-panic-maybe-too-little-ram/10346
Regression from #3996
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4301
2017-08-12 17:10:43 +00:00
Simon Frei
77578e8aac
gui: Don't set default path editing existing folders without label ( fixes #4297 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4298
LGTM: calmh
2017-08-10 15:31:25 +00:00
Jakob Borg
1fc2ab444b
lib/model: Remove ineffective symlink recovery attempt
2017-08-08 15:30:28 +02:00
Jakob Borg
fa5c890ff6
lib/versioner: Clean the versions dir of symlinks, not the full folder
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4289
2017-08-08 13:13:08 +00:00
Jakob Borg
a3c17f8f81
lib/model: Disable symlink attack test on Windows
2017-08-08 08:05:24 +02:00
Jakob Borg
f1f21bf220
lib/model, lib/versioner: Prevent symlink attack via versioning ( fixes #4286 )
...
Prior to this, the following is possible:
- Create a symlink "foo -> /somewhere", it gets synced
- Delete "foo", it gets versioned
- Create "foo/bar", it gets synced
- Delete "foo/bar", it gets versioned in "/somewhere/bar"
With this change, versioners should never version symlinks.
2017-08-07 07:57:10 +02:00
MaximAL
54155cb42d
gui: Add title attributes for shared devices/folders
...
Skip-check: authors
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4266
LGTM: AudriusButkevicius
2017-07-27 17:31:14 +00:00
Jakob Borg
414c58174b
build: Move -installsuffix behind an explicit option ( fixes #4272 )
2017-07-27 12:55:07 +02:00
Audrius Butkevicius
94acc20dd6
cmd/strelaysrv: Fix a few connection and routine leaks ( fixes #4245 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4273
2017-07-26 19:18:00 +00:00
NoLooseEnds
8e9119eedf
assets: Add Mac folder icon
...
Skip-check: authors
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4238
2017-07-20 13:23:54 +00:00
Simon Frei
a04b92332f
gui, lib/config: Add default path for new folders ( fixes #2157 )
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4192
2017-07-20 13:16:54 +00:00
HairyFotr
0ad10b0fee
all: Typos
...
Skip-check: authors
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4263
2017-07-20 13:10:46 +00:00
Ross Smith II
0ca2ed7ad7
build: Use maximum compression when archiving
...
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4229
2017-07-17 13:20:13 +00:00
Jakob Borg
fa4226cae4
authors: Add rasa
2017-07-17 15:06:47 +02:00
Jakob Borg
cc63236a2e
build: Use Go's default GOPATH if it's valid
...
As of Go 1.8 it's valid to not have a GOPATH set. We ask the Go tool
what the GOPATH seems to be, and if we find ourselves (or a valid copy
of ourselves...) in that location we do not fiddle with the GOPATH.
2017-07-16 21:39:29 +01:00
Jakob Borg
6623657ef3
build: The default build step already includes linting
2017-07-15 17:06:22 +02:00