commit | be4e18d619edcc8f09534a4ec84428cf23b09a13 | [log] [tgz] |
---|---|---|
author | Ken Chen <cken@google.com> | Sun Aug 30 06:02:02 2020 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Sun Aug 30 06:02:02 2020 +0000 |
tree | 3b2683ba5691ba3c45cb2e12421650638f0584f9 | |
parent | 7b11b0332e2c2778a91e4b0c7a366f74ec648f95 [diff] | |
parent | cf6b3ecd4d9036e8b84489549441c86d1576a796 [diff] |
Fix OOB read in DNS resolver am: 43264bc365 am: c5ea7569a8 am: 2c2546b158 am: cf6b3ecd4d Original change: https://googleplex-android-review.googlesource.com/c/platform/bionic/+/12329970 Change-Id: I0a108632f55b67081192710ce9dbf347d580e35d
diff --git a/libc/dns/resolv/res_send.c b/libc/dns/resolv/res_send.c index a645a6b..fa81e6d 100644 --- a/libc/dns/resolv/res_send.c +++ b/libc/dns/resolv/res_send.c
@@ -948,6 +948,8 @@ else break; } + // return size should never exceed container size + resplen = anssiz; } /* * If the calling applicating has bailed out of @@ -960,7 +962,7 @@ DprintQ((statp->options & RES_DEBUG) || (statp->pfcode & RES_PRF_REPLY), (stdout, ";; old answer (unexpected):\n"), - ans, (resplen > anssiz) ? anssiz: resplen); + ans, resplen); goto read_len; }