summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * lib, irmd: Ensure rbuffs are empty upon destructiondimitri staessens2016-11-302-8/+42
| | | | | | | | Also cleans up the flow_set if an AP-I dies abruptly.
| * tools: Deallocate cbr flows when they time outdimitri staessens2016-11-291-0/+2
|/
* Merged in sandervrijders/ouroboros/be-rib-flooding (pull request #310)dimitri staessens2016-11-281-81/+219
|\ | | | | | | ipcpd: normal: Add timerwheel to RIB manager
| * ipcpd: normal: Add timerwheel to RIB managerSander Vrijders2016-11-281-81/+219
|/ | | | | | | The RIB manager now keeps track of ROs it has already received. The identification of a RO it knows is kept in a struct ro id. For the deletion of these RO ids, a timerwheel to the RIB manager. It also deletes ROs if they have a specified timeout.
* Merged in dstaesse/ouroboros/be-timerwheel (pull request #309)Sander Vrijders2016-11-253-21/+31
|\ | | | | | | ipcpd, lib: Fix timerwheel issues / time_utils
| * ipcpd, lib: Fix timerwheel issues / time_utilsdimitri staessens2016-11-253-21/+31
|/ | | | | | | Timerwheel would skip some additions due to a missed wakeup signal. Addition of timespecs and timevals in the time utilities would overflow tv_nsec/tv_usec if the sum is an integer number of seconds.
* Merged in dstaesse/ouroboros/be-timerwheel (pull request #307)Sander Vrijders2016-11-255-2/+508
|\ | | | | | | ipcpd: Add timerwheel
| * ipcpd: Add timerwheeldimitri staessens2016-11-255-2/+508
| | | | | | | | | | The timerwheel can be used to defer work to a certain timeslot in the future.
* | Merged in dstaesse/ouroboros/be-rbuff (pull request #308)Sander Vrijders2016-11-252-12/+0
|\ \ | |/ |/| | | lib: Deprecate shm_rbuff_reset
| * lib: Deprecate shm_rbuff_resetdimitri staessens2016-11-252-12/+0
|/
* Merged in sandervrijders/ouroboros/be-protobuf (pull request #306)dimitri staessens2016-11-229-2/+205
|\ | | | | | | ipcpd, lib: Add syntax version to protobuf files
| * ipcpd, lib: Add syntax version to protobuf filesSander Vrijders2016-11-229-2/+205
|/ | | | | | This adds a syntax version to the protobuf files. The latest version of protobuf otherwise complains that it is missing. The GPL license is also added on files where it was missing.
* Merged in sandervrijders/ouroboros/be-rib-sync (pull request #301)dimitri staessens2016-11-204-392/+798
|\ | | | | | | ipcpd: normal: Add syncing of RIB objects
| * ipcpd: normal: Add syncing of RIB objectsSander Vrijders2016-11-194-392/+798
| | | | | | | | | | This adds the remote syncing of RIB objects. Subscribers are notified upon receipt of new/deleted/updated RIB objects.
* | Merged in dstaesse/ouroboros/be-operf (pull request #305)Sander Vrijders2016-11-192-4/+24
|\ \ | | | | | | | | | tools: Use busy waiting in operf
| * | tools: Use busy waiting in operfdimitri staessens2016-11-192-4/+24
| | | | | | | | | | | | | | | | | | Using nanosleep in between sending SDUs is not accurate enough when sending thousands of SDUs per second. The --sleep option is added for lowering CPU consumption in low bandwidth tests.
* | | Merged in dstaesse/ouroboros/be-llc (pull request #304)Sander Vrijders2016-11-181-1/+1
|\| | | | | | | | | | | ipcpd: Fix SDU size check in LLC shim
| * | ipcpd: Fix SDU size check in LLC shimdimitri staessens2016-11-181-1/+1
|/ / | | | | | | Total SDU size (including LLC header) cannot exceed 1500 bytes.
* | Merged in dstaesse/ouroboros/be-rdrbuff (pull request #303)Sander Vrijders2016-11-175-192/+138
|\ \ | | | | | | | | | lib: Remove dst_api field from rdrbuff blocks
| * | lib: Remove dst_api field from rdrbuff blocksdimitri staessens2016-11-175-192/+138
|/ / | | | | | | | | | | Now that we have an rbuff per flow per AP, there is no more need to keep the dst_api in the rdrbuff. This also simplifies the sanitizer in the irmd.
* | Merged in dstaesse/ouroboros/be-irm-flow (pull request #302)Sander Vrijders2016-11-163-86/+48
|\ \ | | | | | | | | | irmd: Refactor irm_flow
| * | irmd: Refactor irm_flowdimitri staessens2016-11-163-86/+48
|/ / | | | | | | | | Creation and destruction of the rbuffs is now completely handled in the irm_flow.
* | Merged in dstaesse/ouroboros/be-cbr (pull request #300)Sander Vrijders2016-11-161-3/+3
|\ \ | | | | | | | | | tools: Fix likely overflow in cbr output
| * | tools: Fix likely overflow in cbr outputdimitri staessens2016-11-161-3/+3
| | |
* | | Merged in dstaesse/ouroboros/be-irmd (pull request #299)Sander Vrijders2016-11-161-1/+0
|\ \ \ | |_|/ |/| | | | | irmd: Fix shutdown
| * | irmd: Fix shutdowndimitri staessens2016-11-161-1/+0
|/ / | | | | | | | | The IRMd should not send messages to the IPCPs after its mainloop terminated. IPCPs should cleanup al state when they get the SIGTERM.
* | Merged in sandervrijders/ouroboros/be-rib (pull request #298)dimitri staessens2016-11-153-6/+587
|\ \ | |/ |/| | | ipcpd: normal: Add RIB objects
| * ipcpd: normal: Add RIB objectsSander Vrijders2016-11-153-6/+587
|/ | | | | This adds the ability to create/update/destroy RIB objects. Syncing with other DIF members is not yet supported.
* Merged in sandervrijders/ouroboros/be-cdap-revised (pull request #297)dimitri staessens2016-11-014-258/+152
|\ | | | | | | lib: Simplify CDAP API
| * lib: Simplify CDAP APISander Vrijders2016-11-014-258/+152
|/ | | | | | This will simplify the CDAP API. Now the opcode has to be given when sending a CDAP request. Before a separate operation was provided since some of the function parameters are unused for certain commands.
* Merged in sandervrijders/ouroboros/be-addr-auth (pull request #296)dimitri staessens2016-11-0114-19/+275
|\ | | | | | | ipcpd: normal: Add policy for obtaining a flat address
| * ipcpd: normal: Add policy for obtaining a flat addressSander Vrijders2016-11-0114-19/+275
| | | | | | | | | | | | This adds a policy for obtaining a flat address, and thus also the infrastructure for policies in the IPCP. The IPCP should check if the address is available; this is currently not there yet.
* | Merged in dstaesse/ouroboros/be-fixes (pull request #295)Sander Vrijders2016-10-316-143/+169
|\ \ | | | | | | | | | lib, ipcpd: Improve flow allocation
| * | lib, ipcpd: Improve flow allocationdimitri staessens2016-10-316-143/+169
| | | | | | | | | | | | | | | | | | | | | All calls for opening rbuffs are now concentrated on the dev side. This allows some simplifications in the np1 calls. The ipcp_fini call will not destroy the mutex associated with the state, since the final state needs to be checked before shutting down an IPCP.
* | | Merged in dstaesse/ouroboros/be-fixes (pull request #294)Sander Vrijders2016-10-314-32/+46
|\| | | | | | | | | | | ipcpd: Clean shutdown when bootstrap fails
| * | ipcpd: Remove unnecessary include of fcntldimitri staessens2016-10-313-4/+0
| | |
| * | ipcpd: Clean shutdown when bootstrap failsdimitri staessens2016-10-314-28/+46
| | | | | | | | | | | | | | | Fixes a double free (conf->dif_name) and the handling of non-created threads when the bootstrap of an IPCP fails
* | | Merged in dstaesse/ouroboros/be-dealloc (pull request #293)Sander Vrijders2016-10-3010-18/+663
|\| | | |/ |/| | | operf tool, bugfixing and small improvements
| * tools: Add operf tooldimitri staessens2016-10-305-0/+628
| | | | | | | | | | | | This tool allows bidirectional bandwidth measurement between a client and server application. The server reflects all traffic back to the client. The traffic can be capped at a certain rate or set to flood.
| * tools: Fix parameters in oping tooldimitri staessens2016-10-301-4/+5
| |
| * irmd: Fix irmd state checkdimitri staessens2016-10-301-1/+1
| |
| * lib: Have flow_event_wait return non-zero valuedimitri staessens2016-10-302-12/+26
| | | | | | | | | | | | Flow_event_wait will either return -EINVAL, -ETIMEDOUT or a positive integer indicating the number of SDUs in the fqueue. This allows to call the function as the condition for a non-terminating while loop.
| * tools: Fix memleak in ipcp bootstrapdimitri staessens2016-10-301-1/+3
| |
* | Merged in dstaesse/ouroboros/be-dealloc (pull request #292)Sander Vrijders2016-10-301-0/+1
|\| | | | | | | lib: Free fd when deallocating a flow
| * lib: Free fd when deallocating a flowdimitri staessens2016-10-301-0/+1
|/ | | | Fixes a little bug that sneaked in with the revised deallocation.
* Merged in sandervrijders/ouroboros/be-fix-conn (pull request #291)0.3dimitri staessens2016-10-274-46/+58
|\ | | | | | | ipcpd: normal: Fix bugs in connection establishment
| * ipcpd: normal: Fix bugs in connection establishmentSander Vrijders2016-10-274-46/+58
| | | | | | | | This fixes some bugs in connection establishment over the normal IPCP.
* | Merged in dstaesse/ouroboros/be-dealloc (pull request #290)Sander Vrijders2016-10-272-81/+129
|\ \ | |/ |/| | | lib: Clean up flow if alloc_res fails
| * lib: Clean up flow if alloc_res failsdimitri staessens2016-10-272-81/+129
| | | | | | | | | | | | | | | | | | If alloc_res fails all resources will be cleaned, except for the assigned flow_descriptor, which must be released with a dealloc call. Calling dealloc after a failed flow_alloc will not try to destroy the already cleaned up flow in the IRMd and IPCPs. Also fixes some memleaks in the oping client.
* | Merged in dstaesse/ouroboros/be-irmd (pull request #289)Sander Vrijders2016-10-271-1/+1
|\| | | | | | | irmd: Fix check in irm_flow