| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds the following CMake targets
- package
- source
to build bundeled packages. Those packages contain either all built
binary artifacts or all source files for source code distribution. Both
CMake targets are available in Release build configuration.
|
|
|
|
|
| |
The afl-fuzz support for the dnbd3-server requires an AFL C compiler
like afl-gcc and can be enabled with the CMake option DNBD3_SERVER_AFL.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This change restructures the source code directories, separates shared
form non-shared application code and adds CMake dependencies. These
dependencies allow the tracking of changes and trigger a rebuild of
those build targets where changed files are involved.
WARNING: Note that the support of the DNBD3_SERVER_AFL build option is
not supported yet. Thus, the option should be never turned on.
|
| |
|
| |
|
|
|
|
|
| |
Still needs some cleanup and optimizations, variable naming sucks,
comments, etc.
|
| |
|
|
|
|
| |
Added new query type q=version, which uses the STATS access rights.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to POSIX, a signal sent to a PID can be delivered to an
arbitrary thread of that process that hasn't the signal blocked. This
seens to never happen on Linux, but would mess things up since the code
expected the main signal handler to only be executed by the main thread.
This should now be fixed by examining the destination PID of the signal
as well as the ID of the thread currently running the signal handler. If
we notice the signal wasn't sent by our own PID and the handler is not
currently run by the main thread, we re-send the signal to the main
thread. Otherwise, if the signal was sent by our own PID but the handler
is not run in the main thread, do nothing. This way we can use
pthread_kill() to wake up threads that might be stuck in a blocking
syscall when it's time to shut down.
|
|
|
|
| |
To be used by "close unused fd" checks, and others...
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Alt-Server checks are now run using the threadpool, so we don't need a
queue and dedicated thread anymore. The rtt history is now kept per
uplink, so many uplinks won't overwhelm the history, making its time
window very short.
Also the fail counter is now split up; a global one for when the server
actually isn't reachable, a local (per-uplink) one for when the server
is reachable but doesn't serve the requested image.
|
|
|
|
|
|
| |
Lock order is predefined in locks.h. Immediately bail out if a lock with
lower priority is obtained while the same thread already holds one with
higher priority.
|
|
|
|
|
|
|
| |
Most config settings can now be changed at runtime
using SIGHUP. This currently excludes the basePath,
listenPort, and the client and image count limits,
as well as vmdkLegacyMode.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The cacheFd is now moved to the uplink data structure and will
only be handled by the uplink thread.
The integrity checker now supports checking all blocks of an
image. This will be triggered automatically whenever a check for
a single block failed.
Also, if a crc check on startup fails, the image won't be discarded
anymore, but rather a full check will be initiated.
Furthermore, when calling image_updateCacheMap() on an image that
was previously complete, the cache map will now be re-initialized,
and a new uplink connection created.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This could have been an external tool, but this didn't add much code
and has the benefit of honoring the config file for port and bind address.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
AFL is an instrumenting fuzzer.
It expects to pass input to the program to be tested
via command line (file name) or via stdin. This adds
support for reading messages that normally would arrive
via network directly from stdin. In this mode, the server
is pretty useless otherwise.
http://lcamtuf.coredump.cx/afl/
|
| |
|
|
|
|
| |
conversion problems
|
|
|
|
|
| |
Introduces new shared source unit timing.[ch]
Closes #3214
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
So you can cancel image loading on startup via Ctrl-C
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
The server used to reload all images on the main thread, which is
also responsible for accepting connections. While reloading the list,
no new connections were accepted, which lead to clients marking the
server as bad during their RTT measurements, then switching away from it.
|
| |
|
| |
|
| |
|
|
|
|
| |
delay feature
|
|
|
|
|
|
| |
- Added message type parameter
- Log to file and stdout, no more logging in memory
- Added options to server.conf to filter which messages show up where
|
| |
|
| |
|
| |
|
|
|
|
| |
function names
|