<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/lib/dev.c, branch 0.2</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.2</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.2'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2016-07-02T17:11:12+00:00</updated>
<entry>
<title>lib: robust locking in shared memory and crash recovery</title>
<updated>2016-07-02T17:11:12+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-30T21:14:14+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=79475a4742bc28e1737044f2300bcb601e6e10bf'/>
<id>urn:sha1:79475a4742bc28e1737044f2300bcb601e6e10bf</id>
<content type='text'>
This PR enhances the shared memory providing recovery if a process
crashes. It adds a SHM_DU_TIMEOUT_MICROS variable, setting an
expiration time for SDU's when shared memory is full. If an
application doesn't read a blocking SDU within this time, the shared
memory will be cleansed of all SDU's for this application and the
application's rbuff will be cleared.

Some refactoring of the API's. Fixed wrong pthread checks in IRMd.

Fixes #13
Fixes #14
</content>
</entry>
<entry>
<title>lib, irmd, ipcpd: Change pid to api</title>
<updated>2016-06-28T14:45:45+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-28T14:38:03+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=99d19307fae8f1370f52a62aee88fded624ad464'/>
<id>urn:sha1:99d19307fae8f1370f52a62aee88fded624ad464</id>
<content type='text'>
Changes the variable name as well to API instead of PID.
</content>
</entry>
<entry>
<title>lib, irmd, ipcpd: Change of IRM API</title>
<updated>2016-06-28T14:22:01+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-28T14:11:19+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=0d789ed8d938cc342c8f2138280795a1d5a61e3d'/>
<id>urn:sha1:0d789ed8d938cc342c8f2138280795a1d5a61e3d</id>
<content type='text'>
This changes the IRM API after discussions with Dimitri. The register
operation is now split into a bind and register operation. The same
for unregister; unbind and unregister. PIDs are now used as the
application instance name. A name for a PID is only provided for
scriptability in bash. It is therefore also no longer passed down to
the IPCP. Every operation on an IPCP through the IRM API has to use
the PID. Quering of the PIDs by name is possible. The IRM tool has
been updated to use this new API as well. A subcommand 'ipcp' has been
added for operations that take effect on IPCPs only.

Fixes #12
</content>
</entry>
<entry>
<title>lib: Remove implementation specific errnos</title>
<updated>2016-06-22T14:29:27+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-22T14:29:27+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=34bcd67e4811be85e11253e4176ec9fec5c3bbef'/>
<id>urn:sha1:34bcd67e4811be85e11253e4176ec9fec5c3bbef</id>
<content type='text'>
This removes any implementation specific error numbers. Only errors
that are implementation independent should be returned.
</content>
</entry>
<entry>
<title>lib: Add errnos specific for Ouroboros</title>
<updated>2016-06-22T14:07:56+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-06-22T14:05:56+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=fa0a0dbc88adcf9cff8bf35a253f020a49ff4084'/>
<id>urn:sha1:fa0a0dbc88adcf9cff8bf35a253f020a49ff4084</id>
<content type='text'>
This adds error numbers specificly for Ouroboros. It also refactors
some of the header files that are installed.

Fixes #2
</content>
</entry>
<entry>
<title>lib, irmd, ipcp: robust mutexes</title>
<updated>2016-06-20T22:14:14+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-20T21:49:35+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=a46114ec01e8d174a41744f4f1b49905613847dc'/>
<id>urn:sha1:a46114ec01e8d174a41744f4f1b49905613847dc</id>
<content type='text'>
Update to POSIX 200112L to allow use of robust mutexes in the
shm_du_map. Removed the implementation of the rw_lock in favor of
pthread_rwlock_t.

Placeholder for the shm_du_map_sanitize function.
</content>
</entry>
<entry>
<title>lib, irmd, tools, ipcpd: updates to dev API.</title>
<updated>2016-06-13T11:48:17+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-13T11:48:17+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=7834e92b218da69cd934679dec9c2d714d89d15e'/>
<id>urn:sha1:7834e92b218da69cd934679dec9c2d714d89d15e</id>
<content type='text'>
The registration function has been moved to the irm tool, applications
now need to be registered by an administrator. Currently only supports
one instance per registered name, and an AP can be registered under
only one name.

The irmd can now start a registered server application on demand.

For the full functionality of the tool, execute "irm register".

AP name removed from flow allocation. Flow allocation does not send
the source ap name as it is quite useless. The accept() call now only
returns the AE name.
</content>
</entry>
<entry>
<title>lib: fixed blocking/non-blocking write</title>
<updated>2016-05-26T13:38:38+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-26T13:32:00+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=91cc18bab2a07ff5a2432841e3654f2514172a12'/>
<id>urn:sha1:91cc18bab2a07ff5a2432841e3654f2514172a12</id>
<content type='text'>
non-blocking write would return when the buffer was full
functions in dev now check validity of input file descripters
</content>
</entry>
<entry>
<title>lib: Fix memleaks in dev.c</title>
<updated>2016-05-24T17:13:50+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-05-24T15:49:27+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=b94660e9e96af7d523a7fc147c56dac7d613b0ec'/>
<id>urn:sha1:b94660e9e96af7d523a7fc147c56dac7d613b0ec</id>
<content type='text'>
Fixes some memleaks in dev.c in the case of error conditions.
</content>
</entry>
<entry>
<title>lib, ipcpd, irmd: fixes deallocation and fast path</title>
<updated>2016-05-22T13:04:20+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-22T12:53:22+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=dfe5a46fb5315112d1173ac983ffc416dc3ecf18'/>
<id>urn:sha1:dfe5a46fb5315112d1173ac983ffc416dc3ecf18</id>
<content type='text'>
The fast path has been rewritten to have certainty to read the correct
flow. Deallocation will not release port_id's or fd's until they are
explicitly released locally.
</content>
</entry>
</feed>
