Commit Briefs

Omar Polo

look also for listen(2) failures



Omar Polo

don't listen everywhere by default; restrict to localhost

if -b was given without a explicit host, it defaulted to listen on any address. it's not a good idea given this would allow anyone on the same network to (ab)use the ssh forwarding.


Omar Polo

implement socket splicing on OpenBSD

socket splicing allows to do zero-copy data transfers between sockets. This adds a specific implementation for OpenBSD using the setsockopt SO_SPLICE and a default implementation with libevent (that is the old code doing the copy in userland.) It's possible to do the same on linux with splice(2), not implementd though.


Omar Polo

delete needless compat #ifdef




Omar Polo

unveil only ssh(1)


Omar Polo

fix parse_sshaddr error reporting

errno doesn't contain anything useful in this case


Omar Polo

move accounting after the connection was accepted

otherwise we may end up in a weird state where we're counting connections that we don't have or have cleared a timeout without a reason.


Omar Polo

don't die if accept fails


Omar Polo

plug memory leak in try_to_connect

it should call conn_free to cleanup the connection struct now.


Omar Polo

allow span_ssh to fail


Omar Polo

log before quitting