Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | lib: Simplify initializing flows | Sander Vrijders | 2017-08-01 | 6 | -331/+89 |
| | | | | | This refactors dev.c to have a common function called init_flow that is called whenever a flow is allocated in dev.c | ||||
* | Merged in dstaesse/ouroboros/be-fixes (pull request #537) | dimitri staessens | 2017-07-30 | 5 | -48/+64 |
|\ | | | | | | | Be fixes | ||||
| * | ipcpd: Fix registration bug in DHT | dimitri staessens | 2017-07-29 | 1 | -2/+2 |
| | | |||||
| * | ipcpd: Add multithreading to scheduler | dimitri staessens | 2017-07-29 | 2 | -26/+44 |
| | | | | | | | | | | | | | | | | The scheduler in the normal IPCP is now multithreaded. While useful in itself for scalability, it currently solves thread starvation in case of executing post_sdu operations that may require a response. This could be further revised in the future to split the SDU handling threads from the component tasks. | ||||
| * | ipcpd: Cleanup sdb after unpacked | dimitri staessens | 2017-07-29 | 1 | -6/+3 |
| | | |||||
| * | ipcpd: Harmonize logs in directory | dimitri staessens | 2017-07-29 | 1 | -1/+5 |
| | | |||||
| * | ipcpd: Some fixes in DHT | dimitri staessens | 2017-07-29 | 1 | -13/+10 |
|/ | | | | | | | Fixes a memory leak when the DHT is destroyed during a send_msg. Fixes a deadlock when destroying the DHT with a pending lookup. Removes some debug logs that clutter output due to expected redundant FIND_VALUE responses. | ||||
* | Merged in dstaesse/ouroboros/be-tpm (pull request #536) | dimitri staessens | 2017-07-26 | 7 | -360/+365 |
|\ | | | | | | | lib: Add threadpool manager | ||||
| * | lib: Add threadpool manager | dimitri staessens | 2017-07-26 | 7 | -360/+365 |
| | | | | | | | | | | | | | | | | This adds a threadpool manager component in the library that is used in the IRMd and IPCPs. The threadpool manager now doesn't detach threads but does a join when they exit. This solves a data race in the previous implementation where some threads were not completely finished upon release of some resources. | ||||
* | | Merged in dstaesse/ouroboros/be-dht-retry (pull request #535) | dimitri staessens | 2017-07-24 | 1 | -4/+16 |
|\| | | | | | | | ipcpd: Retry sending DHT response messages | ||||
| * | ipcpd: Retry sending DHT response messages | dimitri staessens | 2017-07-24 | 1 | -4/+16 |
|/ | | | | | | | This will make the remote retry sending responses when the DT component can't send the message. This is most useful at enrollment, when the remote's routing table may need to wait a bit on the routing component for a path to the new member, | ||||
* | Merge branch 'testing' into be | Sander Vrijders | 2017-07-20 | 1 | -8/+11 |
|\ | |||||
| * | Merged in dstaesse/ouroboros/testing-cdap-destroy (pull request #534) | dimitri staessens | 2017-07-20 | 1 | -8/+11 |
| |\ | | | | | | | | | | lib: Fix destruction of CDAP instances | ||||
| | * | lib: Fix destruction of CDAP instances | dimitri staessens | 2017-07-20 | 1 | -8/+11 |
| | | | | | | | | | | | | | | | | | | | | | The received message list was not correctly freed upon destruction of the CDAP object. There was also still a rare case in which thread cancellation would keep a lock, blocking the IPCP shutdown, which is also fixed. | ||||
* | | | Merge branch 'testing' into be | Sander Vrijders | 2017-07-20 | 1 | -7/+19 |
|\| | | |||||
| * | | Merged in dstaesse/ouroboros/testing-cdap (pull request #533) | dimitri staessens | 2017-07-20 | 1 | -7/+19 |
| |\| | | | | | | | | | | lib: Fix processing state in CDAP | ||||
| | * | lib: Fix processing state in CDAP | dimitri staessens | 2017-07-20 | 1 | -7/+19 |
| |/ | | | | | | | | | | | The processing state was not correctly reset at all points in the loop, causing CDAP to block the IPCP on shutdown in some cases. This also adds a missing unlock and reorders some other unlocks. | ||||
* | | Merged in dstaesse/ouroboros/be-dht-lookup (pull request #532) | dimitri staessens | 2017-07-20 | 1 | -20/+25 |
|\ \ | | | | | | | | | | ipcpd: Fix DHT lookup processing | ||||
| * | | ipcpd: Fix DHT lookup processing | dimitri staessens | 2017-07-20 | 1 | -20/+25 |
|/ / | | | | | | | | | Not all returned contacts were processed when a FIND_NODE or FIND_VALUE message was returned. | ||||
* | | Merged in sandervrijders/ouroboros/be-ipcp-select (pull request #531) | Sander Vrijders | 2017-07-18 | 1 | -1/+1 |
|\ \ | | | | | | | | | | irmd: Fix order of IPCPs | ||||
| * | | irmd: Fix order of IPCPs | Sander Vrijders | 2017-07-18 | 1 | -1/+1 |
|/ / | | | | | | | | | This fixes the order of the IPCPs in the IRMd, so that the right type is queried first on flow allocation. | ||||
* | | Merged in dstaesse/ouroboros/be-dht (pull request #529) | dimitri staessens | 2017-07-18 | 17 | -163/+2745 |
|\ \ | |/ |/| | | | ipcpd: Add DHT as directory in normal IPCP | ||||
| * | ipcpd: Add DHT as directory in normal IPCP | dimitri staessens | 2017-07-18 | 17 | -163/+2745 |
| | | | | | | | | | | | | | | | | | | This implements a Distributed Hash Table (DHT) based on the Kademlia protocol, with default parameters set as used in the BitTorrent Mainline DHT. This initial implementation is almost feature complete, except for some things to be done after a testing period: caching and stale peer bumping, and setting the expiration timeout via the IRM tool. | ||||
* | | Merged in dstaesse/ouroboros/be-fixes (pull request #530)0.5 | dimitri staessens | 2017-07-18 | 2 | -64/+82 |
|\ \ | |/ |/| | | | Be fixes | ||||
| * | lib: Wait for fqueue loop at cdap_del_flow | dimitri staessens | 2017-07-16 | 1 | -62/+80 |
| | | | | | | | | | | | | | | The enrollment calls dealloc immediately after cdap_del_flow(), but the CDAP instance may still have that fd in its fqueue loop. cdap_del_flow will now wait for an fqueue loop to end before returning, to make sure the flow is not needed anymore. | ||||
| * | ipcpd: Log exit status before log_fini() | dimitri staessens | 2017-07-16 | 1 | -2/+2 |
|/ | |||||
* | Merged in sandervrijders/ouroboros/be-hash (pull request #528) | Sander Vrijders | 2017-07-12 | 8 | -51/+69 |
|\ | | | | | | | | | | | ipcpd, lib, irmd: Hardcode shim hash algorithms Approved-by: dimitri staessens <dimitri.staessens@ugent.be> | ||||
| * | ipcpd, lib, irmd: Hardcode shim hash algorithms | Sander Vrijders | 2017-07-12 | 8 | -51/+69 |
|/ | | | | | | | This will hardcode the shim hash algorithms as they don't have an enrollment phase. Fixes #44 | ||||
* | Merged in dstaesse/ouroboros/be-irmd-shutdown (pull request #527) | dimitri staessens | 2017-07-12 | 3 | -13/+31 |
|\ | | | | | | | irmd: Shutdown sanitizer without cancellation | ||||
| * | irmd: Shutdown sanitizer without cancellation | dimitri staessens | 2017-07-12 | 3 | -13/+31 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-fixes (pull request #526) | dimitri staessens | 2017-07-12 | 4 | -22/+19 |
|\| | | | | | | | Be fixes | ||||
| * | ipcpd: Shutdown shim-udp without cancellation | dimitri staessens | 2017-07-12 | 1 | -17/+14 |
| | | |||||
| * | ipcpd: Check connmgr acceptor thread at create | dimitri staessens | 2017-07-12 | 1 | -1/+2 |
| | | |||||
| * | lib: Fix formatting in irm.c | dimitri staessens | 2017-07-12 | 1 | -2/+1 |
| | | |||||
| * | lib: Make read_msg static in cacep.c | dimitri staessens | 2017-07-12 | 1 | -2/+2 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-list (pull request #525) | dimitri staessens | 2017-07-12 | 1 | -1/+2 |
|\| | | | | | | | include: Use offsetof in list.h | ||||
| * | include: Use offsetof in list.h | dimitri staessens | 2017-07-12 | 1 | -1/+2 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-fmt (pull request #524) | dimitri staessens | 2017-07-10 | 2 | -11/+14 |
|\| | | | | | | | include: Fix formatting in list.h | ||||
| * | include: Fix formatting in list.h | dimitri staessens | 2017-07-09 | 2 | -11/+14 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-rng (pull request #523) | dimitri staessens | 2017-07-09 | 3 | -5/+113 |
|\| | | | | | | | Be rng | ||||
| * | lib: Add secure random generator | dimitri staessens | 2017-07-09 | 3 | -5/+113 |
| | | | | | | | | | | This adds a secure random number generator. It will use OS specific calls with a fallback to OpenSSL if available. | ||||
* | | Merged in dstaesse/ouroboros/be-time (pull request #522) | dimitri staessens | 2017-07-09 | 3 | -6/+173 |
|\| | | | | | | | lib: Fix bug and add test for time_utils | ||||
| * | lib: Fix bug and add test for time_utils | dimitri staessens | 2017-07-05 | 3 | -6/+173 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-cdap-req (pull request #521) | dimitri staessens | 2017-07-04 | 1 | -2/+13 |
|\| | | | | | | | lib: Handle errors when creating cdap_req structs | ||||
| * | lib: Handle errors when creating cdap_req structs | dimitri staessens | 2017-07-04 | 1 | -2/+13 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-lib (pull request #520) | dimitri staessens | 2017-07-03 | 1 | -0/+3 |
|\| | | | | | | | lib: Fix memleak in FRCT enrollment | ||||
| * | lib: Fix memleak in FRCT enrollment | dimitri staessens | 2017-07-03 | 1 | -0/+3 |
|/ | |||||
* | Merged in sandervrijders/ouroboros/be-qos (pull request #517) | Sander Vrijders | 2017-06-21 | 20 | -68/+298 |
|\ | | | | | | | lib, ipcpd, irmd: Add full-fledged QoS | ||||
| * | lib, ipcpd, irmd: Add full-fledged QoS | Sander Vrijders | 2017-06-21 | 20 | -68/+298 |
|/ | | | | | | | This adds more Quality of Service support to Ouroboros. One part is the network specific characteristics such as bandwidth, delay, ... The other part is end-to-end QoS like reliability, window based flow control, ... | ||||
* | Merged in dstaesse/ouroboros/be-dev-include (pull request #519) | dimitri staessens | 2017-06-21 | 1 | -8/+8 |
|\ | | | | | | | lib: include missing headers in dev.c |