<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/ipcpd/ipcp-data.c, branch 0.3</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.3</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.3'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2016-10-26T09:52:53Z</updated>
<entry>
<title>lib, irmd, ipcpd: Add name querying to IPCPs</title>
<updated>2016-10-26T09:52:53Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-10-25T11:22:51Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=f0646875d0bc941e339d305d0c68b13543cd6f2a'/>
<id>urn:sha1:f0646875d0bc941e339d305d0c68b13543cd6f2a</id>
<content type='text'>
This adds the ability to query IPCPs if a name can be reached through
them, e.g. if a name is available in a DIF. This means that in the
shim-udp a DNS query is performed, in the shim-eth-llc an ARP-like
query has been added, in the local a check is done to see if the name
is registered, and in the normal currently no application is reachable
through it.
</content>
</entry>
<entry>
<title>ipcpd: Improve locking in ipcp-data</title>
<updated>2016-10-23T14:00:33Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-10-23T14:00:33Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=5a2e524418154deab5cac0e65d48a8391c860eea'/>
<id>urn:sha1:5a2e524418154deab5cac0e65d48a8391c860eea</id>
<content type='text'>
This solves some potential data races in the shims.
</content>
</entry>
<entry>
<title>lib: Refactor shm_du_map to shm_rdrbuff</title>
<updated>2016-08-29T18:32:54Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-08-29T17:49:39Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=2cc89f6da424ab503af563e0cc92dda43b8f8432'/>
<id>urn:sha1:2cc89f6da424ab503af563e0cc92dda43b8f8432</id>
<content type='text'>
The shm_du_map is renamed to shm_rdrbuff to reflect the Random
Deletion Ringbuffer used in the implementation. The close_on_exit call
is removed and SDUs are cleaned up by the application in the ap_fini()
call. This required a non-blocking peek() operation in the shm_ap_rbuff.

Some initial implementation for future support of qos cubes has been
added to the shm_rdrbuff.
</content>
</entry>
<entry>
<title>ipcpd: Fix bootstrap with api_bind</title>
<updated>2016-08-12T12:57:24Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-08-12T11:11:07Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=54b1ba99e15660e2e12dbc564f7e7428b5440446'/>
<id>urn:sha1:54b1ba99e15660e2e12dbc564f7e7428b5440446</id>
<content type='text'>
Calling api_bind during bootstrap caused the IRMd to lock up.
api_bind is now called after the normal completes bootstrapping.
</content>
</entry>
<entry>
<title>ipcpd: Fix memory leaks</title>
<updated>2016-08-04T15:17:49Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-08-04T10:53:28Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=139001b60b32e756e947d6e3a55767be9063029d'/>
<id>urn:sha1:139001b60b32e756e947d6e3a55767be9063029d</id>
<content type='text'>
ipcp-data was not correctly destroyed.
</content>
</entry>
<entry>
<title>lib: utils: deprecate strdup</title>
<updated>2016-07-05T05:12:24Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-07-05T05:03:17Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=5c745cccbe1774780f499e5cc979eb77d2aac5c7'/>
<id>urn:sha1:5c745cccbe1774780f499e5cc979eb77d2aac5c7</id>
<content type='text'>
When introducing robust mutexes, ouroboros moved to POSIX 200809L
which includes the strdup function in &lt;string.h&gt;. Including
&lt;ouroboros/config.h&gt; will give access to strdup.

Fixes #15.
</content>
</entry>
<entry>
<title>irmd: flow allocation and fast path</title>
<updated>2016-05-07T14:11:09Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-07T14:11:09Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=eb9f44379d5316e7f7e9311d7a66d2041eca743a'/>
<id>urn:sha1:eb9f44379d5316e7f7e9311d7a66d2041eca743a</id>
<content type='text'>
This commit has a first implementation of flow allocation (the "slow
path") and read/write (the "fast path") for ouroboros. It provides
basic but unstable communications over the shared memory.

It required a lot of changes all over the stack, and fixes a number of
previously undetected issues.

This PR still need heavy revision regarding data model, locking and
cleanup.

lib/dev: modifications to the API. It now uses an ap_init() call to
set the AP name and sets the Instance ID to the pid of the process. It
also binds the AP to the shared memory and creates tables for mappings
in the fast path. A call to ap_fini() releases the resources.

lib/shm_ap_rbuff: added ring buffer for data exchange between
processes in the fast path. It passes an index in the shm_du_map.

lib/shm_du_map: rewrote API to work with calls from dev.c. Garbage
collector added. Tests updated to new API.

ipcpd/ipcp-data: removed everything related to flows, as these are
universal for all ap's and kept in ap_data (dev.c), or similar structs
for shim ipcps.

shim-udp: added flow allocator and read/write functions and shm
elements.

irmd: revised data model and structures necessary for flow allocation.

tools: echo updated to new dev.h API.

messaging system was updated to comply with new flow allocation
messages. All exchanges use pid and port_id to bootstrap the fast
path.
</content>
</entry>
<entry>
<title>ipcpd: Hide IRMd messages and fix formatting</title>
<updated>2016-04-27T16:08:20Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-04-27T15:38:49Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=91c89c49257b4b9c698e5b7e90418915423ba1a2'/>
<id>urn:sha1:91c89c49257b4b9c698e5b7e90418915423ba1a2</id>
<content type='text'>
This abstracts away the IRMd messages by calling the functions from
ipcp.h in the ouroboros library. It also fixes some formatting issues.
</content>
</entry>
<entry>
<title>lib: instance ID's are now set to the process PID</title>
<updated>2016-04-26T12:42:05Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-04-26T12:42:05Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=6be9ae98877f23b05f69e6006036fec0f6c9d338'/>
<id>urn:sha1:6be9ae98877f23b05f69e6006036fec0f6c9d338</id>
<content type='text'>
All instance-id's in ouroboros will be set by the system to the pid of
the process associated with this application process instance. This
means that the user has no way to choose the instance id's. Function
calls that assumed manually defined instance id's have been replaced
throughout the system.
</content>
</entry>
<entry>
<title>irmd: reg/unreg whatevercast names</title>
<updated>2016-04-22T15:39:30Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-04-22T15:39:30Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=f4f67651db3891652f4dd08dec990aa0560bb35c'/>
<id>urn:sha1:f4f67651db3891652f4dd08dec990aa0560bb35c</id>
<content type='text'>
Unregistering ap's now works. An AP now registers/unregisters its AP-I
by sending its AP name and its pid to the IRMd. The IPCPs register
whatevercast names. An AP name is currently mapped on a whatevercast
name represented by the same string literal.  The IRMd allows
registration of only one AP-I per AP. A Name Space Management system
is needed in the processing system so we can resolve this completely.

Changing the stack to register whatevercast names required some changes
all over the ipcpd implemented and in the library.
</content>
</entry>
</feed>
