Fix crash when empty address from DNS overlays A record from hosts 47/131947/1 accepted/tizen/unified/20170602.154229 submit/tizen/20170601.042236
authorSeonah Moon <seonah1.moon@samsung.com>
Wed, 31 May 2017 09:29:46 +0000 (18:29 +0900)
committerSeonah Moon <seonah1.moon@samsung.com>
Wed, 31 May 2017 09:29:51 +0000 (18:29 +0900)
Upstream patch is backported to resolve CVE-2015-8899
http://thekelleys.org.uk/gitweb/?p=dnsmasq.git;a=commit;h=41a8d9e99be9f2cc8b02051dd322cb45e0faac87

Change-Id: I1024adcb4b563130a1656edcb1e093c2e28e8cea
Signed-off-by: Seonah Moon <seonah1.moon@samsung.com>
src/cache.c

index 178d654..1b76b67 100644 (file)
@@ -481,7 +481,7 @@ struct crec *cache_insert(char *name, struct all_addr *addr,
         existing record is for an A or AAAA and
         the record we're trying to insert is the same, 
         just drop the insert, but don't error the whole process. */
-      if ((flags & (F_IPV4 | F_IPV6)) && (flags & F_FORWARD))
+      if ((flags & (F_IPV4 | F_IPV6)) && (flags & F_FORWARD) && addr)
        {
          if ((flags & F_IPV4) && (new->flags & F_IPV4) &&
              new->addr.addr.addr.addr4.s_addr == addr->addr.addr4.s_addr)