]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- fix netbsd interface_automatic complain about unimplemented.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 26 Jan 2016 16:14:28 +0000 (16:14 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 26 Jan 2016 16:14:28 +0000 (16:14 +0000)
git-svn-id: file:///svn/unbound/trunk@3609 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
util/netevent.c

index c778a16164139ec970fcaa16057688cc0dc8caa3..4f648eaf93774a17b6c06cd0d2a2d55e1fa9c6fb 100644 (file)
@@ -3,6 +3,8 @@
        - Use arc4random instead of random in tests (because it is
          available, possibly as compat, anyway).
        - Fix cmsg alignment for argument to sendmsg on NetBSD.
+       - Fix that unbound complains about unimplemented IP_PKTINFO for
+         sendmsg on NetBSD (for interface-automatic).
 
 25 January 2016: Wouter
        - Fix #738: Swig should not be invoked with CPPFLAGS.
index 1f182a025b8e95f8443ed764f60eee3ea027e026..f198b8bc4308a678ba3eb9bbfcc132ed0072014d 100644 (file)
@@ -559,6 +559,12 @@ comm_point_send_udp_msg_if(struct comm_point *c, sldns_buffer* packet,
                verbose(VERB_OPS, "sendmsg failed: %s", strerror(errno));
                log_addr(VERB_OPS, "remote address is", 
                        (struct sockaddr_storage*)addr, addrlen);
+#ifdef __NetBSD__
+               /* netbsd 7 has IP_PKTINFO for recv but not send */
+               if(errno == EINVAL && r->srctype == 4)
+                       fatal_exit("sendmsg: No support for sendmsg(IP_PKTINFO). "
+                               "Please disable interface-automatic");
+#endif
                return 0;
        } else if((size_t)sent != sldns_buffer_remaining(packet)) {
                log_err("sent %d in place of %d bytes",