Commit Graph

1492 Commits

Author SHA1 Message Date
Jakob Borg d9b0a73787 Forgot to check some errors 2014-09-20 15:31:15 +02:00
Jakob Borg 9c68be4d5e GET and POST /rest/ping as no-op (fixes #680) 2014-09-18 12:55:28 +02:00
Jakob Borg d7956dd495 /rest/version should return JSON (fixes #694) 2014-09-18 12:52:45 +02:00
Jakob Borg 37a473e7d6 /rest/errors should return an object (fixes #695) 2014-09-18 12:49:59 +02:00
Jakob Borg 0b1136ad82 Panic if http.Serve() returns an error 2014-09-18 11:46:20 +02:00
Jakob Borg 45af549897 Don't take down HTTP(S) server on connection errors (fixes #700) 2014-09-18 11:45:48 +02:00
Jakob Borg 55ea207a55 Merge branch 'new-tls'
* new-tls:
  Cleanups and tweaks
  Add redirection middleware
  Add DowngradingListener

Conflicts:
	auto/gui.files.go
2014-09-15 00:19:07 +02:00
Jakob Borg 6384d1e5a3 Cleanups and tweaks 2014-09-15 00:18:05 +02:00
Jakob Borg aba01cdace Print error on monitor restart failure 2014-09-14 23:19:28 +02:00
Jakob Borg 517b7a14b4 Merge branch 'pr/683'
* pr/683:
  Restart monitor as part of the upgrade process (fixes #682)
2014-09-14 23:18:48 +02:00
Jakob Borg 6471ba70e4 Merge pull request #686 from AudriusButkevicius/auth
Send the real hash as part of the config (fixes #681)
2014-09-14 10:50:17 +02:00
Audrius Butkevicius 3662decb8b Add redirection middleware 2014-09-13 22:10:55 +01:00
Audrius Butkevicius 583bcfb3c7 Add DowngradingListener
"Inspired" by https://github.com/BenLubar/Rnoadm/maybetls
but avoids pulling the whole game as a dependency, and has the API slightly changed,
as it makes no sense to have non-tcp TLS listeners.
2014-09-13 22:10:47 +01:00
Audrius Butkevicius c45e3fa4d5 Require username and password for authentication 2014-09-13 22:06:25 +01:00
Audrius Butkevicius 24cbcef620 Send the real hash as part of the config (fixes #681) 2014-09-13 21:52:20 +01:00
Audrius Butkevicius a5e3317e28 Restart monitor as part of the upgrade process (fixes #682) 2014-09-13 15:32:47 +01:00
Jakob Borg 5638c4ba87 Woops (fixup of previous) 2014-09-13 15:11:47 +02:00
Jakob Borg bf7a128142 Smarter limit on size of pull block queue 2014-09-13 10:57:36 +02:00
Jakob Borg db868ed29d Increase restart delay to 60s 2014-09-11 20:25:08 +02:00
Jakob Borg abbb001975 Typo in panic message (fixes ##662) 2014-09-11 18:42:42 +02:00
Jakob Borg 13602b6769 Make the restart on wakeup configurable 2014-09-10 22:24:53 +02:00
Jakob Borg 85dba25246 Add pause before restart after standby 2014-09-10 22:20:03 +02:00
Jakob Borg 9ff04ee3d8 Don't start when the config dir is not a dir 2014-09-10 10:36:05 +02:00
Jakob Borg 5537d53f9a Timestamp the panic log 2014-09-10 08:25:56 +02:00
Jakob Borg 50a4170541 Announce actual port when UPnP is disabled (fixes #657) 2014-09-10 08:22:38 +02:00
Jakob Borg 6e8272f78f Implement incoming rate limit (fixes #613) 2014-09-08 17:25:55 +02:00
Jakob Borg cbf73ef29e Align cleaning routine in time 2014-09-08 12:43:30 +02:00
Jakob Borg db6d3b495b Use persistent (leveldb) storage 2014-09-08 11:48:26 +02:00
Jakob Borg 2117d1d035 Tone down insignificant discovery error messages (ref #241) 2014-09-08 09:14:21 +02:00
Jakob Borg 64ffac5671 Update goleveldb (fixes #644, closes #648) 2014-09-07 14:18:00 +02:00
Jakob Borg f97c8222c7 Cleanup imports in previous 2014-09-07 14:08:49 +02:00
Audrius Butkevicius 4e608b116a Add session support (fixes #611) 2014-09-07 12:10:17 +01:00
Audrius Butkevicius 4b57821f52 Allow saving config from anywhere 2014-09-07 12:00:37 +01:00
Jakob Borg 84eb729bd4 Don't start the browser on restarts (fixes #636) 2014-09-06 07:35:30 +02:00
Jakob Borg 14aea365c5 Don't stop permanently on exit (fixes #637) 2014-09-06 07:28:57 +02:00
Audrius Butkevicius b445a7c4d3 Check if we had successfully acquired a UPnP mapping before (fixes #627) 2014-09-04 23:02:10 +01:00
Jakob Borg 33e9a88b56 Proper signal handling in monitor process 2014-09-04 23:31:22 +02:00
Jakob Borg 92c44c8abe Rework .stignore functionality (fixes #561) (...)
- Only one .stignore is supported, at the repo root
 - Negative patterns (!) are supported
 - Ignore patterns affect sent and received indexes, not only scanning
2014-09-04 22:30:42 +02:00
Jakob Borg a40217cf07 Trim dead bits of code 2014-09-04 22:07:59 +02:00
Jakob Borg e586fda5f2 Woops, close the right fd 2014-09-04 22:03:25 +02:00
Jakob Borg 5c7d977ae0 Use woff instead of ttf font 2014-09-04 08:47:23 +02:00
Jakob Borg dd3080e018 Copyright cleanup 2014-09-04 08:31:38 +02:00
Jakob Borg 5915e8e86a Don't trust mime.TypeByExtension for the easy stuff (fixes #598) 2014-09-04 08:26:12 +02:00
Jakob Borg 5235e82bda Limit number of open db files (fixes #587) 2014-09-02 14:47:36 +02:00
Jakob Borg 10f0713257 Use a monitor process to handle panics and restarts (fixes #586) 2014-09-02 13:24:41 +02:00
Jakob Borg e9c7970ea4 Only create assets map on demand 2014-09-02 13:07:33 +02:00
Jakob Borg de0b91d157 Show IPv6 GUI URL correctly 2014-09-01 20:04:22 +02:00
Jakob Borg 2e77e498f5 Use more compact base64 encoding for assets 2014-09-01 20:04:22 +02:00
Jakob Borg 2b536de37f Don't fake indexes for stopped repos 2014-09-01 17:48:39 +02:00
Jakob Borg 2ffa92ba1b Warn on startup for stopped repositories 2014-09-01 17:47:18 +02:00
Jakob Borg 6ecddd8388 Don't fail build on Solaris 2014-09-01 17:26:28 +02:00
Jakob Borg 6c09a77a97 Clean out index for nonexistent repositories (fixes #549) 2014-08-31 13:34:17 +02:00
Jakob Borg c326103e6e Add X-Syncthing-Version header to HTTP responses 2014-08-31 12:59:20 +02:00
Jakob Borg 1c41b0bc2f Document GOMAXPROCS instead of (useless) STDEADLOCKTIMEOUT 2014-08-28 15:29:49 +02:00
Jakob Borg aa827f3042 Fix language detection, never show untranslated strings (fixes #543) 2014-08-28 13:23:23 +02:00
Audrius Butkevicius f44f5964bb Set rescan interval on default repository (fixes #579) 2014-08-27 23:45:09 +01:00
Audrius Butkevicius 0abe4cefb4 Add routine for checking possible standby (fixes #565) 2014-08-27 22:42:59 +01:00
Audrius Butkevicius 84c6f147ad Add /rest/stats/node endpoint 2014-08-25 12:49:22 +01:00
Audrius Butkevicius 0cdb0daa8c Add stats package and node related statistics model 2014-08-25 12:49:21 +01:00
Audrius Butkevicius 8803bac708 Allow configuring GUI options from command line and environment (fixes #505, closes #507) 2014-08-24 16:55:35 +01:00
Audrius Butkevicius 716a8329c2 Do not warn about failed IPv6 discovery 2014-08-20 22:06:58 +01:00
Jakob Borg 6ea8e2525a Latest build badge should link to latest build 2014-08-20 12:22:23 +02:00
Audrius Butkevicius 997b20a975 Set Content-Type before sending out headers 2014-08-19 23:30:32 +01:00
Audrius Butkevicius cfae06db65 Flush headers before potentially blocking 2014-08-19 23:18:28 +01:00
Jakob Borg c57656e4c3 Do honest test coverage analysis in Jenkins 2014-08-19 12:43:50 +02:00
Jakob Borg 6bbf1f9355 Emit Node/Repo Rejected events on unknown nodes / repos. 2014-08-18 23:34:03 +02:00
Jakob Borg 4f92482294 build.sh -> build.go for better cross platform support 2014-08-18 21:39:35 +02:00
Jakob Borg d657bc4e3d Implement IPv6 multicast again (fixes #346) 2014-08-17 15:14:44 +02:00
Audrius Butkevicius 52219c5f3f Merge pull request #532 from AudriusButkevicius/config
Replace NodeConfiguration with RepositoryNodeConfiguration (Fixes #522)
2014-08-17 12:47:12 +01:00
Jakob Borg 1a66461e07 All printed warnings should have some context 2014-08-17 10:28:36 +02:00
Audrius Butkevicius 668b429615 Better error message
Closes #526
2014-08-17 00:03:41 +01:00
Audrius Butkevicius 7db528be39 Replace NodeConfiguration with RepositoryNodeConfiguration 2014-08-16 23:20:21 +01:00
Audrius Butkevicius e8a679c280 Advertise and update node names on cluster config exchange
Closes #244
2014-08-16 21:26:30 +01:00
Jakob Borg bc885f1d08 Don't attempt to create default repo before config (fixes #530)
We'll create it anyway a little later during startup, as part of the
general "check all repos for viability" step.
2014-08-16 22:22:33 +02:00
Jakob Borg dfef929187 Translation update, handle locales precisely 2014-08-14 17:04:17 +02:00
Jakob Borg 198da910ed Use new StopGlobal on the discovery when external port changes 2014-08-14 12:49:41 +02:00
Jakob Borg 5f1bf9d9d6 Merge branch 'master' into pr/511
* master: (21 commits)
  Mechanism to stop external announcement routine
  Update goleveldb
  Perfstats are not supported on Windows
  Build should fail if a platform does not build
  Include perfstats and heap profiles in standard build
  Actually no, lets not do uploads at all from the build script.
  ./build.sh upload build server artifacts
  Sign checksums, not files.
  Badges, add build server
  Remove Solaris build again, for now
  Travis should build with 1.3 + tip
  Translation update
  Indicate aproximativeness of repo sizes...
  Slightly more conservative guess on file size
  Fix set tests
  Small goleveldb hack to reduce allocations somewhat
  Don't load block lists from db unless necessary
  Rip out the Suppressor (maybe to be reintroduced)
  Reduce allocations while hash scanning
  Add heap profiling support
  ...

Conflicts:
	discover/discover.go
2014-08-14 12:48:33 +02:00
Audrius Butkevicius 7cc9921615 Restart port sequence when UPnP renewal fails 2014-08-13 22:42:58 +01:00
Jakob Borg 7555fe065e Perfstats are not supported on Windows 2014-08-13 22:31:56 +02:00
Audrius Butkevicius 870e3ca893 Rediscover gateway on UPnP renewal 2014-08-13 21:15:20 +01:00
Jakob Borg 213acaee3b Include perfstats and heap profiles in standard build 2014-08-13 14:39:47 +02:00
Jakob Borg 29296ec998 Link to build.syncthing.net instead 2014-08-13 13:52:53 +02:00
Audrius Butkevicius dc9df0a79a Reannounce renewed UPnP mapping 2014-08-12 23:29:29 +01:00
Jakob Borg 92eed3b33b Don't load block lists from db unless necessary 2014-08-12 15:04:32 +02:00
Jakob Borg 939dd5cb31 Add heap profiling support 2014-08-12 15:04:01 +02:00
Audrius Butkevicius 8976e53998 Add UPnP renewal 2014-08-11 23:10:24 +01:00
Jakob Borg 97dda6a4bb Correct the memory stats in perfstats-*.csv 2014-08-11 22:10:15 +02:00
Jakob Borg 9752ea9ac3 Implement external scan request (fixes #9) 2014-08-11 20:20:01 +02:00
Jakob Borg 528cbf62ec POST to /config should return an error when something bad happens (fixes #489) 2014-08-08 14:09:27 +02:00
Jakob Borg 28db264e90 Upgrade debugging, fix upgrade on ARM (fixes #482) 2014-08-07 15:57:20 +02:00
Jakob Borg 5651847877 Merge commit 'bc2bb22'
* commit 'bc2bb22':
  Add no-browser flag
2014-08-07 07:20:39 +02:00
Jakob Borg bb2ad77987 Never remove currently valid languages when updating translations 2014-08-06 14:56:32 +02:00
Jakob Borg 68b1ffec19 Fix translation in upgrading/restarting dialogs 2014-08-06 14:41:46 +02:00
Tully Robinson bc2bb22673 Add no-browser flag 2014-08-06 22:30:18 +10:00
Jakob Borg 8918de85fd Correct memory usage in anonymous report 2014-08-05 23:13:55 +02:00
Jakob Borg 5e237aecae Reflect memory returned to OS in RAM Utilization 2014-08-05 22:14:11 +02:00
Jakob Borg 4be6a54bc0 Hide build version behind plus character (fixes #473) 2014-08-05 19:38:31 +02:00
Jakob Borg 8ea1e302c3 Also expose ItemStarted events 2014-08-05 13:14:04 +02:00
Jakob Borg a8799efa94 Don't reuse existing indexes, yet (fixes #463) 2014-08-05 12:20:50 +02:00
Jakob Borg 9db75e91ac HTTP testing corrections 2014-08-05 09:38:38 +02:00
Jakob Borg f288e00c37 Actually show Node ID in QR (fixes #471) 2014-08-04 22:53:37 +02:00
Jakob Borg 06208a703a Implement -generate (fixes #459) 2014-08-03 09:41:08 +02:00
Jakob Borg bdd265a1b1 Link to linux binary 2014-08-02 09:03:38 +02:00
Jakob Borg 2c9df7aad1 Update import paths, calmh -> syncthing 2014-08-02 08:25:17 +02:00
Jakob Borg d65bbf2113 Allow GET requests without CSRF 2014-08-02 08:19:10 +02:00
Jakob Borg cec3bad373 Move calmh/syncthing -> syncthing/syncthing 2014-08-01 16:48:46 +02:00
Jakob Borg bbeddfe522 Extract github.com/calmh/xdr 2014-08-01 13:12:54 +02:00
Jakob Borg 28220310a5 Use a lock port to ensure parent has exited (fixes #450) 2014-07-31 21:29:44 +02:00
Jakob Borg 4e36dd2943 Refactor out upgrade package 2014-07-31 16:51:58 +02:00
Jakob Borg 13d77f1557 Remove dead code 2014-07-31 15:43:29 +02:00
Jakob Borg 32da1c8d58 Handle ElementSizeExceeded on nested structs 2014-07-31 15:21:33 +02:00
Jakob Borg 1fca248d4c Build status from drone.io 2014-07-31 12:37:18 +02:00
Jakob Borg c5c9ee92ac Rename pidx utility to stindex 2014-07-31 12:30:53 +02:00
Jakob Borg 7f1fcc9cfc Don't build all utility scripts as part of ./build.sh 2014-07-31 12:30:19 +02:00
Jakob Borg 144a881ae5 Fix build for upgrade-unsupported platforms 2014-07-31 11:47:00 +02:00
Jakob Borg 25f4fd5a19 Woops! Use our logger, not log 2014-07-31 10:33:47 +02:00
Jakob Borg 7b8c126aa1 Exit codes for -upgrade and -upgrade-check (fixes #194) 2014-07-31 10:32:19 +02:00
Jakob Borg 86b3ff3099 Better lang-en updates 2014-07-31 09:08:31 +02:00
Jakob Borg fa9df4dc5e Don't log a panic when there are no releases 2014-07-31 09:08:31 +02:00
Jakob Borg be15e48074 Remove discosrv (see https://github.com/syncthing/discosrv) 2014-07-30 22:18:02 +02:00
Jakob Borg 99081ea2a0 LICENSE & README 2014-07-30 22:15:16 +02:00
Jakob Borg f4d1632506 Better automatic translation update 2014-07-30 11:52:16 +02:00
Jakob Borg 8bfe4374de Archive indexes and config from v0.8 on upgrade 2014-07-30 11:45:55 +02:00
Jakob Borg 4afe02cb21 Implement almost full semver comparison (fixes #436) 2014-07-30 08:57:27 +02:00
Jakob Borg 115b967e5b Provide context in warnings, reduce severity of TLS handshake error (fixes #437) 2014-07-30 08:23:48 +02:00
Jakob Borg ea4524024a Verify certificate name 2014-07-30 07:59:22 +02:00
Jakob Borg bc6faaffc4 Add debug hook for completion, for integration tests 2014-07-29 13:01:27 +02:00
Jakob Borg e27d42935c Use event interface for GUI (fixes #383) 2014-07-29 11:06:52 +02:00
Jakob Borg 5b9469eed3 Might want to keep English as a valid language... 2014-07-28 15:17:43 +02:00
Jakob Borg 6805ac915b Ugly hack to automatically update translations. 2014-07-28 15:14:02 +02:00
Jakob Borg 67a3fb8bf2 Compression as a user option (fixes #446) 2014-07-28 12:44:46 +02:00
Jakob Borg 135e29a3bb Don't FATAL if a repo dir cannot be created (fixes #443) 2014-07-27 14:31:15 +02:00
Jakob Borg 3b65a58f59 Translation, language detection 2014-07-26 22:56:12 +02:00
Jakob Borg 87c3790fa8 Debug events module 2014-07-25 14:50:14 +02:00
Jakob Borg 6188185b22 Beta versions *should* upgrade to other beta version (ref #436) 2014-07-24 14:23:25 +02:00
Jakob Borg b676264fca Don't consider prereleases for -upgrade (fixes #436) 2014-07-24 12:55:41 +02:00
Jakob Borg 2aa4340551 Add performance stats collection 2014-07-24 09:56:53 +02:00
Jakob Borg 08ca9f9378 Consolidate cmds in cmd/ 2014-07-23 08:31:13 +02:00
Jakob Borg 3b4fe19dfb Use compiled in assets for those not in STGUIASSETS dir 2014-07-22 20:11:36 +02:00
Jakob Borg 28f2e8f24d Allow beta versions 2014-07-20 21:39:52 +02:00
Jakob Borg f692e3ac73 Basic GUI translation support.
Conflicts:
	gui/index.html
2014-07-20 13:49:26 +02:00
Jakob Borg 3388d5b49c Use backend service to verify nodeID (fixes #418) 2014-07-18 10:00:02 +02:00
Jakob Borg f88a7a8e6a Publish more event details 2014-07-17 13:47:46 +02:00
Jakob Borg 32a5e83612 Avoid buffering the entire file list during walks 2014-07-15 14:27:46 +02:00
Jakob Borg 8b349945de Add Local Version field to files, send index in segments. 2014-07-15 13:04:37 +02:00
Jakob Borg fccdd85cc1 Set TCP options on connections 2014-07-15 12:12:44 +02:00
Jakob Borg 39a691a7e6 Remove compression 2014-07-14 23:52:11 +02:00
Jakob Borg d812f559ef Upgrade from within GUI (fixes #190) 2014-07-14 12:42:29 +02:00
Jakob Borg 54a1f37bf5 stevents: Print raw JSON 2014-07-13 21:39:35 +02:00
Jakob Borg b0f46beffb Basic events interface 2014-07-13 21:07:24 +02:00
Jakob Borg 1f62247c7e New port number for new format global discovery 2014-07-13 09:36:22 +02:00
Jakob Borg 6415d1a6a5 Copyright wording 2014-07-13 01:07:49 +02:00
Jakob Borg 0a633c526f Copyright wording 2014-07-13 01:07:49 +02:00
Jakob Borg c64321df47 Portable new line converter 2014-07-12 19:49:25 +02:00
Jakob Borg b7ea695caf CSRF protection should only cover /rest 2014-07-06 15:00:44 +02:00
Jakob Borg 31350b4352 Use LevelDB storage backend 2014-07-06 14:46:48 +02:00
Jakob Borg ee10295d04 Remove martini, use standard http mux 2014-07-05 21:40:29 +02:00
Jakob Borg 3c4002e149 Merge branch 'v0.8'
* v0.8:
  Don't leak writer and index goroutines on close
  Clean up protocol locking and closing
  Send initial index in batches
  Always send initial index, even if empty (ref #344)
  Simplify locking in protocol.Index
  Protocol state machine on receiving side
  Log client version on connect
  Handle query parameters in UPnP control URL (fixes #211)
  Avoid deadlock during initial scan (fixes #389)
  Add temporary debug logging for #344 (revert later)
  Tone down UPnP not found message (fixes #406)
2014-07-04 15:16:41 +02:00
Jakob Borg 7ac00e189b Tone down UPnP not found message (fixes #406) 2014-07-01 17:06:07 +02:00
Jakob Borg 071f4c0769 Remove reprecated st* utils 2014-07-01 12:20:25 +02:00
Jakob Borg d7cc48eab2 Merge branch 'v0.8'
* v0.8:
  Increase deadlock timeout, make configurable (fixes #389, fixes #393)
  Remove spurious debug output in .stignore handling
  Connection notices are informational
  No need to hold a write lock in Override
  Don't whine about unexpected EOFs
  Ensure correct version string format

Conflicts:
	model/model.go
2014-06-30 01:47:32 +02:00
Jakob Borg 926b08c197 Refactor node ID handling, use check digits (fixes #269)
New node ID:s contain four Luhn check digits and are grouped
differently. Code uses NodeID type instead of string, so it's formatted
homogenously everywhere.
2014-06-30 01:42:03 +02:00
Jakob Borg 8f3effed32 Refactor node ID handling, use check digits (fixes #269)
New node ID:s contain four Luhn check digits and are grouped
differently. Code uses NodeID type instead of string, so it's formatted
homogenously everywhere.
2014-06-30 01:42:03 +02:00
Jakob Borg aff41d0b08 discosrv: Tunable limiter settings 2014-06-27 22:39:03 +02:00
Jakob Borg a2da31056b Increase deadlock timeout, make configurable (fixes #389, fixes #393) 2014-06-26 11:29:41 +02:00
Jakob Borg 68750211ef Connection notices are informational 2014-06-23 15:38:37 +02:00
Jakob Borg a6eb690e31 Ensure correct version string format 2014-06-23 10:40:09 +02:00
Jakob Borg 77fe8449ba Test script for REST interface 2014-06-22 18:18:21 +02:00
Jakob Borg 4ab4816556 Detect deadlock in model and panic 2014-06-21 12:35:53 +02:00
Jakob Borg efbdf72d20 Lower CPU usage at idle by reducing db polling 2014-06-20 00:28:45 +02:00
Jakob Borg b05fcbc9d7 Simplify usage reporting config options (fixes #370) 2014-06-18 12:54:30 +02:00
Jakob Borg d09c71b688 Avoid build error in Go1.2 2014-06-18 11:02:59 +02:00
Jakob Borg 874d6760d4 Handle .stignore correctly on Windows (fixes #369) 2014-06-16 16:19:14 +02:00
Jakob Borg 26ebbee877 Hard override on changes from master repo 2014-06-16 10:47:02 +02:00
Jakob Borg 12eda0449a Build and memSize impl for Solaris 2014-06-16 10:19:32 +02:00
Jakob Borg 5a98f4e47c Mark repos with missing dir as invalid on startup (fixes #311) 2014-06-16 09:33:52 +02:00
Jakob Borg 21b699826d Increase reconnect delay towards max 2014-06-15 20:32:26 +02:00
Jakob Borg 5fa8f8e50c Remove old index files on startup (fixes #366) 2014-06-15 20:31:26 +02:00
Jakob Borg 34bd5b9dcf Better android detection 2014-06-13 20:45:57 +02:00
Jakob Borg 58c5e46206 Add build environment variable 2014-06-13 20:44:00 +02:00
Jakob Borg 4c61ab0f18 Request restart for GUI setting changes 2014-06-13 20:25:10 +02:00
Jakob Borg 2ffdb5a82a Actually generate random certificate serials (fixes #361) 2014-06-13 01:49:30 +02:00
Jakob Borg 46e963443d Include system RAM size in usage report 2014-06-12 20:47:46 +02:00
Jakob Borg 3c6738da73 Limit damage of previous commit to ARM arch 2014-06-12 01:11:04 +02:00
Jakob Borg 18e5cb6793 Work around broken DNS on Android for usage reporting 2014-06-12 01:05:00 +02:00
Jakob Borg 9cd6b85c09 Remove dead code from previous commit 2014-06-11 22:29:49 +02:00
Jakob Borg f40f3b3b7b Anonymous Usage Reporting 2014-06-11 20:06:53 +02:00
Jakob Borg 7e04c9d048 Information about HTTP certificate issues 2014-06-10 15:40:21 +02:00
Jakob Borg 92499af323 Revert "Build for Solaris"
This reverts commit 5a2328d9a5.
2014-06-08 07:37:51 +02:00
Jakob Borg df381fd03f Let server side decide if restart is needed on config change 2014-06-07 04:00:46 +02:00
Jakob Borg 5a2328d9a5 Build for Solaris 2014-06-07 03:56:13 +02:00
Jakob Borg 1cff9ccc63 API key change should take effect on restart only 2014-06-05 09:16:12 +02:00
Jakob Borg 20a018db2e Implement API keys 2014-06-04 22:00:55 +02:00
Jakob Borg 80c2b32b92 Implement CSRF protection for REST interface (fixes #287) 2014-06-04 21:20:07 +02:00
Jakob Borg 3798cebad0 Configurable log prefixing (fixes #278) 2014-06-04 10:24:30 +02:00
Jakob Borg 5d9c968614 Add license header 2014-06-01 22:50:14 +02:00
Jakob Borg 843fd9bdbd Add license header 2014-06-01 22:50:14 +02:00
Jakob Borg c519e582b5 Expand tilde on Windows as well (fixes #289) 2014-05-26 16:58:03 +02:00
Jakob Borg 6b9dce36bf Default listen host should be 0.0.0.0 (again) (ref #216) 2014-05-26 15:01:04 +02:00
Jakob Borg 3d055bbb79 Simple file versioning (fixes #218) 2014-05-25 20:49:08 +02:00
Jakob Borg 4031f5e24b Fix version comparison in upgrade 2014-05-24 23:22:08 +02:00
Jakob Borg 1cd7cc6869 Configuration directory is machine local (Windows) 2014-05-24 22:45:50 +02:00
Jakob Borg c27861cbaf Show node ID/name/address mapping at startup (ref #249) 2014-05-24 21:39:08 +02:00
Jakob Borg 217f29de76 Don't mess up unset properties of new nodes/repos 2014-05-24 21:00:47 +02:00
Jakob Borg 8661afcb4f Expand ~/ on Windows as well 2014-05-24 13:34:40 +02:00
Jakob Borg 4af3f77a9a Wait for parent to release sockets (fixes #267, fixes #241) 2014-05-24 12:28:36 +02:00
Jakob Borg 963078f6ac Don't reuse certificate serials 2014-05-23 14:43:17 +02:00
Jakob Borg 8356b58b1d Implement IgnorePerms 2014-05-23 14:31:16 +02:00
Jakob Borg 04130fcb15 Allow GUI development with standard binary 2014-05-22 16:12:19 +02:00
Jakob Borg ae0193b724 Configurable local announcement port (fixes #256) 2014-05-22 09:35:54 +02:00
Jakob Borg c020cf05e1 Fix discosrv build, build as part of all (fixes #257) 2014-05-22 08:46:19 +02:00
Jakob Borg 2331089854 Correct list of debugging facilities 2014-05-21 20:36:21 +02:00
Jakob Borg 6fb05fc82a Add Edit > Show ID with QR (fixes #243) 2014-05-21 20:06:14 +02:00
Jakob Borg 7c8652b600 Implement HTTPS for GUI 2014-05-21 14:42:53 +02:00
Jakob Borg 230f149b4b Explain tilde in repo editor 2014-05-20 19:44:40 +02:00
Jakob Borg 95f5e5fa9a Don't deadlock while sending and receiving large indexes 2014-05-20 18:41:01 +02:00
Jakob Borg a8c510cc72 Find correct upgrade asset for arm (fixes #232) 2014-05-20 00:06:16 +02:00
Jakob Borg dba40eefb1 Fix handling of changed/deleted directories (fixes #231) 2014-05-19 22:31:28 +02:00
Jakob Borg 7d672fd989 Return an empty error list instead of null after clear 2014-05-17 13:55:10 +02:00
Jakob Borg 13022817d4 Add xdr level tracing 2014-05-17 08:43:01 +02:00
Jakob Borg 09d4b3f71e Log connection errors at INFO level (fixes #225) 2014-05-16 19:10:16 +02:00
Jakob Borg e22ddae3a8 Repair test suite 2014-05-15 09:09:21 -03:00
Jakob Borg 68afc897d6 Quote default flag parameters 2014-05-15 00:42:40 -03:00
Jakob Borg 3e34fc66e6 Refactor model into separate package 2014-05-15 00:33:40 -03:00
Jakob Borg f8e34c083e Refactor config into separate package 2014-05-14 21:18:09 -03:00
Jakob Borg cba554d0fa Refactor logging into separate package 2014-05-14 21:08:56 -03:00
Jakob Borg 81cd84add2 Merge pull request #216 from jedie/master
Change default ListenAddress to "0.0.0.0:22000"
2014-05-14 17:49:41 +02:00
Jens Diemer 8229d47da5 Update config_test.go 2014-05-14 17:43:49 +02:00
Jens Diemer 8f14d11d66 change default ListenAddress to "0.0.0.0:22000" 2014-05-14 17:43:23 +02:00
Jakob Borg 76f82cbd1f Make duplicate ID:s temporarily unique (fixes #153) 2014-05-14 07:58:33 -03:00
Jakob Borg 21335d65c4 Do initial repository scan in parallel (ref #210) 2014-05-13 20:42:12 -03:00
Veeti Paananen 85d5449b3c Return a blank array instead of null if there are no repositories
Fixes a bug where it's impossible to add repositories in the web
interface if none are defined.
2014-05-13 05:57:38 +03:00
Jakob Borg 532b576fd5 Expose discovery cache over rest interface 2014-05-12 22:08:55 -03:00
Jakob Borg dd1197236d Provide discovery hint from the outside (ref #192) 2014-05-12 21:51:12 -03:00
Jakob Borg e8a9abaf40 Empty directories are invalid (ref #188) 2014-05-12 21:30:04 -03:00
Jakob Borg 1bf07d6b58 Write response before shutting down 2014-05-12 21:15:18 -03:00
Jakob Borg 20b23338f7 Shutdown from GUI (ref #192) 2014-05-11 20:16:27 -03:00
Jakob Borg 0fcbee6478 Don't serialize deprecated config options 2014-05-11 20:13:22 -03:00
Jakob Borg 7a41362d90 Tagged date is that of the commit, not build 2014-05-11 17:26:48 -03:00
Jakob Borg 59e45c5c68 Auto assign ports for GUI and BEP on initial startup (fixes #176) 2014-05-11 15:21:41 -03:00
Jakob Borg 94761d0472 Don't warn about legit requests for deleted files (fixes #173) 2014-05-11 14:54:26 -03:00
Jakob Borg f39e105101 Stop repository if the directory disappears (fixes #154) 2014-05-04 18:22:59 +02:00
Jakob Borg 10e8861f14 Smarter initial index sending 2014-05-04 18:21:57 +02:00
Jakob Borg 28e347002a Revert "Streamline error handling and locking" (fixes #172)
This reverts commit 116f232f5a.
2014-05-04 08:11:06 +02:00
Jakob Borg 647165ab89 Remove dead code 2014-05-02 21:59:18 +02:00
Jakob Borg 6807d9bd4c Fix upgrade non-support on Windows 2014-05-02 20:19:21 +02:00
Jakob Borg 699ecc7140 Some places should use RLock instead of Lock (ref #169) 2014-05-02 17:15:04 +02:00
Jakob Borg b374ec9355 Save temporary in correct dir during upgrade 2014-05-02 17:04:45 +02:00
Andrew a455258a62 Fix typo in header name 2014-05-02 01:26:12 -07:00
Jakob Borg 33d75a264d Built in upgrade functionality 2014-05-02 10:01:09 +02:00
Jakob Borg 89dc5bb951 Windows doesn't have SysProcAttr 2014-05-02 08:57:34 +02:00
Jakob Borg ed476271a6 Start xdg-open in new process group (fixes #164) 2014-05-02 08:53:05 +02:00
Jakob Borg 1e92c47960 Don't bother starting without GUI (fixes #156) 2014-04-30 22:52:38 +02:00
Jakob Borg 4f2fe07ae4 Show node ID in regular text not disabled control (fixes #162) 2014-04-30 22:42:39 +02:00
Jakob Borg aff3cd01c5 Don't show Offline badge when global disco is disabled (fixes #167) 2014-04-30 22:17:43 +02:00
Jakob Borg ac74ee1468 Don't redirect to absolute URL (fixes #166) 2014-04-30 22:10:13 +02:00
Jakob Borg dcd7d278aa Handle and indicate duplicate repo ID:s (fixes #153) 2014-04-27 21:53:27 +02:00
Jakob Borg 89f5f3bf9a Fix small data races 2014-04-27 21:33:57 +02:00
Jakob Borg 116f232f5a Streamline error handling and locking 2014-04-27 13:10:50 +02:00
Jakob Borg ef81a36654 Extract method closeFile 2014-04-27 12:14:53 +02:00
Jakob Borg 9fd2724d73 Simplify requestSlots filling 2014-04-27 12:06:11 +02:00
Jakob Borg 07d49b61d0 Debug utility to print index file 2014-04-25 08:28:56 +02:00
Jakob Borg 0c4e6ae7de Safety: don't start if repo dir is missing (ref #154) 2014-04-24 10:27:43 +02:00
Jakob Borg 65ec129dfb Only create default config if it is actually missing (fixes #139) 2014-04-23 10:28:36 +02:00
Jakob Borg 3e4d628f54 Handle non-word characters in repo name (fixes #152) 2014-04-23 10:04:25 +02:00
Jakob Borg 71684bfa45 Use a more lenient cluster config check (fixes #148) 2014-04-22 16:42:25 +02:00
Jakob Borg 35ebdc76ff Hide temporary files on Windows (fixes #146) 2014-04-22 14:27:31 +02:00
Jakob Borg 90d0896848 Change default config directory (fixes #145) 2014-04-22 14:27:09 +02:00
Jakob Borg 5528db9693 Fix config test (hostname check) 2014-04-22 12:06:32 +02:00
Jakob Borg d53b193e09 Ensure sensible node config on load (fixes #143) 2014-04-22 11:46:08 +02:00
Jakob Borg 09e8d85b1e discosrv: Better statistics 2014-04-19 23:14:56 +02:00
Jakob Borg 4d3eb134a2 discosrv: Remove deprecated v1 support 2014-04-19 23:02:14 +02:00
Jakob Borg 9349eb77cd Let absence of password be absence 2014-04-19 22:36:24 +02:00
Jakob Borg c64549471a Include build user and host in long version 2014-04-19 16:44:28 +02:00
Jakob Borg 264bcbc78c Always print long version at startup 2014-04-19 16:40:19 +02:00
Jakob Borg f76fe1ac7a Include build date in -version output 2014-04-19 16:38:11 +02:00
Jakob Borg 6364c4ff3f Save bcrypt hash of password (fixes #138) 2014-04-19 13:33:51 +02:00
Jakob Borg 292a50de04 Use pseudo-random high port for UPnP mapping 2014-04-18 14:09:54 +02:00
Jakob Borg a08cba9c85 Config option to enable/disable UPnP 2014-04-18 13:39:51 +02:00
Jakob Borg 9fb60d6935 UPnP Port Mapping (fixes #79) 2014-04-18 13:28:51 +02:00
Jakob Borg b802cb1e36 Show status of global announce server (fixes #71) 2014-04-16 17:36:09 +02:00
Jakob Borg 31bfd8c039 Decouple local from global announcing (fixes #132) 2014-04-16 16:49:01 +02:00
Jakob Borg f72ee7a69e Set name of first node to the local hostname (fixes #121) 2014-04-16 16:35:29 +02:00
Jakob Borg a98d75edaa Clear acknowledged errors server-side as well (fixes #128) 2014-04-16 16:30:49 +02:00
Jakob Borg 622568c327 Handle static addresses without port (fixes #131) 2014-04-16 15:28:45 +02:00
Jakob Borg b92df85893 discosrv: Clean up debug logging 2014-04-16 15:06:54 +02:00
Jakob Borg bc8e033eb5 Fix deadlock asshattery that snuck in somehow 2014-04-14 13:01:21 +02:00
Jakob Borg 70fa5ffa06 Add STCPUPROFILE env 2014-04-14 12:13:50 +02:00
Jakob Borg fb162ff529 More up to date CPU usage indicator 2014-04-14 12:02:40 +02:00
Jakob Borg 48bfc2d9ed Show current repository state (fixes #89) 2014-04-14 09:58:17 +02:00
Jakob Borg 5064f846fc New Cluster Configuration message replaces Options (fixes #63) 2014-04-13 15:28:26 +02:00
Jakob Borg c42a6b511c Return repo-specific data in REST interface 2014-04-09 22:03:30 +02:00
Jakob Borg 536613f008 Fix config tests after deprecating options 2014-04-08 21:36:03 +02:00
Jakob Borg c832fc7d1b Check entire node list for matches on connect 2014-04-08 21:32:58 +02:00
Jakob Borg 0b654581b6 Do not crash on TLS connection without certificate 2014-04-08 21:31:23 +02:00
Jakob Borg cbae64fc06 GUI Basic Authentication (fixes #90) 2014-04-08 15:56:12 +02:00
Jakob Borg 3b3c0c5950 Configuration version 2 (nodes separate from repos) 2014-04-08 13:45:18 +02:00
Jakob Borg ee0ee0e39d Remove deprected .ini format reader 2014-04-06 21:48:39 +02:00
Jakob Borg 8dee10ba9c Remove followSymlinks option (ref #92) 2014-04-06 21:44:17 +02:00
Jakob Borg 545025ed2b discosrv: Remove duplicate logging of limiter cache entries 2014-04-04 12:00:52 +02:00
Jakob Borg 3158962506 discosrv: Source based rate limiting 2014-04-03 23:40:10 +02:00
Jakob Borg c314f74de6 discosrv: Refactor handler loop 2014-04-03 23:40:03 +02:00
Jakob Borg d30a286f38 Command line flag and REST command to reset and resync (fixes #85)
Still needs implemention in GUI
2014-04-03 22:10:51 +02:00
Jakob Borg 15699a39cf Synchronize directory existence & metadata (fixes #11) 2014-04-02 11:57:18 +02:00
Jakob Borg a1f32095df Rate limit sent data, not uncompressed 2014-04-01 20:36:54 +02:00
Jakob Borg 76e0960a51 Streamline rate limiting 2014-04-01 14:22:38 +02:00
Jakob Borg fc8ce7c6e0 Include build env info in -version 2014-03-31 06:51:01 +02:00
Jakob Borg aaf0604601 Remove pointless -v option 2014-03-31 06:47:08 +02:00
Jakob Borg dbe12cca4b Give the default repository an ID (fixes #106) 2014-03-30 23:11:55 +02:00
Jakob Borg ddf0ddbd05 Repair model tests 2014-03-30 21:59:40 +02:00
Jakob Borg 5eb5a056bf Basic support for synchronizing multiple repositories (fixes #35) 2014-03-30 21:28:13 +02:00
Jakob Borg 1139ea2c81 Expose a bit more information about needed file in REST interface 2014-03-29 14:58:44 +01:00
Jakob Borg f87b1520e8 The Great Rewrite (fixes #36, #61, #94, #101)
Rewrite of the file model and pulling mechanism. Needs lots of cleanup
and bugfixes, now...
2014-03-29 13:47:21 +01:00
Jakob Borg 17a21102b3 Normalize asset paths (fixes #103) 2014-03-26 21:09:53 +01:00
Philippe Schommers f4c6cd1676 Set cache control on /rest/* (fixes #95)
Disable caching for all /rest/* requests.
2014-03-26 20:32:35 +01:00
Jakob Borg 589244f39e Prevent zombie connections due to simultaneous connect 2014-03-23 08:53:34 +01:00
Jakob Borg 68d9454bc4 Enforce correct filename normalization (fixes #96) 2014-03-21 09:09:01 +01:00
Jakob Borg 8db1bf9732 Fix local announce (IPv6 multicast, include all listen addresses) 2014-03-19 13:57:19 +01:00
Jakob Borg 222272b75c Faster and more portable assets generator 2014-03-17 22:56:07 +01:00
Jakob Borg 2df78a9313 Reimplement quick startup scan 2014-03-16 08:14:55 +01:00
Jakob Borg d2d32f26c7 Don't count deleted files in synced bytes (fixes #88) 2014-03-14 11:12:34 +01:00
Jakob Borg 880f417ae3 Add CPU usage reporting on Solaris 2014-03-12 10:15:00 +01:00
Jakob Borg 043fa7f489 Add environment variable to inhibit restart 2014-03-12 10:12:35 +01:00
Jakob Borg 9ec7de643e Refactor profiler startup / logging 2014-03-09 09:18:28 +01:00
Jakob Borg 2553ba0463 Discover & main tracing 2014-03-09 09:15:36 +01:00
Jakob Borg 52ee7d5724 Discovery tracing 2014-03-09 08:58:03 +01:00
Jakob Borg d4ef6a6285 Document env vars, start profiler based on STPROFILER 2014-03-09 08:48:29 +01:00
Jakob Borg 56b7d3c28d Don't start browser on restart 2014-03-09 08:35:53 +01:00
Jakob Borg ae94b726a7 Don't expose a -delay paramater 2014-03-09 08:35:38 +01:00
Jakob Borg a88e4db1ee Option to not start browser (fixes #84) 2014-03-08 23:19:33 +01:00
Jakob Borg 1448cfe66a Refactor out file scanner into separate package 2014-03-08 23:02:01 +01:00
Jakob Borg d6c9afd07f Fix handling of default values in config (fixes #83) 2014-03-04 22:29:48 +01:00
Jakob Borg 799f55e7ae Add basic config tests 2014-03-04 22:17:39 +01:00
Philippe Schommers d06204959e Fix isTempName to work on Windows (fixes #80)
```path.Base()``` is for slash-separated paths, whereas Windows uses "\" to separate paths. Just convert the \ to / and it works.
2014-03-04 18:48:03 +01:00
filoozom 6a1c055288 Delete comment in config.go 2014-03-04 15:02:26 +01:00
filoozom b9ec30ebdb Update config.go 2014-03-04 11:29:51 +01:00
filoozom 428164f395 Update config.go to handle default slices correctly 2014-03-04 11:25:10 +01:00
Jakob Borg 5d8f0f835e Merge branch 'filoozom-patch-1'
* filoozom-patch-1:
  Fix divided by zero when the sync folder is empty (tot = 0)
  Delete cfgFile before renaming it on Windows
  Set the right config and home dir for each OS
  Update getHomeDir() to use "os/user"
2014-03-03 14:06:15 +01:00
Jakob Borg 9743386166 Re-add inadvertently ignored files 2014-03-02 23:58:24 +01:00
Jakob Borg 65615385e7 Rework XDR encoding 2014-02-20 17:42:17 +01:00
Jakob Borg 727f35b35b discosrv: Expire nodes, reduce debug logging 2014-02-17 09:23:37 +01:00
Jakob Borg 07ddf7e87b External discover 2013-12-22 21:35:05 -05:00