From: Florian Weimer Date: Wed, 6 Sep 2017 13:32:43 +0000 (+0200) Subject: resolv: __resolv_conf_attach must not free passed conf object [BZ #22096] X-Git-Tag: glibc-2.27~956 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a83047308196e3e54716a39dd85c0a08b198d6bd;p=thirdparty%2Fglibc.git resolv: __resolv_conf_attach must not free passed conf object [BZ #22096] --- diff --git a/ChangeLog b/ChangeLog index 298f0fdcbdb..6150ba16d6c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2017-09-06 Florian Weimer + + [BZ #22096] + * resolv/resolv_conf.c (__resolv_conf_attach): Do not free conf in + case of failure to obtain the global conf object. + 2017-09-06 Florian Weimer [BZ #22095] diff --git a/resolv/resolv_conf.c b/resolv/resolv_conf.c index f391d30c277..e0f296d02e0 100644 --- a/resolv/resolv_conf.c +++ b/resolv/resolv_conf.c @@ -600,10 +600,7 @@ __resolv_conf_attach (struct __res_state *resp, struct resolv_conf *conf) struct resolv_conf_global *global_copy = get_locked_global (); if (global_copy == NULL) - { - free (conf); - return false; - } + return false; /* Try to find an unused index in the array. */ size_t index;