]> git.kaiwu.me - nginx.git/commitdiff
Configure: disabled IP_PKTINFO feature on certain platforms.
authorRoman Arutyunyan <arut@nginx.com>
Thu, 1 Jun 2017 12:44:23 +0000 (15:44 +0300)
committerRoman Arutyunyan <arut@nginx.com>
Thu, 1 Jun 2017 12:44:23 +0000 (15:44 +0300)
On Cygwin and NetBSD 7.0+ struct in_pktinfo has no ipi_spec_dst field, which
caused nginx compilation error.  Now presence of this field is ensured by the
IP_PKTINFO feature test.

The problem was introduced by dbb0c854e308 (1.13.0).

auto/unix

index 7c6a8550d436e8457301b1718839880c89b26d54..10835f6cc4e4d67a00c9f0ee2aae3e52177d8b90 100644 (file)
--- a/auto/unix
+++ b/auto/unix
@@ -428,7 +428,10 @@ ngx_feature_incs="#include <sys/socket.h>
                   #include <netinet/in.h>"
 ngx_feature_path=
 ngx_feature_libs=
-ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_PKTINFO, NULL, 0)"
+ngx_feature_test="struct in_pktinfo  pkt;
+                  pkt.ipi_spec_dst.s_addr = INADDR_ANY;
+                  (void) pkt;
+                  setsockopt(0, IPPROTO_IP, IP_PKTINFO, NULL, 0)"
 . auto/feature