<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/ipcpd/udp, branch 0.19.1</title>
<subtitle>Ouroboros main repository</subtitle>
<id>https://ouroboros.rocks/cgit/ouroboros/atom?h=0.19.1</id>
<link rel='self' href='https://ouroboros.rocks/cgit/ouroboros/atom?h=0.19.1'/>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/'/>
<updated>2022-03-08T16:40:18+00:00</updated>
<entry>
<title>ipcpd: Fix memcpy with NULL in piggyback API</title>
<updated>2022-03-08T16:40:18+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2022-03-07T17:15:58+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=a7032da6bbe875596ea1cb348a747123cda7d408'/>
<id>urn:sha1:a7032da6bbe875596ea1cb348a747123cda7d408</id>
<content type='text'>
If there is no piggyback data, memcpy was passed a NULL pointer in
memcpy(buf, NULL, 0) calls, which is undefined behaviour.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipdpd: Pass MPL to application at flow_allocation</title>
<updated>2022-03-08T16:40:17+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2022-03-06T14:15:51+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=40ca5385e97f393d0c231446f117ad43465735a7'/>
<id>urn:sha1:40ca5385e97f393d0c231446f117ad43465735a7</id>
<content type='text'>
The maximum packet lifetime (MPL) is a property of the flow that needs
to be passed to the reliable transmission protocol (FRCP) for its
correct operation. Previously, the value of MPL was set fixed as one
of the (fixed) Delta-t parameters. This patch makes the MPL a property
of the layer, and it can now be set per layer-type at build time.
This is a step towards a proper MPL estimator in the flow allocator.

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: Make flow liveness timeout configurable</title>
<updated>2022-03-03T11:00:54+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2022-02-25T16:34:29+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=f5d642a06f9c1a58197313b32f6b213a152e446f'/>
<id>urn:sha1:f5d642a06f9c1a58197313b32f6b213a152e446f</id>
<content type='text'>
The qosspec_t now has a timeout value that sets the timeout value of
the flow. Flows with a peer that has timed out will now return
-EFLOWPEER on flow_read() or flow_write().

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 some unchecked return values</title>
<updated>2022-03-03T11:00:53+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2022-02-24T23:15:28+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=27374c05645cb6a656e82a9a0b6bc810082cfe4e'/>
<id>urn:sha1:27374c05645cb6a656e82a9a0b6bc810082cfe4e</id>
<content type='text'>
Fixes some unchecked and wrongly checked return values.

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 potential overflow in DDNS resolver</title>
<updated>2022-02-18T07:43:14+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2022-02-17T18:13:34+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=26f9d9880cdd8392379516d795a3cabb5f412728'/>
<id>urn:sha1:26f9d9880cdd8392379516d795a3cabb5f412728</id>
<content type='text'>
The count value could be IPCP_UDP_BUF_SIZE, overflowing buf.

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: Fix compilation with fuse (RIB) on FreeBSD</title>
<updated>2021-06-28T13:29:16+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-06-25T22:20:17+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=cb70b78c443de5f8b95c4469dd8eb7f77af880ed'/>
<id>urn:sha1:cb70b78c443de5f8b95c4469dd8eb7f77af880ed</id>
<content type='text'>
Compilation failed on FreeBSD 14 with fuse enabled because of some
missing definitions. __XSI_VISIBLE must be set before including
&lt;ouroboros/rib.h&gt; for some definitions in &lt;sys/stat.h&gt;. FreeBSD
doesn't know the MSG_CONFIRM flag to sendto() or
CLOCK_REALTIME_COARSE, which are Linux-specific.

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: 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: Single UDP port for the ipcpd-udp</title>
<updated>2021-01-03T10:59:59+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-01-02T13:20:25+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=4402f3381b369ae47963ef8936c8f9672697d8db'/>
<id>urn:sha1:4402f3381b369ae47963ef8936c8f9672697d8db</id>
<content type='text'>
The UDP layer will now use a single (configurable) UDP port, default
3435. This makes it easer to allocate flows as a client from behind a
NAT firewall without having to configure port forwarding rules. So
basically, from now on Ouroboros traffic is transported over a
bidirectional &lt;src&gt;&lt;port&gt;:&lt;dst&gt;&lt;port&gt; UDP tunnel. The reason for not
using/allowing different client/server ports is that it would require
reading from different sockets using select() or something similar,
but since we need the EID anyway (mgmt packets arrive on the same
server UDP port), there's not a lot of benefit in doing it. Now the
operation is similar to the ipcpd-eth, with the port somewhat
functioning as a "layer name", where in UDP, the Ethertype functions
as a "layer name".

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: Update email addresses</title>
<updated>2021-01-03T10:57:05+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2021-01-02T06:24:35+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=fa2ca608aa06c98c080edf80c00d39d6d90e4d3a'/>
<id>urn:sha1:fa2ca608aa06c98c080edf80c00d39d6d90e4d3a</id>
<content type='text'>
The ugent email addresses are shut down, updated to Ouroboros mail
addresses.

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