diff options
Diffstat (limited to 'main/libc0.9.32/uclibc-resolv-cname-fix.diff')
-rw-r--r-- | main/libc0.9.32/uclibc-resolv-cname-fix.diff | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/main/libc0.9.32/uclibc-resolv-cname-fix.diff b/main/libc0.9.32/uclibc-resolv-cname-fix.diff new file mode 100644 index 0000000000..cf5e777f7e --- /dev/null +++ b/main/libc0.9.32/uclibc-resolv-cname-fix.diff @@ -0,0 +1,19 @@ +diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c +index 1e394d4..03d68fe 100644 +--- a/libc/inet/resolv.c ++++ b/libc/inet/resolv.c +@@ -3099,11 +3099,9 @@ int res_query(const char *dname, int class, int type, + + free(a.dotted); + +- if (a.atype == type) { /* CNAME */ +- if (i > anslen) +- i = anslen; +- memcpy(answer, packet, i); +- } ++ i = MIN(anslen, i); ++ memcpy(answer, packet, i); ++ + free(packet); + return i; + } |