| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This removes the RIB as a datastructure and CDAP as the protocol
between IPCPs. CDAP, the rib and related sources are deprecated. The
link-state protocol policy is udpated to use its own protocol based on
a simple broadcast strategy along a tree. The neighbors struct is
deprecated and moved to the library as a generic notifier component.
|
|\
| |
| |
| | |
ipcpd: Shutdown DHT work thread first at destroy
|
| |
| |
| |
| | |
This prevents a potential deadlock on the wrlock.
|
|\ \
| |/
|/|
| | |
ipcpd: Fix double finalization after some failures
|
|/
|
|
|
| |
When enroll or bootstrap failed, finalize_components could be called
twice, resulting in double frees or use-after-free.
|
|\
| |
| |
| | |
ipcpd: normal: Avoid redefining a typedef
|
| |
| |
| |
| |
| | |
This avoids a redefinition of a typedef which is a C11 feature, and
thus not supported by clang when the c89 switch is enabled.
|
|\ \
| |/
|/|
| | |
build: Add systemd unit on install
|
|/
|
|
| |
This adds a systemd unit for the irmd on installation of Ouroboros.
|
|\
| |
| |
| | |
Be frct lock
|
| |
| |
| |
| |
| |
| |
| | |
This will remove the dst parameter from enroll_boot, since it was only
being used in logging. It also turns some other debug logs into info
logs, and makes the component names as they are used in logs all
lowercase.
|
|/
|
|
|
| |
This adds a per instance FRCT lock, since it was taking a write lock,
thereby severely impacting parallelism in dev.c
|
|\
| |
| |
| | |
lib: Add fccntl configuration command
|
| |
| |
| |
| |
| |
| |
| | |
This replaces the flow_set_* commands with a single fccntl command
that can configure flows and the FRCT instance.
For more details, see "man 3 fccntl".
|
|\ \
| |/
|/|
| | |
Be connect
|
| |
| |
| |
| |
| | |
This adds a check in the shims if a name was already registered, since
it should not return an error.
|
|/
|
|
|
|
| |
This adds a specific timeout for IPCP connect, since it may take a lot
longer than the regular socket timeout due to flow allocations in the
IPCP.
|
|\
| |
| |
| | |
Be corrupt
|
| |
| |
| |
| |
| | |
The name parameter was not being matched correctly in ipcp connect and
disconnect.
|
| |
| |
| |
| |
| | |
This will delete the rdrbuff also when it has been corrupted
before. Otherwise the irmd won't start, as experienced on my desktop.
|
|\ \
| | |
| | |
| | | |
ipcpd: Fix thread leaks in normal IPCP
|
| |/ |
|
|\ \
| |/
|/|
| | |
irmd: Remove temporary debugging logs
|
|/ |
|
|\
| |
| |
| | |
ipcpd: Fix missing unlock in dht
|
|/ |
|
|\
| |
| |
| | |
shim-eth-llc: Hide directory query locking
|
| |
| |
| |
| |
| |
| |
| | |
The locking of the directory queries was happening in the
shim-eth-llc, but it should be done within the shim-data functions.
Fixes #30
|
|\ \
| | |
| | |
| | | |
ipcpd: Fix state in dht lookup at lookup_wait
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The correct state was returned but not set internally in the
lookup_struct, causing lookup_wait to return a lookup in LU_PENDING if
the wait timedout.
This also unlocks the IRMd during register calls and fixes some
cleanup if lookup_wait gets interrupted.
Fixes #48
|
|\ \ \
| |/ /
|/| |
| | | |
lib, ipcpd: Fix e-mail addresses in protobuf files
|
| |/
| |
| |
| | |
This fixes the wrong e-mail addresses in the protobuf files.
|
|\ \
| |/
|/|
| | |
dev: Revise fqueue API and add man pages
|
|/ |
|
|\
| |
| |
| | |
lib, ipcpd, irmd: Fix bugs reported by static analysis
|
|/
|
|
| |
This fixes several bugs as reported by the clang static analyzer.
|
|\
| |
| |
| | |
Be deprecate gam
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This enables user-written tools to instruct IPCPs to establish and
tear down connections (a.k.a. adjacencies) between its internal
components (Management and Data Transfer).
For more info, do "irm ipcp connect" or "irm ipcp disconnect" on the
command line.
This commit exposes a deletion bug in the RIB where FSO's fail to
unpack/parse. This will be fixed when the RIB is deprecated.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The graph adjacency manager has been deprecated in favor of providing
an external interface into the connectivity manager so that
adjacencies can be controlled from the command line, user scripts or
user applications.
The gam and its associated policies were removed from the normal IPCP
and the IRM configuration tools. The "/members" part of the RIB was
deprecated. Removal of the gam means that initial connectivity based
on changes in the RIB can't be provided, so some changes were
required throughout the normal IPCP.
The enrollment procedure was revised to establish its own
connectivity. First, it gets boot information from a peer by
establishing a connection to the remote enrollment component and
downloading the IPCP configuratoin. This is now done using its own
protocol buffers message in anticipation of deprecation of the RIB and
CDAP for communication within a DIF.
After the boot information is downloaded, it establishes a data
transfer flow for enrolling the directory (DHT). After the DHT has
enrolled, it signals the peer to that enrollment is done, and the data
transfer connection is torn down.
Signaling connections is done via the nbs struct, which is now passed
to the connmgr, which enables control of the connectivity graph from
external sources.
|
|\ \
| | |
| | |
| | | |
lib: Add configuration message to FRCT
|
| | |
| | |
| | |
| | |
| | | |
This adds the configuration message to FRCT, which allows for
configuring the connection.
|
|\ \ \
| |/ /
|/| /
| |/ |
irmd: Don't warn on failed write to terminated IPCP
|
|/ |
|
|\
| |
| |
| | |
lib: Fix bad locking in frcti_read
|
|/
|
|
| |
A read lock was taken when a write lock was needed.
|
|\
| |
| |
| | |
lib, ipcpd, irmd: Fix several memleaks
|
|/
|
|
|
| |
This fixes several memleaks as reported by valgrind. It also fixes
some calls to close() with -1.
|
|\
| |
| |
| | |
lib: Make sender and receiver inactivity simple checks
|
|/
|
|
|
|
| |
This makes the sender and receiver inactivity timers into simple
checks that compare when the last SDU was sent to the current time to
set the receiver or sender inactivity.
|