Date: Sun, 27 Oct 2002 22:38:36 -0500 From: Craig Rodrigues <rodrigc@attbi.com> To: Manfred Antar <null@pozo.com> Cc: current@freebsd.org, des@freebsd.org Subject: Re: Latest fetch on current broken Message-ID: <20021027223836.A51789@attbi.com> In-Reply-To: <20021027222102.A51684@attbi.com>; from rodrigc@attbi.com on Sun, Oct 27, 2002 at 10:21:02PM -0500 References: <5.1.1.6.2.20021027153430.00a796a8@pozo.com> <5.1.1.6.2.20021027153430.00a796a8@pozo.com> <20021027212702.A51436@attbi.com> <5.1.1.6.2.20021027183013.00abaec0@pozo.com> <20021027222102.A51684@attbi.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Oct 27, 2002 at 10:21:02PM -0500, Craig Rodrigues wrote:
> On Sun, Oct 27, 2002 at 06:31:27PM -0800, Manfred Antar wrote:
> > I noticed it when doing a portupgrade cdrtools
> > So yes anything that uses fetch is not going to work
>
> OK, I started tracing this down.
>
> Here's how to get debugging versions:
> cd /usr/src/lib/libfetch
> make clean
> make DEBUG_FLAGS=-g
> make DEBUG_FLAGS=-g install
>
> cd /usr/src/usr.bin/fetch
> make clean
> make DEBUG_FLAGS=-g NOSHARED=yes
> make DEBUG_FLAGS=-g NOSHARED=yes install
I tracked this down further to the _fetch_writev() function
in libfetch/common.c. Try this patch:
--- lib/libfetch/common.c.orig Sun Oct 27 22:38:16 2002
+++ lib/libfetch/common.c Sun Oct 27 22:40:12 2002
@@ -525,7 +525,7 @@
return (-1);
}
total += wlen;
- while (iovcnt > 0 && wlen > iov->iov_len) {
+ while (iovcnt > 0 && wlen >= iov->iov_len) {
wlen -= iov->iov_len;
iov++;
iovcnt--;
--
Craig Rodrigues
http://www.gis.net/~craigr
rodrigc@attbi.com
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021027223836.A51789>
