diff options
author | Florian Weimer <fweimer@redhat.com> | 2017-09-06 15:32:43 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2017-09-06 15:32:43 +0200 |
commit | a83047308196e3e54716a39dd85c0a08b198d6bd (patch) | |
tree | 83d0c12c597f1b426c0c6b843763a64560c0a12a | |
parent | 5670c4ab256114e869b1df4b05653aa5f909182c (diff) | |
download | glibc-a83047308196e3e54716a39dd85c0a08b198d6bd.tar.gz glibc-a83047308196e3e54716a39dd85c0a08b198d6bd.tar.xz glibc-a83047308196e3e54716a39dd85c0a08b198d6bd.zip |
resolv: __resolv_conf_attach must not free passed conf object [BZ #22096]
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | resolv/resolv_conf.c | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 298f0fdcbd..6150ba16d6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2017-09-06 Florian Weimer <fweimer@redhat.com> + [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 <fweimer@redhat.com> + [BZ #22095] * resolv/res_init.c (res_vinit_1): Avoid memory leak in case of dynarray allocation failure. diff --git a/resolv/resolv_conf.c b/resolv/resolv_conf.c index f391d30c27..e0f296d02e 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; |