This enables the balancer to return a host-header.
So far the returned "host" was always the name of the host as it was added to the balancer by calling addHost(). With this PR there is a change between the Host as added and the host-header to be used on a request.
getPeer() will return the host-header instead of the name. The breaking change here is that if the name as added is an IP address, then the host-header returned will be nil. Otherwise, with all defaults everything will be the same.
the balancer gets a new option useSRVname (false by default), which if set, will instruct the returned Host-header to be the name inside an SRV record. If not and SRV record, then it will return the hostname as added to the balancer (as before).
the callback for adding/removing addresses gets an extra argument; the host-header (because it is additional it will get the hostname, as well as the host-header)
This enables the balancer to return a host-header.
So far the returned "host" was always the name of the host as it was added to the balancer by calling
addHost()
. With this PR there is a change between the Host as added and the host-header to be used on a request.getPeer()
will return the host-header instead of the name. The breaking change here is that if the name as added is an IP address, then the host-header returned will benil
. Otherwise, with all defaults everything will be the same.useSRVname
(false
by default), which if set, will instruct the returned Host-header to be the name inside an SRV record. If not and SRV record, then it will return the hostname as added to the balancer (as before).