| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This refactors dev.c to have a common function called init_flow that
is called whenever a flow is allocated in dev.c
|
|
|
|
|
|
|
| |
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, ...
|
|
|
|
|
|
| |
This commits adds the functions and messages to specify a fixed
protocol syntax during CACEP. It also revises the messages for
specifying the DT protocol syntax from the irm tool.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Copyright is set to 2016 - 2017. License text on includes and sources
in the library are changed to indicate the LGPLv2.1 license.
|
|
|
|
|
| |
This corrects the license statements on all files. Installed headers
are LGPLv2.1, the rest of the code is GPLv2.
|
|
|
|
|
|
|
| |
Deallocation was reverted to a synchronoous operation between the AP,
IRMd and IPCP in order to avoid inconsistent states of the port_id.
Fixes some memory leaks, particularly the shm_flow_set is now closed
upon deallocation.
|
|
|
|
|
| |
Flow deallocation from the application will immediately return (void
call). The IRMd will not send a reply message.
|
|
|
|
|
|
|
|
|
|
|
|
| |
IPCPs can now use ap_init() to initialize the memory. All flows are
accessed using flow descriptors, this greatly simplifies IPCP
development. Reverts the fast path to a single ap_rbuff per process.
Splits lib/ipcp into irmd/ipcp and lib/ipcp-dev. Adds a lib/shim-dev
holding tailored functions for shims. Moves the buffer_t to utils.h.
Fixes the shim-eth-llc length field. Removes the flow from shared.h.
Fixes #4
Fixes #5
|
|
|
|
|
|
| |
This will add a timeout to the socket so that a process won't be
blocked by the actions of the process with which it is communicating
over the socket.
|
|
|
|
| |
Changes the variable name as well to API instead of PID.
|
|
|
|
|
|
| |
Reverting from previous commit. Even when running Ouroboros sandboxed,
the sockets and shared memory should be created in the default system
paths.
|
|
|
|
|
|
|
|
|
| |
This sets the correct install directories for all the binaries,
library and header files. It also sets the right permissions on the
sockets and shared memory so that regular users can also use the
ouroboros library. Root privileges are required to run the irmd.
Fixes #7
|
|
|
|
|
|
|
|
|
| |
This adds dif_config to the prototype, in which one is able to specify
the parameters a DIF should have. The bootstrap operation of an IPCP
takes this as parameter and is oblivious to whether it is a shim or a
normal IPCP. The dif_config struct is also correctly serialized and
deserialized and passed opaquely to the correct IPCP. This IPCP is in
charge of deserializing it correctly.
|
|
|
|
|
|
| |
This adds the messages that are sent to the IPCPs related to
flows. Some messages are also sent to the IRMd (e.g. when a new flow
arrives).
|
|
|
|
|
| |
All messages sent to the IRMd now also get a reply back with the
result of the operation.
|
|
|
|
|
| |
all functions taking a char * ap_name and uint id now take either a
instance_name_t or instance_name_t *
|
|
|
|
|
| |
This removes the custom ser/des methods for communicating with the
IPCP daemon and also uses GPB instead.
|
|
|
|
|
| |
IRMd and dev.c now also use GPB instead of our own ser/des. irm_msg
struct has been dropped as well as the methods associated with it.
|
|
|
|
|
|
| |
Removes rina_name_t from that API. Passing ap_name and api_id as
params instead. The IRM tool has been updated accordingly. Some errors
in the build related to protobuf-c have also been resolved.
|
|
|
|
|
|
| |
This adds several messages for the dev.h API calls to communicate with
the IRM daemon. The deserializing of these messages is still missing
and the irmd hasn't been updated with them either.
|
|
|
|
|
| |
This adds the messages required for the IRMd to communicate with an
IPC Process through the library.
|
|
|
|
|
| |
This removes some memleaks present in the sockets layer. It also fixes
the bad initialization of the difs_size param in the irm_msg.
|
|
|
|
| |
This adds helper functions for RINA names, to aid with handling them.
|
|
|
|
|
| |
common.h: dif_info renamed to dif_config
missing struct fixed
|
|
|
|
|
|
|
| |
This provides the other messages that are used to communicate between
the library and the IRM Daemon. The IRM tool just calls the library
right now to see if it works. A full fledged program will be provided
in a next commit.
|
|
|
|
| |
This addresses several comments Dimitri had on the sockets layer code.
|
|
|
|
|
|
|
| |
Provides the initial support to create IPCPs via a command-line
tool. It extends the socket layer with a message that is sent over a
socket to the irmd when the irm_create_ipcp library function is called
from a program.
|
|
This provides the initial messages to be passed between the irmd and
libouroboros-irm.
|