<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/include, branch 0.20.0</title>
<subtitle>Ouroboros main repository</subtitle>
<id>https://ouroboros.rocks/cgit/ouroboros/atom?h=0.20.0</id>
<link rel='self' href='https://ouroboros.rocks/cgit/ouroboros/atom?h=0.20.0'/>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/'/>
<updated>2023-09-20T16:51:19+00:00</updated>
<entry>
<title>lib: Rename portevent to flowevent</title>
<updated>2023-09-20T16:51:19+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-09-17T11:49:59+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=c7fbae74dcf91333cc53632153e1c91e2a641f0d'/>
<id>urn:sha1:c7fbae74dcf91333cc53632153e1c91e2a641f0d</id>
<content type='text'>
Doesn't make any sense to call it a port event...

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: Move protobuf definitions to pb/ directory</title>
<updated>2023-08-30T15:11:41+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-08-27T15:59:20+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=3a321cc77e0f6d29167a925dd706fc36e5aa7cdd'/>
<id>urn:sha1:3a321cc77e0f6d29167a925dd706fc36e5aa7cdd</id>
<content type='text'>
This moves the protobuf definition in the library to a pb/
directory. Also renames the protobuf files and does a quick review of
the #define guards in the include library to specify _LIB_ for
internal/non-public library headers.

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 IDs to enrollment</title>
<updated>2023-08-23T11:09:11+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-08-17T14:12:44+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=8183983c2c1cc50e3e0c82a8ab08d5fd66e0dc86'/>
<id>urn:sha1:8183983c2c1cc50e3e0c82a8ab08d5fd66e0dc86</id>
<content type='text'>
The enrollment messages now have a 64-bit ID to easier track
enrollments in the logs in larger scale tests.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>include: Add option to prefix logs with an ID</title>
<updated>2023-08-23T11:09:11+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-08-17T14:12:43+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=868c7be8f599404a23f1d5178b1ba18379df1132'/>
<id>urn:sha1:868c7be8f599404a23f1d5178b1ba18379df1132</id>
<content type='text'>
This adds the log_xxx_id() macros to print a logline prefixed with a
64-bit identifier in hex format, for instance:

  [2a92d78c2f52b76a] Hello ouroboros!

The ID is assumed to be 8 bytes in big endian format (it uses the
HASH_FMT functions and hashes are stored in big endian byte arrays).

The implementation uses the compiler-specific '##' operator to allow
empty variadics. E.g.

	func(arg , ## __VA_ARGS__);

will eat the comma if __VA_ARGS__ is empty and thus allow

     	func(arg);

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>include: Revise printing hashes</title>
<updated>2023-08-23T11:09:11+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-08-16T16:15:14+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=ab8ee0b24335790e49127b1330f9d7bcca7f6bfa'/>
<id>urn:sha1:ab8ee0b24335790e49127b1330f9d7bcca7f6bfa</id>
<content type='text'>
The code was a bit convoluted to print hashes as hex strings. Renamed
to HASH_FMT32 and HASH_VAL32 to make clear we are printing the first
32 bits only, and added options to print 64 up to 512 bits as well.
This doesn't depend on endianness anymore. Adds a small test for the
hash (printing) functions.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>irmd: Move registry objects to their own sources</title>
<updated>2023-03-21T17:12:28+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-03-18T20:02:10+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=54156a3d9a2a7f87591e5efd37a8fe6f708b933f'/>
<id>urn:sha1:54156a3d9a2a7f87591e5efd37a8fe6f708b933f</id>
<content type='text'>
Rename internal data structures so it's clear that they are the IRMd
representation of these objects for management purposes.

Split functionality for these objects off and and move them to their
own source files.

Rename internal functions of the IRMd to reflect this, with some small
refactoring.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>irmd: Use buffer_t for piggybacked data</title>
<updated>2023-03-18T16:12:27+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-03-14T11:50:27+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=99b4f4d6d6f18321489bae50f1762b29165f7de1'/>
<id>urn:sha1:99b4f4d6d6f18321489bae50f1762b29165f7de1</id>
<content type='text'>
Instead of passing a const void * and len, it now passes buffer_t to
operations that send piggybacked data (flow_req_arr and flow_reply)
and a buffer_t * for operations that send and receive piggybacked data
(flow_alloc and flow_accept).

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>irmd: Add configuration file support</title>
<updated>2023-03-08T14:59:37+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-03-04T02:48:48+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=89b58eaa2706c54aeb0a48252d1cfbd2b5ae01b7'/>
<id>urn:sha1:89b58eaa2706c54aeb0a48252d1cfbd2b5ae01b7</id>
<content type='text'>
This adds initial support for configuration files using the C99 TOML
parser (to be installed separately from https://github.com/cktan/tomlc99).

The default location for the IRMd configuration file is
/etc/ouroboros/irmd.conf. This is configurable at build time.
An example file will be installed in the configuration directory with
the name irmd.conf.example.

Config file support can be disabled using the DISABLE_CONFIGFILE build
option.

There were some refactors and changes to the configuration messages
and protobuf files. This works towards consolidation of protobuf C as
an option for more generic handling of serialization/deserialization
of various messages.

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: Refactor hash internals</title>
<updated>2023-02-23T13:01:00+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-02-19T12:18:52+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=59703c95fb529386574a334c9cff7cd5d4f16255'/>
<id>urn:sha1:59703c95fb529386574a334c9cff7cd5d4f16255</id>
<content type='text'>
The internal hash enum now matches the public one w.r.t. directory
hash policies. This removes some unnecessary conversion.

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: refactor IPCP configuration</title>
<updated>2023-02-13T20:10:11+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2023-02-12T20:05:40+00:00</published>
<link rel='alternate' type='text/html' href='https://ouroboros.rocks/cgit/ouroboros/commit/?id=269f25d3bac5ab871d8044935eacc15cfeadeec6'/>
<id>urn:sha1:269f25d3bac5ab871d8044935eacc15cfeadeec6</id>
<content type='text'>
The ipcp configuration struct now has internal structures for the
different IPCPs and for IPCP components of the unicast IPCP.

Split the very long IPCP main loop into individual handler functions.

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