[prev in list] [next in list] [prev in thread] [next in thread] 

List:       krb5-cvs
Subject:    krb5 commit: Fix null dereference qualifying short hostnames
From:       Greg Hudson <ghudson () mit ! edu>
Date:       2020-03-05 18:49:11
Message-ID: 202003051849.025InBGf000910 () drugstore ! mit ! edu
[Download RAW message or body]

https://github.com/krb5/krb5/commit/cd82bf377e7fad2409c76bf8b241920692f34fda
commit cd82bf377e7fad2409c76bf8b241920692f34fda
Author: Greg Hudson <ghudson@mit.edu>
Date:   Tue Mar 3 12:27:02 2020 -0500

    Fix null dereference qualifying short hostnames
    
    Fix the dnsglue.c PRIMARY_DOMAIN macro not to call strdup() with a
    null pointer if no DNS search path is configured.
    
    ticket: 8881
    tags: pullup
    target_version: 1.18-next

 src/lib/krb5/os/dnsglue.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/lib/krb5/os/dnsglue.c b/src/lib/krb5/os/dnsglue.c
index e35ca9d..0cd213f 100644
--- a/src/lib/krb5/os/dnsglue.c
+++ b/src/lib/krb5/os/dnsglue.c
@@ -91,7 +91,7 @@ static int initparse(struct krb5int_dns_state *);
 #define DECLARE_HANDLE(h) struct __res_state h
 #define INIT_HANDLE(h) (memset(&h, 0, sizeof(h)), res_ninit(&h) == 0)
 #define SEARCH(h, n, c, t, a, l) res_nsearch(&h, n, c, t, a, l)
-#define PRIMARY_DOMAIN(h) strdup(h.dnsrch[0])
+#define PRIMARY_DOMAIN(h) ((h.dnsrch[0] == NULL) ? NULL : strdup(h.dnsrch[0]))
 #if HAVE_RES_NDESTROY
 #define DESTROY_HANDLE(h) res_ndestroy(&h)
 #else
@@ -104,7 +104,8 @@ static int initparse(struct krb5int_dns_state *);
 #define DECLARE_HANDLE(h)
 #define INIT_HANDLE(h) (res_init() == 0)
 #define SEARCH(h, n, c, t, a, l) res_search(n, c, t, a, l)
-#define PRIMARY_DOMAIN(h) strdup(_res.defdname)
+#define PRIMARY_DOMAIN(h) \
+    ((_res.defdname == NULL) ? NULL : strdup(_res.defdname))
 #define DESTROY_HANDLE(h)
 
 #endif
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic