diff options
author | deraadt <> | 1997-01-30 05:56:06 +0000 |
---|---|---|
committer | deraadt <> | 1997-01-30 05:56:06 +0000 |
commit | 313abe3380c1d987d8e34b2904057c40d711e706 (patch) | |
tree | 5c2cfce9482a504f430145f1909026f199daf57c /src/lib | |
parent | eb7f24371ddbc94cfb1137e3cb964f8a29b4b42c (diff) | |
download | openbsd-313abe3380c1d987d8e34b2904057c40d711e706.tar.gz openbsd-313abe3380c1d987d8e34b2904057c40d711e706.tar.bz2 openbsd-313abe3380c1d987d8e34b2904057c40d711e706.zip |
careful about MAXADDRS, abrown@eecs.harvard.edu
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/libc/net/gethostnamadr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/libc/net/gethostnamadr.c b/src/lib/libc/net/gethostnamadr.c index 6d5124d308..83e0225a65 100644 --- a/src/lib/libc/net/gethostnamadr.c +++ b/src/lib/libc/net/gethostnamadr.c | |||
@@ -52,7 +52,7 @@ | |||
52 | */ | 52 | */ |
53 | 53 | ||
54 | #if defined(LIBC_SCCS) && !defined(lint) | 54 | #if defined(LIBC_SCCS) && !defined(lint) |
55 | static char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.12 1996/09/28 13:26:34 deraadt Exp $"; | 55 | static char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.13 1997/01/30 05:56:06 deraadt Exp $"; |
56 | #endif /* LIBC_SCCS and not lint */ | 56 | #endif /* LIBC_SCCS and not lint */ |
57 | 57 | ||
58 | #include <sys/param.h> | 58 | #include <sys/param.h> |
@@ -195,6 +195,8 @@ getanswer(answer, anslen, iquery) | |||
195 | *hap = NULL; | 195 | *hap = NULL; |
196 | host.h_addr_list = h_addr_ptrs; | 196 | host.h_addr_list = h_addr_ptrs; |
197 | haveanswer = 0; | 197 | haveanswer = 0; |
198 | if (ancount > MAXADDRS) | ||
199 | ancount = MAXADDRS; | ||
198 | while (--ancount >= 0 && cp < eom) { | 200 | while (--ancount >= 0 && cp < eom) { |
199 | if ((n = dn_expand((u_char *)answer->buf, (u_char *)eom, | 201 | if ((n = dn_expand((u_char *)answer->buf, (u_char *)eom, |
200 | (u_char *)cp, bp, buflen)) < 0) | 202 | (u_char *)cp, bp, buflen)) < 0) |