Here's a diffstat for the curious.
Jonathan Nieder (6):
transport: expose git_tcp_connect and friends in new tcp.h
daemon: make host resolution into a separate function
daemon: move locate_host to tcp.c
transport: fix index in ipv6 connection failed message
tcp: unify ipv4 and ipv6 code paths
transport: learn to honor DNS SRV records
Makefile | 17 ++++
connect.c | 270 +-------------------------------------------------------
daemon.c | 54 +----------
dns-ipv4.c | 33 +++++++
dns-ipv4.h | 65 ++++++++++++++
dns-ipv6.c | 45 +++++++++
dns-ipv6.h | 31 +++++++
srv.c | 290 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
srv.h | 15 +++
tcp.c | 236 ++++++++++++++++++++++++++++++++++++++++++++++++
tcp.h | 11 +++
11 files changed, 749 insertions(+), 318 deletions(-)
create mode 100644 dns-ipv4.c
create mode 100644 dns-ipv4.h
create mode 100644 dns-ipv6.c
create mode 100644 dns-ipv6.h
create mode 100644 srv.c
create mode 100644 srv.h
create mode 100644 tcp.c
create mode 100644 tcp.h