Refactoring BIO: Adapt s_client and s_server
authorRichard Levitte <levitte@openssl.org>
Tue, 2 Feb 2016 23:47:42 +0000 (00:47 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 3 Feb 2016 19:36:49 +0000 (20:36 +0100)
commitab69ac00f3c7a04151662813794ac82bc591a89b
tree8f06f8c8c3b867449d621d3394c9da301e5e751a
parentd858c87653257185ead1c5baf3d84cd7276dd912
Refactoring BIO: Adapt s_client and s_server

s_socket.c gets brutally cleaned out and now consists of only two
functions, one for client and the other for server.  They both handle
AF_INET, AF_INET6 and additionally AF_UNIX where supported.  The rest
is just easy adaptation.

Both s_client and s_server get the new flags -4 and -6 to force the
use of IPv4 or IPv6 only.

Also, the default host "localhost" in s_client is removed.  It's not
certain that this host is set up for both IPv4 and IPv6.  For example,
Debian has "ip6-localhost" as the default hostname for [::1].  The
better way is to default |host| to NULL and rely on BIO_lookup() to
return a BIO_ADDRINFO with the appropriate loopback address for IPv4
or IPv6 as indicated by the |family| parameter.

Reviewed-by: Kurt Roeckx <kurt@openssl.org>
apps/s_apps.h
apps/s_client.c
apps/s_server.c
apps/s_socket.c