Initialize buffer before calling res_ninit
authorRuss Allbery <rra@stanford.edu>
Sun, 8 Oct 2006 03:22:48 +0000 (03:22 +0000)
committerRuss Allbery <rra@stanford.edu>
Sun, 8 Oct 2006 03:22:48 +0000 (03:22 +0000)
Per Paul Vixie: It is necessary to zero out the statbuf before calling
res_ninit(), or else res_vinit() will call res_nclose() and res_ndestroy()
with stack trash as a statbuf, and they will call free() with stack trash,
and programs will dump core.

Ticket: new
Component: krb5-libs
Version_Reported: 1.5.1
Target_Version: 1.5.2
Tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@18669 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/os/dnsglue.c

index ef8b08783070f185b1794df1eaa18e0a634ae24d..7a6583ca0cabd70f139cca5f62d174d96c1bde76 100644 (file)
@@ -100,6 +100,7 @@ krb5int_dns_init(struct krb5int_dns_state **dsp,
 #endif
 
 #if USE_RES_NINIT
+    memset(&statbuf, 0, sizeof(statbuf));
     ret = res_ninit(&statbuf);
 #else
     ret = res_init();