From owner-svn-src-all@FreeBSD.ORG Mon Jun 20 08:00:33 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 44FE2106566B; Mon, 20 Jun 2011 08:00:33 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 32ABE8FC1F; Mon, 20 Jun 2011 08:00:33 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p5K80XDb030163; Mon, 20 Jun 2011 08:00:33 GMT (envelope-from gavin@svn.freebsd.org) Received: (from gavin@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p5K80XLp030158; Mon, 20 Jun 2011 08:00:33 GMT (envelope-from gavin@svn.freebsd.org) Message-Id: <201106200800.p5K80XLp030158@svn.freebsd.org> From: Gavin Atkinson Date: Mon, 20 Jun 2011 08:00:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r223328 - in head: contrib/lukemftp contrib/tnftp contrib/tnftp/src usr.bin/ftp X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jun 2011 08:00:33 -0000 Author: gavin Date: Mon Jun 20 08:00:32 2011 New Revision: 223328 URL: http://svn.freebsd.org/changeset/base/223328 Log: Merge tnftp-20100108 from the vendor branch into head. PR: bin/112288 bin/120256 bin/129014 bin/145528 MFC after: 1 month Added: head/contrib/tnftp/Makefile.am - copied unchanged from r223308, vendor/tnftp/dist/Makefile.am head/contrib/tnftp/src/Makefile.am - copied unchanged from r223308, vendor/tnftp/dist/src/Makefile.am head/contrib/tnftp/tnftp.h - copied unchanged from r223308, vendor/tnftp/dist/tnftp.h head/usr.bin/ftp/tnftp_config.h - copied, changed from r223307, head/usr.bin/ftp/config.h Deleted: head/contrib/lukemftp/ head/contrib/tnftp/FreeBSD-patchset head/contrib/tnftp/acconfig.h head/contrib/tnftp/aclocal.m4 head/contrib/tnftp/config.h.in head/contrib/tnftp/configure head/contrib/tnftp/configure.in head/contrib/tnftp/diffout head/contrib/tnftp/install-sh head/contrib/tnftp/lukemftp.h head/contrib/tnftp/src/Makefile head/usr.bin/ftp/config.h Modified: head/contrib/tnftp/COPYING (contents, props changed) head/contrib/tnftp/ChangeLog (contents, props changed) head/contrib/tnftp/INSTALL (contents, props changed) head/contrib/tnftp/Makefile.in (contents, props changed) head/contrib/tnftp/NEWS (contents, props changed) head/contrib/tnftp/README (contents, props changed) head/contrib/tnftp/THANKS (contents, props changed) head/contrib/tnftp/src/Makefile.in (contents, props changed) head/contrib/tnftp/src/cmds.c (contents, props changed) head/contrib/tnftp/src/cmdtab.c (contents, props changed) head/contrib/tnftp/src/complete.c (contents, props changed) head/contrib/tnftp/src/domacro.c (contents, props changed) head/contrib/tnftp/src/extern.h (contents, props changed) head/contrib/tnftp/src/fetch.c (contents, props changed) head/contrib/tnftp/src/ftp.1 (contents, props changed) head/contrib/tnftp/src/ftp.c (contents, props changed) head/contrib/tnftp/src/ftp_var.h (contents, props changed) head/contrib/tnftp/src/main.c (contents, props changed) head/contrib/tnftp/src/progressbar.c (contents, props changed) head/contrib/tnftp/src/progressbar.h (contents, props changed) head/contrib/tnftp/src/ruserpass.c (contents, props changed) head/contrib/tnftp/src/util.c (contents, props changed) head/contrib/tnftp/src/version.h (contents, props changed) head/contrib/tnftp/todo (contents, props changed) head/usr.bin/ftp/Makefile Directory Properties: head/contrib/tnftp/ (props changed) Modified: head/contrib/tnftp/COPYING ============================================================================== --- head/contrib/tnftp/COPYING Mon Jun 20 07:58:44 2011 (r223327) +++ head/contrib/tnftp/COPYING Mon Jun 20 08:00:32 2011 (r223328) @@ -1,4 +1,10 @@ -Copyright 1999, 2000 Luke Mewburn . All rights reserved. +$NetBSD: COPYING,v 1.7 2010/01/12 07:01:01 lukem Exp $ + +Copyright (c) 2001-2010 The NetBSD Foundation, Inc. +All rights reserved. + +This code is derived from software contributed to The NetBSD Foundation +by Simon Burge, Luke Mewburn, and Christos Zoulas. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -10,20 +16,24 @@ are met: documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgement: - This product includes software developed by Luke Mewburn. -4. The name of the author may not be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR -TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE -USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + This product includes software developed by the NetBSD + Foundation, Inc. and its contributors. +4. Neither the name of The NetBSD Foundation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + This product also contains software developed by other people, and you are advised to read the various source files to read the full details @@ -32,11 +42,13 @@ acknowledgements: This product includes software developed by the NetBSD Foundation, Inc. and its contributors. Those contributors include: + - Simon Burge - Jaromir Dolecek - Klaus Klein - Luke Mewburn - Jason R. Thorpe of the Numerical Aerospace Simulation Facility, NASA Ames Research Center. + - Christos Zoulas This product includes software developed by the University of California, Berkeley and its contributors. Those contributors include: Modified: head/contrib/tnftp/ChangeLog ============================================================================== --- head/contrib/tnftp/ChangeLog Mon Jun 20 07:58:44 2011 (r223327) +++ head/contrib/tnftp/ChangeLog Mon Jun 20 08:00:32 2011 (r223328) @@ -1,3 +1,713 @@ +$NetBSD: ChangeLog,v 1.58 2010/01/12 06:58:57 lukem Exp $ + +Tue Jan 12 06:58:15 UTC 2010 lukem + + * Release as "tnftp 20100108" + + * Rename onoff() argument "bool" to "val". + +Tue Jan 5 09:12:01 UTC 2010 lukem + + * If ARG_MAX isn't defined, use the result from sysconf(_SC_ARG_MAX). + Fixes build when using newer glibc. + + * Add libnetbsd.la to the LIBADD for libedit. + Fix provided by Adam Sampson. + +Mon Jan 4 06:28:07 UTC 2010 lukem + + * Distribute various files not shipped by default automake rules, + to use 'make dist' instead of 'cvs export'. + +Wed Dec 30 00:12:47 UTC 2009 lukem + + * Release as "tnftp 20091122" + +Sun Nov 15 10:14:44 UTC 2009 lukem + + * Merge NetBSD ftp from 20090520 to 20090915. Change: + - Rename internal getline() to get_line() to avoid + conflict with libc with former. + - Avoid a NULL dereference in an error message. + +Sat Nov 14 09:21:19 UTC 2009 lukem + + * Convert to automake & libtool. + +Sat Jun 6 07:17:38 UTC 2009 lukem + + * Release as "tnftp 20090606" + +Fri May 22 01:11:15 UTC 2009 lukem + + * configure fixes: + - Add the time.h headers to accheck_includes, for the strptime check. + - Remove the check for el_init in libedit; we're always replacing + the library and the presence of strvis() in some versions + confuses other checks. + +Wed May 20 13:47:43 UTC 2009 lukem + + * Release as "tnftp 20090520" + + * Merge NetBSD ftp from 20070722 to 20090520. Changes: + - Only attempt to el_parse() a command unknown by the default + parser if editing is enabled. + Fixes PR 38589. + - Turn off the alarmtimer before resetting the SIGALRM handler + back to SIG_DFL. + Fixes PR 35630. + - Add epsv6 and epsv to disable extended passive mode for ipv6 or + both ipv4 and ipv6 respectively. This hack is due to our + friends a Juniper Networks who break epsv in ipv6. + Should be fixed in ScreenOS 6.2.X. + - Improve parsing of chunked transfer chunks per RFC2616: + - more stringent chunk-size parsing + - ignore optional trailing ';chunk-ext' stuff, instead of barfing + - detect EOF before final \r\n. + - Use the service name to getaddrinfo() (along with the host + name), so that features such as DNS Service Discovery have a + better chance of working. + Display the service name in various status & error messages. + - Don't getservbyname() the :port component of a URL; RFC 3986 + says it's just an unsigned number, not a service name. + - Fix numerous WARNS=4 issues (-Wcast-qual -Wsign-compare). + - Fix -Wshadow issues + - Update copyrights + - Remove clause 3 and 4 from TNF licenses + - Rename HAVE_STRUCT_SOCKADDR_SA_LEN to + HAVE_STRUCT_SOCKADDR_IN_SIN_LEN to accurately reflect the + structure member being used. + - Use AF_INET instead of AF_UNSPEC as the default family if + !defined(INET6). + + * configure improvements: + - Style tweaks. + - Use AC_LANG_PROGRAM() instead of AC_LANG_SOURCE() + - Add a check for strptime() requiring separators between + conversions, and use our replacement one if it does. + +Sat Dec 20 15:28:24 UTC 2008 lukem + + * configure improvements: + - Move IPv6 check from tnftp.h to configure.ac (as per tnftpd). + - Rework option descriptions. + - Highlight when tests are for a specific option. + - Move configuration results to the end of the file. + - Display $prefix in configure results. + +Fri Aug 15 03:03:36 UTC 2008 lukem + + * Add a "Configuration results" display at the end of configure. + Cosmetic tweaks. + +Fri Feb 29 09:45:56 UTC 2008 lukem + + * Support @EXEEXT@ for Cygwin (etc). + +Mon Aug 6 04:55:19 UTC 2007 lukem + + * Release as "tnftp 20070806" + + * Add a NEWS file. + + * Reduce differences between NetBSD-ftp and local copy. + + * Merge NetBSD ftp from 20070605 to 20070722. + Changes: + - Document about:ftp and about:version. + + * Add autoconf check for (Dante) SOCKS5. + (Needs run-time testing and more portability testing.) + +Mon Jul 23 11:44:42 UTC 2007 lukem + + * Don't use non-standard: u_char u_short u_int. + Use uint32_t instead of u_int32_t. + + * Consistently use AS_CASE() and AS_IF() in configure.ac. + + * Don't use defined() with HAVE_DECL_xxx. + Use `LL' instead of `L' suffix for fallback + defines of LLONG_MIN and LLONG_MAX. + +Sun Jul 22 12:00:17 UTC 2007 lukem + + * Include if available, and provide fallback #defines. + + * Sync with lib/libc/inet/inet_pton.c 1.3: + * Sync to bind 9.3.x version + * Update ISC copyright + * Fix some lint + + * Sync with lib/libc/inet/inet_ntop.c 1.3: + * Sync to bind 9.3.x version + * Update ISC copyright + * Use socklen_t instead of size_t + * Use snprintf() instead of SPRINTF() + * Improve detection of various boundary conditions + + * Sync to NetBSD glob.h 1.21, glob.c 1.16: + * Standards compliance fix + * De-lint + * Don't overflow when DEBUG is defined. + + * Sync fgetln.c to tools/compat/fgetln.c 1.7: + * Clause 3 removal. + + * Sync to config.guess 2007-07-22, config.sub 2007-06-28. + + * Consistency tweaks in configure help strings. + + * Add check for struct sockaddr.sa_len. + Change tests for HAVE_foo to defined(HAVE_foo). + Replace HAVE_SOCKADDR_SA_LEN with HAVE_STRUCT_SOCKADDR_SA_LEN. + + * Remove pretence of supporting SOCKS for now; + no test system is available, and the old + autoconf 2.13 support wasn't upgraded to 2.61. + + * configure.ac style consistency tweaks. + Move autoconf aux files from ./ to build-aux/ + + * Remove duplicate HAVE_STRERROR replacement in tnftp.h. + +Thu Jun 7 04:47:47 UTC 2007 lukem + + * Merge NetBSD ftp from 20070510 to 20070605. Changes: + - Enforce restriction that (http) proxied URL fetchs don't + support being restarted at this time. + Addresses NetBSD Problem Report 28697. + - Display times in RFC2822 form rather than using ctime(3), + since the former is more explicit about the timezone offset. + - main: call tzset() to ensure TZ is setup for other + functions. + - remotemodtime(): use strptime() to parse the reply. + - fetch_url(): ensure struct tm is zeroed before calling + strptime(). + - Modify parse_url() to consistently strip the leading `/' + off ftp URLs. + Fixes NetBSD Problem Report 17617. + - Use 'RFCnnnn' (with leading 0) instead of 'RFC nnnn', to be + consistent with the style in the RFC index. + - Refer to RFC3916 instead of 1738 or 2732. + - Expand the list of supported RFCs in ftp(1) to contain the + document name as well. + +Fri May 11 04:39:55 UTC 2007 lukem + + * Update INSTALL and COPYING. + + * Rename HAVE_QUAD_SUPPORT to HAVE_PRINTF_LONG_LONG, and only + require support for 'long long' in that check rather than + needing sizeof(off_t)>=8, as some systems have a separate + off64_t when Large File Support is enabled. + + * config.guess: treat 'i86xen:SunOS:5.*' as 'i86pc:SunOS:5.*' + +Thu May 10 15:23:33 UTC 2007 lukem + + * Remove checks for util.h and libutil.h, and replacement for + fparseln(), since fparseln() isn't used any more. + + * Merge NetBSD ftp from 20070418 to 20070510. Changes: + - Switch from fparseln() to the internal getline() when + parsing HTTP headers. Makes ftp a bit more portable + (not needing fparseln()) at the expense of not supporting + arbitrary long header lines, which I'm not concerned about + because we don't support header line continuation either... + - Replace references from draft-ietf-ftpext-mlst-NN to RFC 3659. + - Fix misplaced const. + - Implement copy_bytes() to copy bytes from one fd to another + via the provided buffer, with optional rate-limiting and + hash-mark printing, using one loop and handle short writes. + Refactor sendrequest() and recvrequest() to use copy_data(). + Addresses NetBSD Problem Report 15943. + +Wed May 9 05:24:55 UTC 2007 lukem + + * Fix typo in poll()-based implementation of usleep() replacement. + +Wed May 9 04:58:50 UTC 2007 lukem + + * Rename configure.in to configure.ac, as the latter is the + preferred name in autoconf 2.61. + + * Convert from autoconf 2.13 to 2.61: + * Use a consistent quoting mechanism. + * Use modern autoconf macros, #define names, etc. + * Search for more header files, and only #include if found. + * Remove old-style config.h.in generation. + This may fix various tests on platforms such as FreeBSD and OS X. + + * Add -Wl,-search_paths_first to LDFLAGS on OS X (Darwin) if the + linker supports it. This is needed so we use our libedit + rather than the system one. + + XXX: SOCKS support is currently disabled until I update the + autoconf support. + +Mon Apr 23 06:04:26 UTC 2007 lukem + + * Merge NetBSD ftp from 20050610 to 20070418. Changes: + - Add '-s srcaddr'. + - Use IEC 60027-2 2^N based "KiB", "MiB" (etc) instead of + 10^n "KB", "MB", ... + - Recognize 307 redirect code. + - Suppress printing non-COMPLETE reply strings when EPSV/EPRT + fails and we fall-back to PASV/PORT. Should fix a problem + with the emacs ftp wrapper. + - Fix display of 'Continue with ' messages. + - Prevent segfaults in .netrc parsing. + - Flush stdout before each command; ftp as slave process on + a pipe should work. + - getpass() can return NULL in some implementations; cope. + - Support '-q quittime' when waiting for server replies. + - Various spelling & grammatical fixes in the manual. + - Plug some memory leaks. + - If a file upload (via -u) fails, return an non-zero exit + value based on the index of the file that caused the + problem (a la auto-fetch retrieval). + - Coverity fixes for CIDs: 873 874 875 1447 1448 2194 2195 3610 + - Don't remove trailing character during auth_url() + - Fix progressbar display on narrow terminals (<43 columns) + +Fri Mar 16 06:00:14 UTC 2007 lukem + + * Change the return value of the replacement gai_strerror() + from "char *" to "const char *", to match the current + standards. + Problem noted by Thomas Klausner. + +Thu Oct 26 07:24:22 UTC 2006 lukem + + * Correctly parse "AM" and "PM" in the replacement strptime(). + Problem noted by Kathryn Hogg. + +Sat Jun 25 06:27:00 UTC 2005 lukem + + * Release as "tnftp 20050625" + + * Simplify the detection & replacement of dirname() and fparseln() + and just use AC_REPLACE_FUNCS. + (We don't care if the vendor has a working version in -lgen or -lutil + instead of -lc; they'll get our replacement version in that case). + Fixes build issue on older Darwin where the previous autoconf check + wouldn't find dirname() in the default system libraries. + + * Only provide a prototype for dirname() if we can't find one in + + + * Search for NS_IN6ADDRSZ instead of IN6ADDRSZ, since we use the + former and not the latter and older Darwin has the former. + (This allows INET6 support to be enabled on Darwin 7.9.0) + +Mon Jun 13 09:22:13 UTC 2005 lukem + + * Tweak SOCKS5 support: + acconfig.h: + - fix a comment + - ensure close() is replaced + - list entries in the same order as aclocal.m4 + (and the SOCKS5 FAQ) + aclocal.m4: + - ensure getpeername() is replaced + - don't replace listen() twice + +Fri Jun 10 04:39:33 UTC 2005 lukem + + * Release as "tnftp 20050610" + + * Add dependencies on ${srcdir}/../tnftp.h and ../config.h + + * Merge NetBSD ftp from 20050609 to 20050610. Changes: + - Implement getline() to read a line into a buffer. + - Convert to use getline() instead of fgets() whenever reading + user input to ensure that an overly long input line doesn't + leave excess characters for the next input operation to + accidentally use as input. + - Zero out the password & account after we've finished with it. + - Consistently use getpass(3) (i.e, character echo suppressed) + when reading the account data. For some reason, historically + the "login" code suppressed echo for Account: yet the "user" + command did not! + - Display the hostname in the "getaddrinfo failed" warning. + - Appease some -Wcast-qual warnings. Fixing all of these + requires significant code refactoring. (mmm, legacy code). + +Thu Jun 9 16:49:05 UTC 2005 lukem + + * src, libnetbsd: Excise RCSID block, rather than using + #if 0 ... #endif. The point was to minimise RCSID + conflicts, and the latter isn't helping there. + + * Merge NetBSD ftp from 20050531 to 20050609. Changes: + - Only print the "Trying
..." message if verbose + and there's more than one struct addrinfo in the + getaddrinfo() result. + - Don't use non-standard "u_int". + +Wed Jun 1 15:08:01 UTC 2005 lukem + + * Look for dirname(3), which may be in -lgen on IRIX, and + replace it if not found.. + +Wed Jun 1 11:48:58 UTC 2005 lukem + + * libnetbsd: + - Don't use non-standard: u_char u_short u_int. + - Use uint32_t instead of u_int32_t. + - Don't use register. + + * libedit: Don't use non-standard uint or u_int. + +Tue May 31 02:23:08 UTC 2005 lukem + + * tnftp.h: need for dirname(3) + + * Merge ftp from 20050513 to 20050531. Changes: + - Helps if the definition of xconnect() matches its + declaration.... + - Fix some cast issues highlighted by Scott Reynolds using + gcc 4 on OSX.4 + - Use size_t instead of int where appropriate. + - Make this compile on sparc64 (size_t != int). + - Printf field widths and size_t don't always mix well, so + cast to int. Fixes build problem for alpha. + - Some const cleanups. + - tab cleanup + - Improve method used in fileindir() to determine if `file' + is in or under `dir': realpath(3) on non-NetBSD systems may + fail if the target filename doesn't exist, so instead use + realpath(3) on the parent directory of `file'. + Per discussion with Todd Eigenschink. + - formatbuf(): fix %m and %M to use the hostname, not the + username. + - fetch_ftp(): preserve 'anonftp' across a disconnect() so + that multiple ftp auto-fetches on the same command line + login automatically. + - auto_fetch(): use an initialized volatile int to appease + IRIX cc. + + * Merge libedit from NetBSD 20050105 to 20050531. Changes include: + - Rui Paulo: Incorrect tok_line and tok_str declarations. + - Remove clause 3 from the UCB license. + - Luke Mewburn: Don't abuse unconstify'ing a string + and writing to it, because you'll core dump. Also remove + extra const that gives pain to the irix compiler. + - Make sure we flush after we prepare when we are unbuffered + otherwise the prompt will not appear immediately. + - Terminate the arglist with a NULL instead of 0. + (Shuts up gcc4.x) + +Sat May 28 13:19:38 UTC 2005 lukem + + * libnetbsd/strvis.c: + - Sync to NetBSD's vis.c 1.33: + Use malloc(3) instead of alloca(3). + - Remove extraenous #endif + +Fri May 27 05:46:58 UTC 2005 lukem + + * libnetbsd/strvis.c: Sync to NetBSD's vis.c 1.30: + Use a more standard TNF license. + + * libedit/sig.c: Include "src/progressbar.h" for xsignal_restart() + prototype. + + * Ensure that fallback #define of __attribute__ is available. + Fixes build problem on HP-UX with cc. + +Thu May 26 14:21:08 UTC 2005 lukem + + * Extend xpoll()'s HAVE_SELECT implementation to support POLLRDNORM, + POLLWRNORM, and POLLRDBAND - the latter using exceptfds. + Per discussion with Christos Zoulas. + +Mon May 16 13:33:27 UTC 2005 lukem + + * Pull in or if they exist even if we're + not using poll, as struct pollfd might exist in those. + Fixes build problem on OSX.3. + + * Separate CPPFLAGS from CFLAGS. + + * Sync various files in libnetbsd with the original versions + in NetBSD. Notable changes + - Convert 4 clause UCB license to 3 clause. + - Use strlcpy instead of strcpy. + - Update ISC copyright. + - Use NS_INADDRSZ, NS_IN6ADDRSZ and NS_INT16SZ instead of + equivalents without NS_ prefix. + - Use socklen_t instead of size_t where appropriate. + - Improve bounds checking. + - Don't update the size of allocated storage until + realloc succeeds. + - Fix comment about return value. + - Reverse the order of two loop invariant to make + 'strlcat(0, "foo", 0)' not get a SEGV. + - Use Todd C. Miller's latest copyright notice (more loose). + - Use "long long" instead of "quad" in various + comments & constants. + - Support VIS_HTTPSTYLE. + - Implement svis(), strsvis(), strsvisx(), strunvisx(). + + * Prefer poll over select when implementing replacement usleep(). + +Sat May 14 04:44:35 UTC 2005 lukem + + * Release "tnftp 20050514" + + * Fail if we can't find a library with tgetent (needed for libedit). + NetBSD PR pkg/28925. + * Improve quoting when using various autoconf macros. + + * Merge NetBSD-ftp 20050513: + - Correct the "optlen" argument passed to getsockopt(3) and + setsockopt(3) in various places. Fixes a problem noted by + Allen Briggs. + - Improve warning printed when connect(2) for the data + channel fails. + +Wed May 11 04:19:43 UTC 2005 lukem + + * Release "tnftp 20050511" + +Wed May 11 04:10:01 UTC 2005 lukem + + * Update the THANKS file. + + * Only use poll() to implement xpoll() if it's available, + otherwise attempt to use select() if that's available, + otherwise #error. + + * Detect if struct pollfd is available in or . + Improve consistency in use of autoconf macros. + +Wed May 11 02:42:08 UTC 2005 lukem + + * Merge NetBSD-ftp 20050511: + - Use socklen_t instead of int as the 5th argument to + getsockopt(). Improve invocation of setsockopt() and + associated failure messages. + +Wed May 11 01:46:29 UTC 2005 lukem + + * Clean up RCSID usage in vendor-derived code, restoring original + IDs where possible. + +Wed May 11 00:08:16 UTC 2005 lukem + + * Merge NetBSD-ftp 20050510: + - Prevent an overly-long input line causing a core dump when + editing is enabled. + Issue noted by Ryoji Kanai in FreeBSD Problem Report # 77158. + - Implement a timeout on the accept(2) in dataconn() and the + connect(2) in xconnect() by temporarily setting O_NONBLOCK + on the socket and using xpoll() to wait for the operation + to succeed. The timeout used is the '-q quittime' argument + (defaults to 60s for accept(2), and the system default for + connect(2)). Idea inspired by discussion with Chuck Cranor. + This may (indirectly) fix various problems with timeouts in + active mode through broken firewalls. + - Implement xpoll() as a wrapper around poll(2), to make it + easier to replace on systems without a functional poll(2). + Unconditionally use xpoll() instead of conditionally using + select(2) or poll(2). + - In fetch_url(), don't call freeaddrinfo(res0) too early, as + we use pointers to its contents later in the function. + Problem found by Onno van der Linden. + - Fix ftp url reget when globs are being used. + Provided by Mathieu Arnold . + - Factor out common string processing code eliminating static + buffers, making functions that should be static be static, + and cleaning up const usage. Added a guard against buffer + overflow, but the domap function is a bit too complicated + to tackle right now. + - Clean up whitespace. + - Expand description of http_proxy by suggesting the use of + RFC 1738 '%xx' encoding for "unsafe URL" characters in + usernames and passwords. + +Wed Jan 5 05:53:59 UTC 2005 lukem + + * For now, assume libedit is not up-to-date and use our own version. + + * Merge libedit from NetBSD 20020605 to 20050105. Changes include: + - Improve vi-mode. + - Delete-previous-char and delete-next-char without an + argument are not supposed to modify the yank buffer in + emacs-mode. + - Improve incremental searching. + - Improve memory allocation & usage. + - Move UCB-licensed code from 4-clause to 3-clause. + - Make the tokenization functions publically available. + - Various tty access bug-fixes. + - Improve readline emulation. + +Tue Jan 4 13:33:40 UTC 2005 lukem + + * Unixware 7.1.1 implements RFC 2133 (Basic Socket Interface + Extensions for IPv6) but not the successor RFC 2553. The configure + script detects this and decides that tnftp needs to compile its own + version of getaddrinfo(). This produces the error message + /usr/include/netdb.h:248: `getaddrinfo' previously defined here + because Unixware provides an implementation of getaddrinfo() in + netdb.h instead of a prototype declaration :-/. Since netdb.h + cannot be omitted, we will always get this definition and tnftp's + version of getaddrinfo will always create a conflict. This ugly + preprocessor hack works around the problem. Hints for a better + solution welcome. Fix from pkgsrc/net/tnftp. + + * Workaround poll() being a compatibility function on Darwin 7 + (MacOSX 10.3) by adding a custom test for _POLL_EMUL_H_ which + is defined in poll.h on some MacOSX 10.3 systems. Not all 10.3 + systems have poll.h, so only do the poll() test if at least one + of the header files is found. Fix from pkgsrc/net/tnftp. + + * Add a utimes() replacement (using utime()) for Interix. + From pkgsrc/net/tnftp. + +Mon Jan 3 10:21:57 UTC 2005 lukem + + * Release "tnftp 20050103" + + * Merge NetBSD-ftp 20050103: + - Forbid filenames returned from mget that aren't in (or below) + the current directory. The previous behaviour (of trusting + the remote server's response when retrieving the list of + files to mget with prompting disabled) has been in ftp + ~forever, and has been a "known issue" for a long time. + Recently an advisory was published by D.J. Bernstein on + behalf of Yosef Klein warning of the problems with the + previous behaviour, so to alleviate concern I've fixed + this with a sledgehammer. + - Remember the local cwd after any operation which may + change it. + - Use "remotecwd" instead of "remotepwd". + - Add (unsigned char) cast to ctype functions + - Ensure that "mname" is set in ls() and mls() so that an + aborted confirm() prints the correct name. + Problem highlighted & suggested fix from PR [bin/17766] + by Steve McClellan. + - If an ftp auto-fetch transfer is interrupted by SIGINT + (usually ^C), exit with 130 instead of 1 (or rarely, 0). + This allows an ftp auto-fetch in a shell loop to correctly + terminate the loop. + Should fix PR [pkg/26351], and possibly others. + - Save approximately 8K by not including http authentication, + extended status messages and help strings when the + appropriate options are set. + - Move UCB-licensed code from 4-clause to 3-clause licence. + Patches provided by Joel Baker in PR 22365, verified by + Alistair Crooks. + - Always decode %xx in a url's user & pass components. + - Only remember {WWW,Proxy}-Authenticate "Basic" challenges; no + point in tracking any others since ftp doesn't support them. + - Improve the parsing of HTTP responses. + - Don't base64 encode the trailing NUL in the HTTP basic auth + response. Problem noted by Eric Haszlakiewicz. + - Improve parsing of HTTP response headers to be more RFC2616 + compliant, and skip LWS (linear white space; CR, LF, space, + tab) and the end of lines and between the field name and + the field value. This still isn't 100% compliant, since we + don't support "multi line" responses at this time. + This should fix PR [bin/22611] from TAMURA Kent (although I + can't easily find a http server to reproduce the problem + against.) + - Fix a minor memory leak when parsing HTTP response headers. + - Don't unnecessarily display a 401/407 error when running + with -V. Fix from PR [bin/18535] by Jeremy Reed. + - Don't warn about "ignored setsockopt" failures unless + debugging is enabled. Suggested by Todd Vierling. + - Allow empty passwords in ftp://user:@host/file auto-fetch + URLs, per RFC 1738. Requested by Simon Poole. + - correct URL syntax in comment + - Note potentially surprising file-saving behaviour in case + of HTTP redirects + - -n is ignored for auto-fetch transfers + - If connect(2) in xconnect() fails with EINTR, call select(2) + on the socket until it's writable or it fails with something + other than EINTR. This matches the behaviour in SUSv3, and + prevents the problem when pressing ^T (SIGINFO, which is + marked as restartable) during connection setup would cause + ftp to fail with EADDRINUSE or EALREADY when the second + connect(2) was attempted on the same socket. Problem found + and solution provided by Maxime Henrion . + - Add -q to usage. From Kouichirou Hiratsuka in PR 26199. + - PR/25566: Anders Magnusson: ftp(1) do not like large TCP + windows. Limit it to 8M. + +Mon Oct 6 01:23:03 UTC 2003 lukem + + * configure.in improvements: + - When testing for IN6ADDRSZ in , pull in + first. From Stoned Elipot + - Whitespace cleanup + +Mon Aug 25 11:45:45 UTC 2003 lukem + + * Release "tnftp 20030825" + + * Add autoconf test for ; Cygwin needs it for ARG_MAX. + Per discussion with Eugene Kotlyarov . + +Thu Jul 31 07:30:00 UTC 2003 lukem + + * release "tnftp 20030731" + + * merge ftp from NetBSD 20030731 to 20030731b: + - Work around broken ftp servers (notably ProFTPd) that can't + even follow RFC 2389, and skip any amount of whitespace + before a FEATure response. The RFC says 'single space' yet + ProFTPd puts two. Noted by DervishD . + - Improve formatting of features[] debug dump. + - Invalidate remote directory completion cache if any command + which may change the remote contents completes successfully, + including: del, mdel, ren, mkdir, rmdir, quote, and all + upload commands. Patch from Yar Tikhiy . + + * merge ftp from NetBSD 20030228 to 20030731: + - $FTPUSERAGENT overrides the HTTP User-Agent header. + Based on patch from Douwe Kiela . + - Add about:tnftp + - Fix URL in about:netbsd + - netbsd.org->NetBSD.org + - strlcpy fix in fetch.c + - Uppercase "URL" + - fix a bogus error message when given a HTTP URL with a + trailing slash + - groff fixes in man page + - tweak progressbar.c copyright; the stuff jason did in util.c + wasn't migrated to this file + - Don't coredump when printing '%n' in the prompt if there's + no username yet. + Fix from Maxim Konovalov + + * Add test for HAVE_IN6ADDRSZ (which older Darwin is lacking), + and only enable INET6 if it exists. + Patch from Amitai Schlair . + + * Improve ipv6 check for older linux systems that don't provide + sin6_scope_id. + Patch from YAMANO Yuji . + +Fri Feb 28 10:57:30 UTC 2003 lukem + + * tagged as "tnftp 2.0 beta1" + +Fri Feb 28 10:07:07 UTC 2003 lukem + + * renamed to `tnftp' (from `lukemftp') + + * renamed `libukem' to `libnetbsd' + + +Mon Jun 17 06:50:13 UTC 2002 lukem + + * #if USE_GLOB_H, use instead of "ftpglob.h". + Requested by Mike Heffner + Mon Jun 10 08:12:35 UTC 2002 lukem * crank FTP_VERSION from 1.6-beta1 to 1.6-beta2 @@ -223,7 +933,7 @@ Tue Oct 3 10:22:36 EST 2000 lukem Mon Sep 25 21:52:12 EST 2000 lukem * crank to version 1.5 beta5 - + Sun Sep 24 13:31:19 EST 2000 lukem * merge ftp from NetBSD-current (20000924) @@ -243,7 +953,7 @@ Sun Sep 24 13:31:19 EST 2000 lukem - in progressmeter() perform the check for foregroundproc() a little earlier - removed unused variable `items' in list_vertical() - + Sat Sep 23 15:43:34 EST 2000 lukem * remove unused sverrno in warnx() and errx() @@ -406,7 +1116,7 @@ Wed Aug 2 23:43:50 EST 2000 lukem * update from NetBSD-current (20000802): - rename NO_QUAD to NO_LONG_LONG, QUAD* -> LL* and add ULL* (unsigned) equivalents. name change suggested by Klaus - Klein + Klein - change defined(BSD4_4) || HAVE_SIN_LEN tests into HAVE_SOCKADDR_SA_LEN, and set the latter if BSD4_4 exists @@ -451,7 +1161,7 @@ Wed Jul 26 18:59:19 EST 2000 lukem - add support for FEAT and OPTS commands with `features' and `opts'. (from RFC 2389). - add support for MLST & MLSD (machine parseble listings) - with 'mlst', 'mlsd' and 'pmlsd' (mlsd |$PAGER) commands. + with 'mlst', 'mlsd' and 'pmlsd' (mlsd |$PAGER) commands. (from draft-ietf-ftpext-mlst-11) - rename remotesyst() to getremoteinfo(), and modify to parse the result from FEAT (if supported), and take into account @@ -473,7 +1183,7 @@ Wed Jul 26 18:59:19 EST 2000 lukem - minor knf (indent goto labels by one space, etc). - simply various command usage handlers by assuming that argv != NULL except for quit() and disconnect(). - - errx?/warnx? audit. do not pass variable alone, use %s. + - errx?/warnx? audit. do not pass variable alone, use %s. * check for issetugid() and don't use in libedit if it doesn't exist. @@ -572,12 +1282,12 @@ Sun Jun 4 18:00:07 EST 2000 lukem - do not pass scoped IPv6 address notation on Host: directive, since scope identifier is local to the originating node. do not allow scoped IPv6 address notation in URL, if it is - via proxy. + via proxy. - fixes from cgd: * sanity check a length (otherwise certain bogus responses can crash ftp) * allow a transfer encoding type of `binary'; certain - firewall vendors return this bogus type... + firewall vendors return this bogus type... - make debugging output unambiguous on IPv6 numeric addrs (don't use host:port) - http://[::1]:8080/ is legal. @@ -705,7 +1415,7 @@ Sun Nov 28 18:20:41 EST 1999 lukem - implement xsl_init() and xsl_add(); error checking forms of sl_{init,add}() - fix bug where the second press of on an empty word (i.e, list - all options) may have resulted in an strncmp() against NULL. + all options) may have resulted in an strncmp() against NULL. (detected by _DIAGASSERT()) - in cleanuppeer(), reset username to NULL after free()ing it. fixes [bin/8870] by Wolfgang Rupprecht @@ -985,7 +1695,7 @@ Mon Oct 4 10:57:41 EST 1999 lukem * Add support for --{en,dis}able-editcomplete (defaults to enabled), which prevents libedit support from being compiled in. - From Chris G. Demetriou + From Chris G. Demetriou Sun Oct 3 16:49:01 EST 1999 lukem Modified: head/contrib/tnftp/INSTALL ============================================================================== --- head/contrib/tnftp/INSTALL Mon Jun 20 07:58:44 2011 (r223327) +++ head/contrib/tnftp/INSTALL Mon Jun 20 08:00:32 2011 (r223328) @@ -1,8 +1,7 @@ INSTALLATION INTRODUCTION ------------------------- -This file describes how to compile and install lukemftp on your -system. +This file describes how to compile and install tnftp on your system. ============================================ = = @@ -11,24 +10,20 @@ system. ============================================ -For most systems, execute the following to compile and install -lukemftp: +For most systems, execute the following to compile and install tnftp: ./configure make make install -A preformatted manual page (src/ftp.cat1) is also installed. If -you wish to install the source (src/ftp.1), ensure that your system -has up-to-date mandoc macros. groff ships with this macro suite, -but it has bugs. Try: - ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/share/tmac/ -for a more recent version. +A preformatted manual page (src/ftp.cat1) is also installed. +If you wish to install the source (src/ftp.1), ensure that your system +has up-to-date mandoc macros, such as those that are shipped with groff. CONFIGURATION OPTIONS --------------------- -lukemftp is configured using an `autoconf' generated `configure' +tnftp is configured using an `autoconf' generated `configure' script. `configure' supports the following options: * The standard `autoconf configure' options, including: @@ -41,14 +36,11 @@ script. `configure' supports the follow * Specific options: --enable-editcomplete Turn on command line editing and completion. - --disable-editcomplete Turn off command line editing and completion - [default: enabled]. - --enable-ipv6 Enable IPv6 support (if your OS supports it) - --disable-ipv6 Disable IPv6 support (even if your OS supports it.) - [default: enabled]. - --with-socks Compile with SOCKS firewall traversal support. - --with-socks5[=PATH] Compile with SOCKS5 firewall traversal support. - --with-socks4[=PATH] Compile with SOCKS4 firewall traversal support. + (default: enabled) + --enable-ipv6 Enable IPv6 support (if your OS supports it). + (default: enabled) + --disable-largefile omit support for large files + --with-socks enable support for (Dante) SOCKS5 proxy The following environment variables can be set to override various compiler related settings. @@ -66,146 +58,3 @@ This can be achieved with: = = ============================================ - -PLATFORM SPECIFIC NOTES ------------------------ - -The following platforms & compilers have been tested: - -- AIX 4.1.5: -- AIX 4.2.1: -- AIX 4.3.3: - - Compiler: xlc -qlanglvl=ansi - version: xlC 3.1.4.10 -- C for AIX Compiler - version: ibmcxx.cmp 3.6.6.6 -- IBM C and C++ Compilers - - Configure with: - env CC="xlc" CFLAGS="-qlanglvl=ansi" ./configure - -- BSD/OS 4.0.1 (x86) -- BSD/OS 4.1 (x86) -- BSD/OS 4.1 (sparc) -- BSD/OS 4.2 (x86) - - Compiler: /bin/cc - version: gcc 2.7.2.1 - version: gcc version 2.95.2 19991024 - -- Digital UNIX 4.0b -- Digital UNIX 4.0d -- Digital UNIX 4.0f - - Compiler: cc -std - version: DEC C V5.2-036 on Digital UNIX V4.0 (Rev. 564) - version: DEC C V5.9-005 on Digital UNIX V4.0 (Rev. 1229) - - Configure with - env CC="cc -std" ./configure - - - Compiler: gcc - version: 2.95.1 - -- Digital UNIX 5.0 - - Compiler: cc - version: Compaq C V6.1-011 on Digital UNIX V5.0 (Rev. 910) - -- FreeBSD 3.4 (i386): -- FreeBSD 3.5 (i386): -- FreeBSD 4.1 (i386): - - Compiler: cc - version: gcc version 2.7.2.3 - version: gcc version 2.95.2 19991024 - -- HP/UX 10.20: -- HP/UX 11.00: - - Compiler: /opt/ansic/bin/cc -Ae - version: A.10.32.03 - - Configure with - env CC="cc -Ae" ./configure - - To generate code that will run on old architectures you - may need to add "+DAportable" to CC. - - -- IRIX 6.5.4 -- IRIX 6.5.8 - Compiler: /bin/cc - version: MIPSpro Compilers: Version 7.2.1 - Compiler: - version: gcc version 2.95.2 - -- HP/UX 11.00: -- HP/UX 11.00 64 bit: - - Compiler: /opt/ansic/bin/cc -Ae - version: A.11.01.00 - - Configure with *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***