Fix NULL pointer dereference in send_udp_info
authorthorkill <thkr@hannover.ccc.de>
Thu, 4 May 2017 21:44:56 +0000 (23:44 +0200)
committerGuus Sliepen <guus@tinc-vpn.org>
Sat, 6 May 2017 10:38:45 +0000 (12:38 +0200)
src/protocol_misc.c

index 95bd322..5bbdc6c 100644 (file)
@@ -194,6 +194,11 @@ bool send_udp_info(node_t *from, node_t *to) {
           farther than the static relay. */
        to = (to->via == myself) ? to->nexthop : to->via;
 
+       if (to == NULL) {
+               logger(DEBUG_ALWAYS, LOG_ERR, "Something went wrong when selecting relay - possible fake UDP_INFO");
+               return false;
+       }
+
        /* Skip cases where sending UDP info messages doesn't make sense.
           This is done here in order to avoid repeating the same logic in multiple callsites. */