Fix receiving UDP packets from tinc 1.0.x nodes.
authorGuus Sliepen <guus@tinc-vpn.org>
Thu, 14 May 2015 22:21:48 +0000 (00:21 +0200)
committerGuus Sliepen <guus@tinc-vpn.org>
Thu, 14 May 2015 22:21:48 +0000 (00:21 +0200)
In try_mac(), the wrong offsets were used into the packet buffer,
causing the digest verification to always fail.

src/net_packet.c

index 1fdc0fe..f734af2 100644 (file)
@@ -260,7 +260,7 @@ static bool try_mac(node_t *n, const vpn_packet_t *inpkt) {
        if(!n->status.validkey_in || !digest_active(n->indigest) || inpkt->len < sizeof(seqno_t) + digest_length(n->indigest))
                return false;
 
-       return digest_verify(n->indigest, SEQNO(inpkt), inpkt->len - digest_length(n->indigest), DATA(inpkt) + inpkt->len - digest_length(n->indigest));
+       return digest_verify(n->indigest, inpkt->data, inpkt->len - digest_length(n->indigest), inpkt->data + inpkt->len - digest_length(n->indigest));
 #endif
 }