| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Port_id's weren't correctly released. Also removes remaining debug
logs from the library.
|
|
|
|
|
| |
The fd_to_port_id function has no internal locking and must now be
called under lock.
|
|\
| |
| |
| | |
lib, ipcpd, irmd: Add QoS cube definition
|
| |
| |
| |
| |
| |
| | |
This fixes wrong header inclusion that would make programs which are
not developed within ouroboros fail upon compilation, since they would
not find certain headers on their system.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds the QoS cube definition, which is an enum to select which
QoS is needed in the IPCP. An application has to use the qos_spec in
qos.h to define what it needs. The IRMd will map this unto a qos cube
definition.
Some headers are now also no longer installed on the system, since
they are only to be used within the irmd and ipcps.
|
|\ \ \
| | | |
| | | |
| | | | |
lib: dev.c: added locking
|
| | |/
| |/|
| | |
| | |
| | | |
Locking is required for multi-threaded applications. Flows are locked
separately. Read/Write locks are used for concurrent reads.
|
|\ \ \
| |/ /
|/| |
| | | |
Be udp
|
| | | |
|
| |\ \
| |/ /
|/| | |
|
|\ \ \
| |_|/
|/| |
| | | |
lib: implementation of read/write locks
|
| |\ \
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | |
| | | | |
lib: shm_ap_rbuff: removed bad memory allocation
|
|/ / /
| | |
| | |
| | |
| | | |
moved a malloc so there is no malloc/free when there is no data to be
read from the shm_ap_rbuff.
|
| |/
| |
| |
| |
| |
| |
| | |
Added necessary locks for the shim-udp. This PR also improves thread
management, the main thread now starts a mainloop thread, which spawns
sdu handler threads when it the IPCP is enrolled. If the IPCP exits
the enrolled state, the sdu loop is cancelled.
|
| |
| |
| |
| | |
Locking the main mutex should happen while the counter is locked.
|
|/
|
|
|
| |
This adds read/write locks, allowing for concurrent reads on the locked
datastructure. This is needed for the fast path.
|
|\
| |
| |
| | |
lib: shm_ap_rbuff: small fixes
|
|/
|
|
| |
Unnecessary filename string removed. Formatting fix.
|
|\
| |
| |
| | |
irmd: fixed bad locking and added cleanup
|
|/
|
|
| |
flow_alloc_res had missing cleanup, added missing unlock.
|
|\
| |
| |
| | |
include: added flows.h to CMakelists
|
| | |
|
|\|
| |
| |
| | |
lib: dev: implementation of flow_cntl
|
| | |
|
|/
|
|
|
| |
allows setting the oflags to make flow_read and flow_write blocking or
non-blocking (FLOW_O_NONBLOCK).
|
|\
| |
| |
| | |
irmd: cleanup
|
|/
|
|
| |
improved cleanup when killing the IRMd.
|
|\
| |
| |
| | |
ipcpd: threading and cleanup of ipcpd_udp
|
|/
|
|
|
| |
The shim_udp now correctly destroys its ringbuffer on exit. Now
handles sdu's in a single thread using select() with a 10 us timeout.
|
|\
| |
| |
| | |
ipcpd: Fix unitialized value
|
|/
|
|
|
| |
A value that was unitialized was being treated as an error in the
release build with gcc.
|
|\
| |
| |
| | |
ipcpd: Allow disabling of DNS
|
| |
| |
| |
| |
| | |
This adds nslookup support to the shim UDP, so that a custom DNS
server can be queried.
|
|/
|
|
|
|
| |
This allows someone to disable the use of DNS in the shim UDP. It also
adds a config file specific for the shim UDP (which holds the nsupdate
location). Certain defines were also moved to the global config file.
|
|\
| |
| |
| | |
irmd: use pthread_cond_wait
|
| |
| |
| |
| |
| | |
it's more robust to use dedicated locks for pthread_cond_signal so no
other threads can be waiting for the mutex.
|
| |
| |
| |
| |
| | |
bmp_allocate should be called under lock. Helgrind does not give
warnings anymore during flow allocation.
|
| | |
|
| |
| |
| |
| |
| | |
This commit adds locking to the IRMd with a single global lock.
It also fixes some issues in cleaning up the daemon.
|
| |\
| |/
|/| |
|
|\ \
| | |
| | |
| | | |
Fixes some log messages
|
| | |
| | |
| | |
| | |
| | | |
This fixes bad indentation and log messages without a newline in the
echo application.
|
| | |
| | |
| | |
| | |
| | | |
A wrong log message was being printed if the bootstrap command was
called with a wrong parameter.
|
| |/
|/|
| |
| |
| |
| | |
The initial implementation looped on a nanosleep to wait for an
incoming flow allocation request. This implementation is now corrected
with the necessary locks and the thread sleeps on a condition variable.
|
|\ \
| |/
|/|
| | |
lib/test: removed the test for the shm_du_map
|
|/
|
|
|
|
|
| |
The test had a synchronisation issue. Due to rebuild of the shm_du_map
for random access, there was also a hack in the shm_du_map
specifically to run this test. Because of this hack, the decision was
made to drop this test.
|
|\
| |
| |
| | |
ipcpd-udp: fixed missing close
|
| |
| |
| |
| | |
caused the shim to run out of file descriptors fast...
|