From owner-freebsd-current Wed Jan 31 3:14:15 2001 Delivered-To: freebsd-current@freebsd.org Received: from shadowmere.student.utwente.nl (wit401305.student.utwente.nl [130.89.236.145]) by hub.freebsd.org (Postfix) with ESMTP id 7707E37B6A3 for ; Wed, 31 Jan 2001 03:13:55 -0800 (PST) Received: by shadowmere.student.utwente.nl (Postfix, from userid 1000) id 671122060; Wed, 31 Jan 2001 12:13:54 +0100 (CET) Date: Wed, 31 Jan 2001 12:13:54 +0100 From: Pascal Hofstee To: freebsd-current@freebsd.org Subject: Re: Bug in tftpd ? Message-ID: <20010131121353.A21533@shadowmere.student.utwente.nl> Reply-To: daeron@shadowmere.student.utwente.nl References: <20010131002024.A77116@shadowmere.student.utwente.nl> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="sdtB3X0nJg68CQEu" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010131002024.A77116@shadowmere.student.utwente.nl>; from daeron@shadowmere.student.utwente.nl on Wed, Jan 31, 2001 at 12:20:24AM +0100 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG --sdtB3X0nJg68CQEu Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Patches attached: Obtained from: NetBSD (Committed there about 3 months ago after we first spotted the problem in their implementation) -- Pascal Hofstee < daeron @ shadowmere . student . utwente . nl > begin LOVE-LETTER-FOR-YOU.TXT.vbs I'm a signature virus. Please copy me and help me spread. end --sdtB3X0nJg68CQEu Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tftpd.patch" --- tftpd.8.orig Wed Jan 31 11:59:57 2001 +++ tftpd.8 Wed Jan 31 12:04:55 2001 @@ -192,3 +192,9 @@ .Fl c option was introduced in .Fx 5.0 . +.Sh BUGS +Files larger than 33488896 octets (65535 blocks) cannot be transferred +without client and server supporting blocksize negotiation (RFC1783). +.Pp +Many tftp clients will not transfer files over 16744448 octets (32767 blocks). + --- tftpd.c.orig Wed Jan 31 11:55:53 2001 +++ tftpd.c Wed Jan 31 11:58:00 2001 @@ -501,7 +501,7 @@ struct tftphdr *dp, *r_init(); register struct tftphdr *ap; /* ack packet */ register int size, n; - volatile int block; + volatile unsigned int block; signal(SIGALRM, timer); dp = r_init(); @@ -571,7 +571,7 @@ struct tftphdr *dp, *w_init(); register struct tftphdr *ap; /* ack buffer */ register int n, size; - volatile int block; + volatile unsigned int block; signal(SIGALRM, timer); dp = w_init(); --sdtB3X0nJg68CQEu-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message