summaryrefslogtreecommitdiffstats
path: root/src/shared
Commit message (Collapse)AuthorAgeFilesLines
* [SERVER] Use monotonic clock for measuring timeSimon Rettberg2017-10-192-0/+160
| | | | | Introduces new shared source unit timing.[ch] Closes #3214
* [*] Support hop-counting in request header, protocol version 3Simon Rettberg2017-10-171-1/+7
| | | | | | | | | | | | | | We steal 8 bits from the request offset to count hops when requests get relayed by proxies. This still leaves plenty of bits for the offset (56 bits, supporting images of up to 72 petabytes). This is used to detect proxy cycles. The algorithm is not perfect but should prevent endless relays of the same request. This is backwards compatible to old clients and servers, as the server only ever sets the hopcount in relayed requests if the upstream server is using protocol version 3 or newer, and clients are automatically upwards compatible as there is practically no image larger than 74PB, so the newly introduced hop count field is always 0 even in requests from old clients.
* [*] constness for sock_sendAll paramsSimon Rettberg2017-10-012-3/+3
|
* [SERVER] Fix formattingSimon Rettberg2016-03-221-1/+1
|
* dnbd3server build success on freebsd :)Sebastian2016-02-111-3/+6
|
* cleanup commitsSebastian2016-02-113-8/+1Star
|
* [SHARED] signal.h -> fdsignal.hSimon Rettberg2016-02-105-6/+6
|
* dfskljgdslkfsdklgjSimon Rettberg2016-02-051-3/+3
|
* [SHARED] Fix linux detection on clangSimon Rettberg2016-02-051-4/+4
|
* [SHARED] Implement pipe() based signallingSimon Rettberg2016-02-054-71/+261
|
* First steps in make signals more abstract from the underlying mechanism; ↵Simon Rettberg2016-02-052-21/+52
| | | | | | | | | | replace epoll with poll. We now don't assume that a signal equals a single fd (eventfd on Linux). The next step would be to create a version of signal.c that uses a pipe internally, so it can be used on other platforms, like *BSD. This is also the reason epoll was replaced with poll in uplink.c
* [SERVER] BREAKING: Get rid of pseudo case-insensitivityv2.1Simon Rettberg2016-02-011-2/+2
| | | | | | | | | | This was a wrong decision made long time ago, and it's broken in certain scenarios (eg. two servers serving from same NFS mount). Also it's of limited use anyways since it only supportes ASCII and would ignore umlauts, so blöd and BLÖD would still be considered two different images. So if you relied on this "feature" in any way, be careful when updating.
* [SERVER] Fix a lot of (mostly harmless) data racesSimon Rettberg2016-01-112-4/+4
|
* [SERVER] Remove non-working images from list, plus refactoringSimon Rettberg2015-12-151-1/+1
| | | | | | | | | | Now that we can automatically load unknown images from disk on request, it makes sense to remove non-working images from the image list. On future requests, we will look for them on disk again, which is nice in case of temporary storage hickups. Also, some more ore less related locking has been refined (loading images, replicating images)
* [FUSE] Add virtual status fileSimon Rettberg2015-12-022-4/+39
|
* [FUSE] Stability improvements, runs for longer than a couple secs now :)Simon Rettberg2015-12-013-27/+43
|
* [FUSE] It works! Kinda...Simon Rettberg2015-11-303-5/+18
|
* [FUSE] Compiles againSimon Rettberg2015-11-303-4/+242
|
* [FUSE] Mid-refactoring, does not compileSimon Rettberg2015-11-243-1/+380
|
* [FUSE] Start refactoring so we can handle multithread fuseSimon Rettberg2015-11-213-0/+239