<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/ipcpd, branch 0.18.2</title>
<subtitle>Ouroboros main repository</subtitle>
<id>https://ouroboros.rocks/cgit/ouroboros/atom?h=0.18.2</id>
<link rel='self' href='https://ouroboros.rocks/cgit/ouroboros/atom?h=0.18.2'/>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/'/>
<updated>2021-06-23T06:42:15+00:00</updated>
<entry>
<title>ipcpd: Fix missing return statement</title>
<updated>2021-06-23T06:42:15+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-21T18:24:04+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=2a46ecf6e64f1a725a3660ea03d6c9946e74de0f'/>
<id>urn:sha1:2a46ecf6e64f1a725a3660ea03d6c9946e74de0f</id>
<content type='text'>
The fa_handle_packet function loop is non-void but didn't have a
return statement. Only got picked up if I build from AUR, which is
weird.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>lib, ipcpd, irmd: Wrap pthread unlocks for cleanup</title>
<updated>2021-06-23T06:36:48+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-21T18:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=8ca960fa0274018cb4f94a1826029d74e6f762e0'/>
<id>urn:sha1:8ca960fa0274018cb4f94a1826029d74e6f762e0</id>
<content type='text'>
This add an ouroboros/pthread.h header that wraps the
pthread_..._unlock() functions for cleanup using
pthread_cleanup_push() as this casting is not safe (and there were
definitely bad casts in the code). The close() function is now also
wrapped for cleanup in ouroboros/sockets.h.
This allows enabling more compiler checks.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Add missing default for switch in shim-data</title>
<updated>2021-06-23T06:36:44+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-21T18:24:02+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=ac53f8ea09b9a24321bc2c00832ba8a117115134'/>
<id>urn:sha1:ac53f8ea09b9a24321bc2c00832ba8a117115134</id>
<content type='text'>
There was a switch-case without a default, causing some compiler
warnings.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Disable core lock by default</title>
<updated>2021-06-21T06:45:53+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-19T12:38:18+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=f0914fafb2dfac2f429ee87623dd482ab93edb08'/>
<id>urn:sha1:f0914fafb2dfac2f429ee87623dd482ab93edb08</id>
<content type='text'>
This was beneficial on dual-XEON CPU systems, but on most hardware,
this kills performance when running multiple IPCPs on a single CPU.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Fix buffer overflow in flow allocator RIB.</title>
<updated>2021-06-21T06:45:50+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-19T13:26:23+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=d063d1fdc9c20dec8c4a4b6c07bc143edbde35fc'/>
<id>urn:sha1:d063d1fdc9c20dec8c4a4b6c07bc143edbde35fc</id>
<content type='text'>
Max value of UINT64 can be 20 characters when printed, need an extra
byte for sprintf trailing '\0'.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Fix congestion window scaling</title>
<updated>2021-06-21T06:45:42+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-19T11:51:28+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=95ca0c60dbe88d5cfff71234dc1483406241bf26'/>
<id>urn:sha1:95ca0c60dbe88d5cfff71234dc1483406241bf26</id>
<content type='text'>
This fixes scaling of the congestion window, which was a buggy mess.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Move RIB initialization to common ground</title>
<updated>2021-06-21T06:45:25+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-18T15:37:11+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=1a13d42a0792a4a12a40c813072355502e87c42f'/>
<id>urn:sha1:1a13d42a0792a4a12a40c813072355502e87c42f</id>
<content type='text'>
This moves Resource Information Base (RIB) initialization into the
ipcp_init() function, so all IPCPs initialize a RIB. The RIB not shows
some common IPCP information, such as the IPCP name, IPCP state and
the layer name if the IPCP is part of a layer.

The initialization of the hash algorithm and layer name was moved out
of the common ipcp source because IPCPs may only know this information
after enrollment. Some IPCPs were not even storing this information.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Fix free of uninitialized variable in graph.c</title>
<updated>2021-05-28T06:19:53+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-05-17T14:50:03+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=f44ff4dc6d903a626f86919567ce382be31eb3b2'/>
<id>urn:sha1:f44ff4dc6d903a626f86919567ce382be31eb3b2</id>
<content type='text'>
The new GCC 11.1 compiler discovered s_dist would be uninitialized
with an unknown policy, so it doesn't need to be free'd. Also removes
some unneeded includes in broadcast dt.c that I had pending.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>build: Move connmgr and enrolment to common ground</title>
<updated>2021-03-28T10:46:32+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-03-26T19:47:25+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=809e4d1957daa701a3390b0526b125cc263bfe26'/>
<id>urn:sha1:809e4d1957daa701a3390b0526b125cc263bfe26</id>
<content type='text'>
The connection manager and enrolment components of the unicast and
broadcast IPCP have a lot in common, as conjectured in the paper. The
initial implementation of the broadcast IPCP just duplicated the
code. This moves the shared functionality to common ground.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>build: Remove raptor IPCP</title>
<updated>2021-03-28T10:46:05+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-03-26T11:32:06+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=994465e34a732db3bce542ee021674473f32d572'/>
<id>urn:sha1:994465e34a732db3bce542ee021674473f32d572</id>
<content type='text'>
This removes the raptor IPCP. The code hasn't been updated for a
while, and wouldn't compile. Raptor served its purpose as a PoC for
Ouroboros-over-Ethernet-Layer-1, but giving the extreme niche hardware
needed to run it, it's not worth maintaining this anymore.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
</feed>
