| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
This has the code checked with -Wcast-qual and -Wconversion flags.
These flags were removed because SWIG generated code fails.
|
|
|
|
|
|
|
|
| |
This commit will remove the RMT component from the normal IPCP, as
some of its functionality would else be duplicated in the FMGR. Now
all reading from flows, either N-1 or N+1 is done in the FMGR, then
either passed to the FRCT or a lookup is performed in the PFF (not
there yet) and the PDU is forwarded.
|
|
|
|
|
|
|
| |
This is the first version of the fast path bootstrap in the normal
IPCP. It sets up a connection with the other end, and creates the
appropriate data structures. N+1 and N-1 SDUs are read and written and
passed through the right components.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 adds the operations needed in the normal IPCP to get and set the
Protocol Control Information. It allows to allocate or release space
in the current DU. The struct pci can be serialized into newly
allocate space. Vice versa, a struct pci can be deserialized given a
DU. It allows for decreasing the TTL in the DU and for calculating the
CRC32. The TTL and CRC32 can now be selected when creating a new DIF.
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the initial framework for flow allocation between two N+1
endpoints. The FMGR will receive flow allocation requests and will
create a connection as a result, addressed to the right address, it
will also pass a flow allocation message to this address. Upon receipt
on the other side, the FMGR will be receive a flow allocation message
and a pointer to a new connection. The FMGR can then accept or destroy
the connection. This commit also introduces the RMT function, which is
needed by the FRCT to forward its SDUs on the right file descriptor.
|
|
|
|
|
|
| |
This adds the functionality of exchanging the static DIF information
between 2 DIF members. After exchange the enrollment is stopped, and
the IPCP that initiated enrollment transitions to the enrolled state.
|
|
|
|
|
|
| |
This provides the normal IPCP with bootstrapping and the initial steps
for enrollment. Next step is actually reacting to an enrollment
request and sending the data transfer constants.
|
|
|
|
|
|
|
|
|
| |
This adds the intial implementation of establishing management N-1
flows between normal IPCPs. On calling fmgr_mgmt_flow, a management
flow will be setup to a certain destination IPCP. After flow
allocation, the fd is handed to the RIB manager. The flow manager also
listens for incoming flow requests. In case they are management flows,
they are handed to the RIB manager, otherwise to the FRCT.
|
|
This adds the initial headers for the normal IPCP. The normal IPCP
consists of 3 main components:
* The flow manager, in charge of managing N and N-1 flows.
* The RIB manager, in charge of managing the RIB
* FRCT: The flow and retransmission control task
|