diff options
author | Edwin Groothuis <edwin@FreeBSD.org> | 2004-01-03 05:42:42 +0000 |
---|---|---|
committer | Edwin Groothuis <edwin@FreeBSD.org> | 2004-01-03 05:42:42 +0000 |
commit | c90d26d28be378f475403b46a97ec57b659c35a4 (patch) | |
tree | b0d3520716f948f20bfa41ae842b6ac6def52125 /dns/dnrd/Makefile | |
parent | e5e3f3c4030b3266b6db1d28ada7eeda354b5ac1 (diff) |
dns/dnrd: recv_addr init wrong and 512 byte udp packets dropped
There are a few bugs in dnrd that should probably be fixed
by the author but could be made to work on bsd:
1. Initialization in common.h of recv_addr is broken,
causing at least the '-a' switch not to work. Instead of
assuming positions of fields in the struct across platforms
I thought it safer to do a standard initialization in main().
2. The buffer overflow code in udp.c:dnsrecv() is off by
one, rejecting messages where the size exactly fills the
available buffer. I also changed to the calls to dnsrecv
to pass 512 as the max size instead of the buffers that
seem to be padded by 4 bytes for a reason I don't understand.
This causes a calling named to resend packets. Eventually
one seems to get through but response times can be painfully
slow.
PR: ports/41128
Submitted by: Michael C. Adler <mad1@tapil.com>
Notes
Notes:
svn path=/head/; revision=97158
Diffstat (limited to 'dns/dnrd/Makefile')
-rw-r--r-- | dns/dnrd/Makefile | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/dns/dnrd/Makefile b/dns/dnrd/Makefile index fae1faf62c38..2080ced9f402 100644 --- a/dns/dnrd/Makefile +++ b/dns/dnrd/Makefile @@ -7,6 +7,7 @@ PORTNAME= dnrd PORTVERSION= 2.10 +PORTREVISION= 1 CATEGORIES= dns MASTER_SITES= http://users.zoominternet.net/~garsh/dnrd/archive/ \ http://www.netsw.org/net/ip/infoservice/dns/dnrd/ @@ -17,15 +18,17 @@ COMMENT= A proxy DNS daemon WRKSRC= ${WRKDIR}/${DISTNAME}/src USE_GMAKE= yes -USE_REINPLACE= yes +USE_REINPLACE= yes MAN8= dnrd.8 post-patch: .for F in main.c master.c - @(cd ${WRKSRC} && ${SED} -e 's,%%PREFIX%%,${PREFIX},g' $F > foo && \ - ${MV} foo $F) + ${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},g' ${WRKSRC}/$F .endfor - ${REINPLACE_CMD} -e "s@cc@${CC}@g; s@-lc_r@${PTHREAD_LIBS}@g" ${WRKSRC}/Makefile + ${REINPLACE_CMD} \ + -e "s,cc,${CC},g" \ + -e "s,-lc_r,${PTHREAD_LIBS},g" \ + ${WRKSRC}/Makefile .include <bsd.port.mk> |