Commit Briefs


Omar Polo

don't pause the request in gemini_parse_reply()

a parse routine shouldn't interfere with the handling of the events; pulling this into the caller makes the logic simpler to follow.


Omar Polo

simplify gemini_parse_reply()



Omar Polo

decouple bufio from ev

more a matter of cleanliness than a strong reason, but this allows to reuse bufio without ev (if wanted to.)


Omar Polo

net: initialize fds earlier



Omar Polo

move imsgev & co to their own file

This avoids bringing the dependency on ev on telescope-identity(1) and the tests as well.


Omar Polo

net: re-enable asr_run

Make asr_run() work on top of ev. While here, rename the function names and add real error checking.


Omar Polo

add a paranoic check


Omar Polo

add missing return

otherwise we try to reschedule the socket we've just closed.


Omar Polo

convert telescope to use ev instead of libevent

libevent is a very cool library, I like the APIs and enjoy using it. However, telescope is not as large and doesn't have as many file descriptor, so libevent is quite ``too big'' for our needs. ev started as a small event loop on top of poll(2) for amused, and can be used here too, it just needed to grow the ability to handle several timers, as we need quite some on telescope (in fact, we use more timers than fds!)



Omar Polo

net: improve handling of connect(2) failures

If we succeed to make a socket(2) but fail to connect(2), still attempt to reconnect using the other results from getaddrinfo(3).