| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| | |
Also cleans up the flow_set if an AP-I dies abruptly.
|
|/ |
|
|\
| |
| |
| | |
ipcpd: normal: Add timerwheel to RIB manager
|
|/
|
|
|
|
|
| |
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.
|
|\
| |
| |
| | |
ipcpd, lib: Fix timerwheel issues / time_utils
|
|/
|
|
|
|
|
| |
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.
|
|\
| |
| |
| | |
ipcpd: Add timerwheel
|
| |
| |
| |
| |
| | |
The timerwheel can be used to defer work to a certain timeslot in the
future.
|
|\ \
| |/
|/|
| | |
lib: Deprecate shm_rbuff_reset
|
|/ |
|
|\
| |
| |
| | |
ipcpd, lib: Add syntax version to protobuf files
|
|/
|
|
|
|
| |
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.
|
|\
| |
| |
| | |
ipcpd: normal: Add syncing of RIB objects
|
| |
| |
| |
| |
| | |
This adds the remote syncing of RIB objects. Subscribers are notified
upon receipt of new/deleted/updated RIB objects.
|
|\ \
| | |
| | |
| | | |
tools: Use busy waiting in operf
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\| |
| | |
| | |
| | | |
ipcpd: Fix SDU size check in LLC shim
|
|/ /
| |
| |
| | |
Total SDU size (including LLC header) cannot exceed 1500 bytes.
|
|\ \
| | |
| | |
| | | |
lib: Remove dst_api field from rdrbuff blocks
|
|/ /
| |
| |
| |
| |
| | |
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.
|
|\ \
| | |
| | |
| | | |
irmd: Refactor irm_flow
|
|/ /
| |
| |
| |
| | |
Creation and destruction of the rbuffs is now completely handled in
the irm_flow.
|
|\ \
| | |
| | |
| | | |
tools: Fix likely overflow in cbr output
|
| | | |
|
|\ \ \
| |_|/
|/| |
| | | |
irmd: Fix shutdown
|
|/ /
| |
| |
| |
| | |
The IRMd should not send messages to the IPCPs after its mainloop
terminated. IPCPs should cleanup al state when they get the SIGTERM.
|
|\ \
| |/
|/|
| | |
ipcpd: normal: Add RIB objects
|
|/
|
|
|
| |
This adds the ability to create/update/destroy RIB objects. Syncing
with other DIF members is not yet supported.
|
|\
| |
| |
| | |
lib: Simplify CDAP API
|
|/
|
|
|
|
| |
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.
|
|\
| |
| |
| | |
ipcpd: normal: Add policy for obtaining a flat address
|
| |
| |
| |
| |
| |
| | |
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.
|
|\ \
| | |
| | |
| | | |
lib, ipcpd: Improve flow allocation
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\| |
| | |
| | |
| | | |
ipcpd: Clean shutdown when bootstrap fails
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Fixes a double free (conf->dif_name) and the handling of non-created
threads when the bootstrap of an IPCP fails
|
|\| |
| |/
|/|
| | |
operf tool, bugfixing and small improvements
|
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
|\|
| |
| |
| | |
lib: Free fd when deallocating a flow
|
|/
|
|
| |
Fixes a little bug that sneaked in with the revised deallocation.
|
|\
| |
| |
| | |
ipcpd: normal: Fix bugs in connection establishment
|
| |
| |
| |
| | |
This fixes some bugs in connection establishment over the normal IPCP.
|
|\ \
| |/
|/|
| | |
lib: Clean up flow if alloc_res fails
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|\|
| |
| |
| | |
irmd: Fix check in irm_flow
|