| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
In order to ensure 100% reliable transfer, the protocol state machine
that takes care of retransmission and SDU ordering has to be in the
application. Flow allocation in the normal now uses fds. The PDU_type
field was deprecated and AE's within the DIF can use reserved fds.
|
| |
|
|
|
|
|
|
|
|
| |
The IPCP will now report the DIF name and the hash value to the IRMd
as a dif_info struct. This can later be extended to add further
capability reporting. Some bugfixes in normal.
Fixes #24
|
|
|
|
|
|
|
| |
This adds a call ipcp_sdb_reserve to reserve memory in the rdrbuff
without directly writing to a flow. The ipcp_flow_del function was
renamed to ipcp_sdb_release. The functions operating on sdbs are moved
to their own header.
|
| |
|
|
|
|
|
| |
If compiled as release build, an error would be generated as the
control reaches the end of a non-void function.
|
|
|
|
| |
Currently CRC32, MD5, and SHA3 (224, 256, 384 and 512 bit) are supported.
|
| |
|
| |
|
|
|
|
| |
Fixes #35
|
|\
| |
| |
| | |
lib, ipcpd, irmd: Register hash instead of name
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All information passed over the IRMd/IPCP boundary for using IPC
services (flow allocation, registration) is now hashed. This
effectively fixes the shared namespace between DIFs and the IRMDs.
This PR also fixes some API issues (adding const identifiers),
shuffles the include headers a bit and some small bugs.
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
| |
Setting the timeouts on flow_alloc and flow_accept will now work. This
makes some changes to the UNIX sockets used for management
communication between the APs, IRMd and IPCPs.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
The blocks should be accessed inside the lock (or later with CAS).
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| | |
lib: Fix bugs in B-tree
|
| |
| |
| |
| |
| | |
This fixes some bugs in the B-tree implementation. The test has also
been rewritten to be more thorough.
|
|/ |
|
|
|
|
|
|
| |
The flow_alloc_res and flow_alloc_resp calls have been removed. The
flow_alloc and flow_accept calls are now both blocking and take an
additional timeout argument.
|
|
|
|
| |
This fixes an invalid access to an object that was already freed.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes a number of issues in CDAP.
CDAP keeps track if a message is being processed, and moves it to the
end of the request list if it is. It will now correctly wait for new
messages.
The invoke_ids are generated locally per CDAP instance, invoke_ids
can't be used to track incoming requests, we need to keep track of the
fd. The keys are now identifiers (taken from the same local pool as the
invoke_ids) that are used to track requests.
|
| |
|
|
|
|
|
|
| |
The list move was being done on the whole list of sub events, whereas
it should only be done on the first entry. A cleanup handler was also
added.
|
|
|
|
|
| |
This revises the list_move operation, which was giving weird
behaviour.
|
|
|
|
|
| |
This fixes several bugs in the ro sets, rib. And it fixes several bugs
in the graph and routing component of the normal IPCP.
|
|
|
|
|
| |
When something fails, the successfully sent CDAP messages should be
reported back. Invoke_ids were not correctly released.
|
|
|
|
|
|
| |
The routing now takes the results of the routing table to fill in the
forwarding table, by going through the neighbors and filling in the
right fd.
|
| |
|
|\ |
|
| |
| |
| |
| |
| | |
This solves some race conditions where packets arrive on a flow before
it is added to a flow_set.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
You can now add multiple flows to a CDAP instance. This will simplify
sending messages to different peers (e.g. for syncing the RIB). A
request will now return an array of keys terminated by
CDAP_KEY_INVALID. Removes the enum from the CDAP proto file to just
take the opcode as an integer.
|
| |
| |
| |
| |
| |
| |
| | |
Our mailserver was migrated from intec.ugent.be to the central
ugent.be emailserver. This PR updates the header files to reflect this
change as well. Some header files were also homogenized if the
parameters within the functions were badly aligned.
|
| |
| |
| |
| | |
The CMakeLists files are now properly indented.
|
| |
| |
| |
| |
| |
| |
| | |
This adds the connection manager which allows the different AEs of the
normal IPCP to register with it. An AE can then use the connection
manager to allocate a flow to a neighbor, or to wait for a new
connection from a neighbor.
|