Perhaps IO::Socket::SSL is smarter than the documentation indicates.
In the documentation for start_SSL: "Using PeerHost or PeerAddr works
only if you create the connection directly with IO::Socket::SSL->new, if
an IO::Socket::INET object is upgraded with start_SSL the name has to be
given in SSL_verifycn_name."
Well, I don't see that HTTP::Tiny provides SSL_verifycn_name in the
start_SSL call that upgrades the IO::Socket::INET object - but I also
don't notice any problems because of it.