]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
test for ancillary data and fixes for lint and doxygen.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 15 Jan 2008 10:10:22 +0000 (10:10 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 15 Jan 2008 10:10:22 +0000 (10:10 +0000)
git-svn-id: file:///svn/unbound/trunk@848 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
testcode/readhex.h
testdata/fwd_ancil.tpkg [new file with mode: 0644]
util/net_help.h
util/netevent.c
validator/val_nsec3.h

index bd39ccd59b216b0b029d347048d02d37920c0022..1178c8c4f11b03c6102671383373784140afd87e 100644 (file)
@@ -1,5 +1,7 @@
 15 January 2008: Wouter
        - interface-automatic feature. experimental. Nice for anycast.
+       - tpkg test for ip6 ancillary data.
+       - removed debug prints.
 
 14 January 2008: Wouter
        - in no debug sets NDEBUG to remove asserts.
index 599bc4e6fed82f1f732d19939cbc15ca99b2af28..bdd9aee5208d4ec9dd1655afd91e5b8fad243785 100644 (file)
 #ifndef TESTCODE_READHEX_H
 #define TESTCODE_READHEX_H
 
-/** helper to convert hex string to packet buffer */
+/** 
+ * Helper to convert hex string to packet buffer.
+ * @param pkt: buffer to put result in.
+ * @param hex: string of hex data. Spaces and ';...' comments are skipped.
+ */
 void hex_to_buf(ldns_buffer* pkt, const char* hex);
 
 #endif /* TESTCODE_READHEX_H */
diff --git a/testdata/fwd_ancil.tpkg b/testdata/fwd_ancil.tpkg
new file mode 100644 (file)
index 0000000..e8eaac0
Binary files /dev/null and b/testdata/fwd_ancil.tpkg differ
index e70502cd645dce0dd897bec526a80f16ee20ea62..a34be2484c772eed2b766599f851e3345f9c1a15 100644 (file)
@@ -245,7 +245,7 @@ int addr_is_ip6(struct sockaddr_storage* addr, socklen_t len);
  * Make sure the sockaddr ends in zeroes. For tree insertion and subsequent
  * comparison.
  * @param addr: the ip4 or ip6 addr.
- * @Param len: lentgh of addr.
+ * @param len: length of addr.
  * @param net: number of bits to leave untouched, the rest of the netblock
  *     address is zeroed.
  */
index 77b5ed7efdf101f523e03b54558b2119fe43c4fe..019b8887c7027ea06168097fcf3a30c8a86cfe84 100644 (file)
@@ -201,20 +201,22 @@ comm_point_send_udp_msg_if(struct comm_point *c, ldns_buffer* packet,
        msg.msg_iov = iov;
        msg.msg_iovlen = 1;
        msg.msg_control = control;
+#ifndef S_SPLINT_S
        msg.msg_controllen = sizeof(control);
+#endif /* S_SPLINT_S */
        msg.msg_flags = 0;
 
        cmsg = CMSG_FIRSTHDR(&msg);
+#ifndef S_SPLINT_S
        cmsg->cmsg_level = IPPROTO_IPV6;
        cmsg->cmsg_type = IPV6_PKTINFO;
        cmsg->cmsg_len = CMSG_LEN(sizeof(struct in6_pktinfo));
        memset(&((struct in6_pktinfo*)CMSG_DATA(cmsg))->ipi6_addr, 0,
                sizeof(struct in6_addr));
-       ((struct in6_pktinfo*)CMSG_DATA(cmsg))->ipi6_ifindex = 
-               (TYPE_MSGIOVLEN)ifnum;
+       ((struct in6_pktinfo*)CMSG_DATA(cmsg))->ipi6_ifindex = ifnum;
        msg.msg_controllen = cmsg->cmsg_len;
+#endif /* S_SPLINT_S */
 
-       log_info("using interface to sendmsg %d", ifnum);
        sent = sendmsg(c->fd, &msg, 0);
        if(sent == -1) {
                verbose(VERB_OPS, "sendto failed: %s", strerror(errno));
@@ -240,7 +242,9 @@ comm_point_udp_ancil_callback(int fd, short event, void* arg)
        struct iovec iov[1];
        ssize_t recv;
        char ancil[256];
+#ifndef S_SPLINT_S
        struct cmsghdr* cmsg;
+#endif /* S_SPLINT_S */
 
        rep.c = (struct comm_point*)arg;
        log_assert(rep.c->type == comm_udp);
@@ -259,7 +263,9 @@ comm_point_udp_ancil_callback(int fd, short event, void* arg)
        msg.msg_iov = iov;
        msg.msg_iovlen = 1;
        msg.msg_control = ancil;
+#ifndef S_SPLINT_S
        msg.msg_controllen = sizeof(ancil);
+#endif /* S_SPLINT_S */
        msg.msg_flags = 0;
        recv = recvmsg(fd, &msg, 0);
        if(recv == -1) {
@@ -272,16 +278,17 @@ comm_point_udp_ancil_callback(int fd, short event, void* arg)
        ldns_buffer_skip(rep.c->buffer, recv);
        ldns_buffer_flip(rep.c->buffer);
        rep.ifnum = 0;
+#ifndef S_SPLINT_S
        for(cmsg = CMSG_FIRSTHDR(&msg); cmsg != NULL;
                cmsg = CMSG_NXTHDR(&msg, cmsg)) {
                if( cmsg->cmsg_level == IPPROTO_IPV6 &&
                        cmsg->cmsg_type == IPV6_PKTINFO) {
-                       rep.ifnum = (int)((struct in6_pktinfo*)CMSG_DATA(
-                               cmsg))->ipi6_ifindex;
+                       rep.ifnum = ((struct in6_pktinfo*)CMSG_DATA(cmsg))->
+                               ipi6_ifindex;
                        /* ignored ipi6_addr with the dest ipv6 address */
                }
        }
-       log_info("recvmsg if %d", rep.ifnum);
+#endif /* S_SPLINT_S */
        log_assert(fptr_whitelist_comm_point(rep.c->callback));
        if((*rep.c->callback)(rep.c, rep.c->cb_arg, NETEVENT_NOERROR, &rep)) {
                /* send back immediate reply */
index bf7069277b19d7e08ed93eb93292c36a70e3a2b3..a31c6e190e8a68697d623e04d40ce1276f0985d7 100644 (file)
@@ -243,6 +243,9 @@ struct nsec3_cached_hash {
 
 /**
  * Rbtree for hash cache comparison function
+ * @param c1: key 1.
+ * @param c2: key 2.
+ * @return comparison code, -1, 0, 1, of the keys.
  */
 int nsec3_hash_cmp(const void* c1, const void* c2);