Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | ipcpd: Fix memleak in ribmgr | dimitri staessens | 2016-12-28 | 1 | -0/+12 |
| | |||||
* | ipcpd: Wait for operational state to start fmgr | dimitri staessens | 2016-12-28 | 2 | -18/+10 |
| | | | | | | The main thread will wait for the IPCP_OPERATIONAL state before starting the fmgr main thread by calling fmgr_init(), instead of the fmgr itself waiting for that state. | ||||
* | ipcpd: Rename normal/path to normal/pathname | dimitri staessens | 2016-12-28 | 7 | -9/+9 |
| | |||||
* | Merged in dstaesse/ouroboros/be-qoscube (pull request #329) | Sander Vrijders | 2016-12-28 | 17 | -357/+373 |
|\ | | | | | | | Some fixes | ||||
| * | irmd: Hide reg_entry internal lock | dimitri staessens | 2016-12-28 | 3 | -84/+97 |
| | | |||||
| * | lib: Fix race in destruction of cdap_req | dimitri staessens | 2016-12-28 | 2 | -10/+18 |
| | | | | | | | | | | If cdap_req_destroy was called while in REQ_DONE, cdap->state would be accessed in cdap_req_respond. | ||||
| * | lib: Fix leaks in cdap | dimitri staessens | 2016-12-28 | 1 | -14/+19 |
| | | | | | | | | | | Fixes a memleak of cdap_req structs and correcly releases invoke_ids if the cdap_request_send operation fails during its execution. | ||||
| * | include, lib: Report communication failure with the IRMd | dimitri staessens | 2016-12-28 | 5 | -50/+44 |
| | | | | | | | | | | | | | | An errno EIRMD has been added to errno.h to indicate failure to send a message tot the IRMd. The IRM tool will report such errors, which makes it easier for users to detect that the IRM was not started or has failed. | ||||
| * | lib: Fix memleak in irm.c | dimitri staessens | 2016-12-27 | 1 | -1/+3 |
| | | |||||
| * | ipcpd: Hide the IPCP mainloop | dimitri staessens | 2016-12-27 | 2 | -171/+169 |
| | | | | | | | | | | | | Since the mainloop threadpool is created on ipcp_init and all threads waited for on ipcp_fini, there is no need for it to be accessible from elsewhere. | ||||
| * | ipcpd: Simplify ipcp_wait_state implementation | dimitri staessens | 2016-12-27 | 1 | -11/+7 |
| | | |||||
| * | ipcpd: Use qoscube_t instead of enum qos_cube | dimitri staessens | 2016-12-27 | 4 | -23/+23 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-flat (pull request #328) | Sander Vrijders | 2016-12-25 | 2 | -7/+23 |
|\| | | | | | | | Some fixes | ||||
| * | ipcpd: Check for duplicate RO in flat addr policy | dimitri staessens | 2016-12-25 | 1 | -0/+11 |
| | | |||||
| * | lib: Fix shutdown in multithreaded programs | dimitri staessens | 2016-12-24 | 1 | -6/+6 |
| | | | | | | | | | | If a thread with a pending flow terminates, ap_fini would wait for the condvar to destroy the flow indefinitely. | ||||
| * | lib: Initialise qos cube to best effort | dimitri staessens | 2016-12-24 | 1 | -0/+2 |
| | | | | | | | | | | The QoS cubes were not initialized in dev.c, which sometimes caused segfaults in the fmgr when calling ipcp_flow_get_qoscube. | ||||
| * | ipcpd: Use high resolution seed for flat policy | dimitri staessens | 2016-12-24 | 1 | -1/+4 |
|/ | | | | | This avoids normal ipcps using the flat address policy having a high probability for picking the same address when created from a script. | ||||
* | Merged in dstaesse/ouroboros/be-normal (pull request #327) | Sander Vrijders | 2016-12-24 | 1 | -0/+2 |
|\ | | | | | | | ipcpd: Fix missing return in ribmgr | ||||
| * | ipcpd: Fix missing return in ribmgr | dimitri staessens | 2016-12-24 | 1 | -0/+2 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-license (pull request #326) | Sander Vrijders | 2016-12-24 | 137 | -487/+708 |
|\ \ | | | | | | | | | | ouroboros: Correct license statements | ||||
| * | | ouroboros: Correct license statements | dimitri staessens | 2016-12-24 | 137 | -487/+708 |
| |/ | | | | | | | | | This corrects the license statements on all files. Installed headers are LGPLv2.1, the rest of the code is GPLv2. | ||||
* | | Merged in dstaesse/ouroboros/be-normal (pull request #325) | Sander Vrijders | 2016-12-24 | 18 | -791/+849 |
|\| | | | | | | | Be normal | ||||
| * | ipcpd, lib, irmd: Update to use qoscube_t | dimitri staessens | 2016-12-24 | 6 | -29/+30 |
| | | |||||
| * | ipcpd, lib: Refactor normal ipcp and cdap | dimitri staessens | 2016-12-24 | 11 | -760/+814 |
| | | | | | | | | | | Refactors the normal IPCP fmgr and ribmgr, and modifies the API for cdap so that no callbacks are needed. | ||||
| * | logs: Print process id's to stdout | dimitri staessens | 2016-12-24 | 1 | -2/+5 |
| | | |||||
* | | Merged in sandervrijders/ouroboros/be-pff (pull request #324) | dimitri staessens | 2016-12-21 | 9 | -0/+581 |
|\| | | | | | | | lib, ipcpd: Add hashtable and PDU Forwarding Function | ||||
| * | lib, ipcpd: Add hashtable and PDU Forwarding Function | Sander Vrijders | 2016-12-21 | 9 | -0/+581 |
|/ | | | | | | | This adds a hash table that takes 64-bit integers as key and uses separate chaining on collision. It also adds the PDU Forwarding Function, which the Flow Manager can use to lookup the fd towards the next hop. Routing policies will add/update/remove entries in the PFF. | ||||
* | Merged in dstaesse/ouroboros/be-timeout (pull request #323) | Sander Vrijders | 2016-12-12 | 18 | -214/+261 |
|\ | | | | | | | Be timeout | ||||
| * | src, tools: Set/get timeout and get qos for flows | dimitri staessens | 2016-12-12 | 16 | -198/+251 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Receiver timeouts can now be set on a flow using the flow_set_timeout function. Specifying NULL disables the timeout. The flow_get_timeout function gets the value for the timeout. This commit also deprecates fcntl in favor of flow_get_flags and flow_set_flags functions. struct qos_spec is typedef'd as a qosspec_t. The tools and cdap.c are updated to use the new API. Fixes a bug in operf client where the client's writer thread wouldn't cancel on SIGINT. | ||||
| * | lib: Fix indentation in shm_rdrbuff.c | dimitri staessens | 2016-12-12 | 1 | -4/+4 |
| | | |||||
| * | lib: Simplify shm_rbuff_read_b | dimitri staessens | 2016-12-12 | 1 | -12/+6 |
|/ | |||||
* | Merged in dstaesse/ouroboros/be-cbr (pull request #322) | Sander Vrijders | 2016-12-10 | 2 | -5/+39 |
|\ | | | | | | | tools: Shut down cbr gracefully | ||||
| * | tools: Shut down cbr gracefully | dimitri staessens | 2016-12-10 | 2 | -5/+39 |
|/ | | | | | | | Adds a simple cleanup handler that avoids abrupt termination during an sdu_write call, which potentially locks up the entire system due to the writes in the rdrbuff and rbuff not being handled as a single transaction. | ||||
* | Merged in dstaesse/ouroboros/be-bsd (pull request #321) | Sander Vrijders | 2016-12-08 | 2 | -2/+22 |
|\ | | | | | | | irmd, ipcp: Call select on FreeBSD | ||||
| * | irmd, ipcp: Call select on FreeBSD | dimitri staessens | 2016-12-08 | 2 | -2/+22 |
| | | | | | | | | | | | | *BSD accept() doesn't timeout on the timeval set by setsockopt SO_RCVTIMEO. The irmd and ipcp will now call select on the irmd fd with the same timeout. | ||||
* | | Merged in sandervrijders/ouroboros/be-operational-state (pull request #319) | dimitri staessens | 2016-12-06 | 8 | -27/+26 |
|\ \ | | | | | | | | | | ipcpd: Change IPCP_RUNNING to IPCP_OPERATIONAL | ||||
| * | | ipcpd: Change IPCP_RUNNING to IPCP_OPERATIONAL | Sander Vrijders | 2016-12-06 | 8 | -27/+26 |
| |/ | | | | | | | Changes a state of the IPCP to a more correct terminology. | ||||
* | | Merged in sandervrijders/ouroboros/be-fix-normal-shutdown (pull request #320) | dimitri staessens | 2016-12-06 | 4 | -17/+19 |
|\ \ | |/ |/| | | | ipcpd: normal: Fix errors on IPCP shutdown | ||||
| * | ipcpd: normal: Fix errors on IPCP shutdown | Sander Vrijders | 2016-12-06 | 4 | -17/+19 |
|/ | | | | | This fixes several bad cleanups in the normal IPCP when it is shutting down. | ||||
* | Merged in dstaesse/ouroboros/be-bind (pull request #318) | Sander Vrijders | 2016-12-06 | 6 | -5/+21 |
|\ | | | | | | | Be bind | ||||
| * | tools: Fix issues in irm bind/unbind | dimitri staessens | 2016-12-06 | 5 | -4/+9 |
| | | | | | | | | | | Fixes a segmentation fault in irm unbind api when no pid is specified and improves the help information for bind/unbind. | ||||
| * | tools: Allow binding AP specifying relative path | dimitri staessens | 2016-12-05 | 1 | -1/+12 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-32bit (pull request #317) | Sander Vrijders | 2016-12-03 | 3 | -5/+5 |
|\| | | | | | | | ipcpd, tools: Fix compilation on 32 bit linux | ||||
| * | ipcpd, tools: Fix compilation on 32 bit linux | dimitri staessens | 2016-12-03 | 3 | -5/+5 |
| | | | | | | | | | | Fixes issues with uint64_t not corresponding with unsigned long in printf statements. Reorganises a calculation to reduce overflows. | ||||
* | | Merged in dstaesse/ouroboros/be-logs (pull request #316) | Sander Vrijders | 2016-12-03 | 5 | -273/+123 |
|\| | | | | | | | lib: Remove logs from stable sources | ||||
| * | lib: Remove logs from stable sources | dimitri staessens | 2016-12-03 | 5 | -273/+123 |
| | | | | | | | | | | This removes log output in applications and some size_t printf errors when compiling on 32 bit machines. | ||||
* | | Merged in dstaesse/ouroboros/be-pi (pull request #315) | Sander Vrijders | 2016-12-02 | 3 | -9/+10 |
|\| | | | | | | | tools: Fix compilation issues on 32 bit machines | ||||
| * | tools: Fix compilation issues on 32 bit machines | dimitri staessens | 2016-12-02 | 3 | -9/+10 |
|/ | | | | | | size_t is 32 bits on those machines, failing as an argument to printf. Some variables in oping and operf were changed to uint32_t and uint64_t to avoid issues. | ||||
* | Merged in sandervrijders/ouroboros/be-normal-dir (pull request #314) | dimitri staessens | 2016-12-02 | 15 | -95/+421 |
|\ | | | | | | | ipcpd: normal: Provide directory for registered names | ||||
| * | ipcpd: normal: Provide directory for registered names | Sander Vrijders | 2016-12-02 | 15 | -95/+421 |
|/ | | | | | This adds a directory to the normal IPCP that maps names on IPCP addresses. |