~sircmpwn/hare-ev

ev::dispatch: make timeout optional

Signed-off-by: Drew DeVault <drew@ddevault.org>
ev::dispatch: abort on sort::sort nomem

Signed-off-by: Drew DeVault <drew@ddevault.org>
ev::dial: remove leftover file

Signed-off-by: Drew DeVault <drew@ddevault.org>
ev::wait: remove error case

It's a programmer error, so assert.

Signed-off-by: Drew DeVault <drew@ddevault.org>
Simplify ev::wait API

By testing for expected error cases upfront.

Signed-off-by: Drew DeVault <drew@ddevault.org>
Add ev::exec, ev::wait, ev::kill

Signed-of-by: Drew DeVault <drew@ddevault.org>
ev::dial: nomen changes

Signed-off-by: Armin Preiml <apreiml@strohwolke.at>
ev::dns: nomem changes

Signed-off-by: Armin Preiml <apreiml@strohwolke.at>
tcpserv: assert on nomem

Signed-off-by: Armin Preiml <apreiml@strohwolke.at>
ev: handle nomem

Signed-off-by: Armin Preiml <apreiml@strohwolke.at>
48bf3855 — Drew DeVault 3 months ago
ev::newloop: allow user to customize event buffer size

Signed-of-by: Drew DeVault <sir@cmpwn.com>
Controll concurrent events priority

This new file.prio parameter give some control to the user over
concurrent events.

Say that a timer expires, but a concurrent event would re-arm it, the
user have no way to predict if the timer callback will trigger.

Signed-off-by: Willow Barraco <contact@willowbarraco.fr>
6f1e52a4 — Drew DeVault 4 months ago
timer: make timers NONBLOCK to prevent races

Signed-off-by: Drew DeVault <sir@cmpwn.com>
Fix crashes when triggering events count changes over time

epoll_pwait does not reset the epoll_events after the nevent index. It
means we are re-triggering events. In cases the events are obsoletes,
or the fd closed, we crash on:

    assert(pending & ~(op::READV | op::WRITEV) == 0)

We could cleanup the events integer ourselves, but this fix seems
better to me, and more performant anyway.

Signed-off-by: Willow Barraco <contact@willowbarraco.fr>
7de2b827 — Drew DeVault 8 months ago
ev: improve documentation of ev::do

And make it clear that the dispatch handler is only called once.

Signed-off-by: Drew DeVault <sir@cmpwn.com>
554723c9 — Drew DeVault 9 months ago
ev::dial: attempt resolved IPs in order

To handle cases where, for instance, an AAAA record is returned but IPv6
is not available.

Signed-off-by: Drew DeVault <sir@cmpwn.com>
ed023beb — Drew DeVault 9 months ago
ev::dns: fall back to TCP on response truncation

Signed-off-by: Drew DeVault <sir@cmpwn.com>
aa01cdd0 — Drew DeVault 9 months ago
ev::dns: update resolv.conf usage

Signed-off-by: Drew DeVault <sir@cmpwn.com>
2f7d034c — Drew DeVault 10 months ago
Update README.md
ev::dispatch(): return if no events are available

Signed-off-by: Abdera7mane <djaker_abderahmane@yahoo.fr>
Next
Do not follow this link