mirror of
https://github.com/nginx/nginx.git
synced 2025-06-06 17:02:39 +08:00
Generate error for unsupported IPv6 transparent proxy.
On some platforms (for example, Linux with glibc 2.12-2.25) IPv4 transparent proxying is available, but IPv6 transparent proxying is not. The entire feature is enabled in this case and NGX_HAVE_TRANSPARENT_PROXY macro is set to 1. Previously, an attempt to enable transparency for an IPv6 socket was silently ignored in this case and was usually followed by a bind(2) EADDRNOTAVAIL error (ticket #1487). Now the error is generated for unavailable IPv6 transparent proxy.
This commit is contained in:
parent
bcda92e843
commit
dd7dba520c
@ -388,7 +388,16 @@ ngx_event_connect_set_transparent(ngx_peer_connection_t *pc, ngx_socket_t s)
|
|||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
ngx_log_error(NGX_LOG_ALERT, pc->log, 0,
|
||||||
|
"could not enable transparent proxying for IPv6 "
|
||||||
|
"on this platform");
|
||||||
|
|
||||||
|
return NGX_ERROR;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#endif /* NGX_HAVE_INET6 */
|
#endif /* NGX_HAVE_INET6 */
|
||||||
|
Loading…
Reference in New Issue
Block a user