Upstream: only call peer.free() if peer.get() selected a peer.
Upstream: removed double-free workarounds in peer.free() methods.
Mail: IPv6 backends (ticket #323).
Upstream: removed sorting of upstream servers.

Sorting of upstream servers by their weights is not required by
current balancing algorithms.

This will likely change mapping to backends served by ip_hash
weighted upstreams.
Upstream: removed rudiments of upstream connection caching.

This functionality is now provided by ngx_http_upstream_keepalive_module.
Use NGX_FILE_ERROR for handling file operations errors.

On Win32 platforms 0 is used to indicate errors in file operations, so
comparing against either -1 or NGX_OK is not portable.

This was not much of an issue in patched code, since only ngx_fd_info() test
is actually reachable on Win32 and in worst case it might result in bogus
error log entry.

Patch by Piotr Sikora.
nginx-1.3.15-RELEASE