Commit Briefs
make got-fetch-http pass "done\n" through rather than faking it
Without this we exit the loop early and got-fetch-pack sees unexpected end-of-file on stdout trying to write its final "done\n" message. ok op@
Move pkt-len parsing to a separate got_pkt_readlen() function
so we can reuse it in other places like got-fetch-http later. ok op@ stsp@
got-notify-http: fix I/O with TLS
tls_write() may return TLS_WANT_READ. In that case, we're stuck trying to read while we have the request still in the buffer. So, we have to retry bufio_write() regardless of the POLLIN/POLLOUT state. We'd need this only in the TLS case, but in practice it doesn't harm for the plaintext case too. In fact, we're either waiting to flush the request or we're only reading the server reply. ok stsp
use unveil to restrict filesystem access of got-fetch-http
With HTTPS we only need to be able to read /etc/ssl/cert.pem. With plaintext HTTP no filesystem access is needed at all.
drop git+ssh protocol name from documentation; Git has done the same
We can keep accepting git+ssh for backwards compatibility with existing configs.