Date: Mon, 2 Jul 2001 04:57:12 -0700 (PDT) From: Chris Myers <chris@by-design.net> To: freebsd-gnats-submit@FreeBSD.org Subject: misc/28629: ftpd REST command does not support restarting files at >2^31 bytes (2GB) Message-ID: <200107021157.f62BvCR39420@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 28629 >Category: misc >Synopsis: ftpd REST command does not support restarting files at >2^31 bytes (2GB) >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jul 02 05:00:06 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Chris Myers >Release: 4.3-RELEASE >Organization: Networks By Design >Environment: FreeBSD connected.by-design.net 4.3-RELEASE FreeBSD 4.3-RELEASE #0: Sat Apr 21 10:54:49 GMT 2001 jkh@narf.osd.bsdi.com:/usr/src/sys/compile/GENERIC i386 >Description: The restart (REST) command does not properly support large (>2GB) files. If the restart point is greater than (2^31)-1 bytes, it will be set to (2^31)-1 and a "success" return code will be given to the FTP client program. The result is that if a user attempts to restart an FTP at the 2GB point or higher, the file will be corrupted. >How-To-Repeat: telnet localhost ftp user <username> pass <password> rest 3000000000 >Fix: The restart location in ftpd.c is (correctly) an off_t (a uint_64). In ftpcmd.y, it is a signed int. Change the parameter to REST from type int to type string and use strtoll() to convert it to a uint_64. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200107021157.f62BvCR39420>