1085 lines
39 KiB
Plaintext
1085 lines
39 KiB
Plaintext
Mon Jun 10 08:12:35 UTC 2002 lukem
|
|
|
|
* crank FTP_VERSION from 1.6-beta1 to 1.6-beta2
|
|
|
|
* replace missing fseeko(), with a wrapper to fseek() which
|
|
checks that the offset isn't > LONG_MAX
|
|
|
|
* #include <regex.h> #if HAVE_REGEX_H
|
|
|
|
Mon Jun 10 01:27:46 UTC 2002 lukem
|
|
|
|
* check for and replace sa_family_t definition
|
|
|
|
* don't bother checking for issetugid(); it was only used in the
|
|
internal libedit to prevent $HOME/.editrc from being used if
|
|
running set-id, and the newer libedit code wouldn't even read
|
|
$HOME/.editrc if issetugid() wasn't available. as many target
|
|
operating systems don't have issetugid(), and lukemftp isn't
|
|
likely to be run set-id (and $HOME/.netrc is used in any case),
|
|
the issetugid() check has been disabled in libedit.
|
|
|
|
* add back cpp code which #defines REGEX #if HAVE_REGEX_H
|
|
|
|
Wed Jun 5 14:39:11 UTC 2002 lukem
|
|
|
|
* crank FTP_VERSION from 1.6alpha1 to 1.6-beta1
|
|
|
|
* implement replacement setprogname()
|
|
|
|
* use getprogname() instead of __progname
|
|
|
|
* convert to christos' replacement fgetln(), as it's better than mine
|
|
|
|
* merge ftp from NetBSD 20020605 to 20020606:
|
|
- use setprogname()
|
|
- only support -6 if INET6 is defined
|
|
|
|
Wed Jun 5 13:08:25 UTC 2002 lukem
|
|
|
|
* don't bother checking if <glob.h> is usable (see below).
|
|
|
|
* always compile in local glob; it's the best way to ensure that
|
|
various security issues are fixed
|
|
|
|
* update libukem/glob.c from NetBSD's __glob13.c rev 1.22 and rev 1.23
|
|
|
|
* merge libedit from NetBSD 20010413 to 20020606:
|
|
- constify; passes all gcc and lint strict checks.
|
|
- add config.h [Jason Evans], to create a portable version of
|
|
libedit that can be easily compiled on other OS's.
|
|
- PR/12963:Jason Waterman: Fix signed cast problems.
|
|
- Fixed an __P remnant
|
|
- Close quoting.
|
|
- Generate <>& symbolically.
|
|
- Punctuation and whitespace nits, fix a typo.
|
|
- PR/14188: Anthony Mallet: Provide an opaque data
|
|
pointer to client programs.
|
|
- a couple of minor fixes. originally by Ruslan Ermilov
|
|
<ru@FreeBSD.org>, highlighted to me by way of Mike Barcroft
|
|
<mike@FreeBSD.org> (thanks!)
|
|
- PR/14067: Anthony Mallet: Provide a programmatic way
|
|
to set the read_char function via a new el_set() operation.
|
|
Thanks, nicely done :-)
|
|
- `existent', not `existant'
|
|
- Don't use HAVE_ yet.
|
|
- Fix a warning.
|
|
- Remove an unused variable.
|
|
- If term_init() fails, cleanup and return NULL. This
|
|
avoids other lossage. Pointed by charles.
|
|
- va_{start,end} audit: Make sure that each va_start has one
|
|
and only one matching va_end, especially in error cases.
|
|
If the va_list is used multiple times, do multiple
|
|
va_starts/va_ends. If a function gets va_list as argument,
|
|
don't let it use va_end (since it's the callers
|
|
responsibility). Improved by comments from enami and
|
|
christos -- thanks!
|
|
- history_def_enter: fix off-by-one mistake in delete
|
|
condition (the behaviour to keep at least one entry on the
|
|
history list is retained). This fixes lib/9704 by Phil Nelson.
|
|
|
|
* merge ftp from NetBSD 20020524 to 20020605:
|
|
- when showing the final progress bar, replace "00:00 ETA"
|
|
with the elapsed time. (suggested by simonb)
|
|
- actually display transfer stats after a URL fetch.
|
|
(bug introduced a *long* time ago)
|
|
- update copyright & version
|
|
|
|
* merge ftp from NetBSD 20001127 to 20020524:
|
|
- Use "r+" instead of "r+w", since the latter is not standard.
|
|
Noted by <Steve.McClellan@radisys.com> in private email.
|
|
- Only send port number in HTTP/1.1 Host: request if port !=
|
|
80. Fixes [bin/15415] from Takahiro Kambe
|
|
<taca@sky.yamashina.kyoto.jp>
|
|
- Fix bad mode passed by mls() to recvrequest(). Fixes
|
|
[bin/16642] from <steve.mcclellan@radisys.com>
|
|
- update copyrights
|
|
- minor knf
|
|
- invoke cmdtab.c_handler()s with argv[0] == c_name instead
|
|
of the supplied name. that way the full (unambiguous) name
|
|
is displayed in error messages and usage strings.
|
|
- line2 may overrun if line is too long (> 200). be more
|
|
careful on strcpy.
|
|
- Handle URLs without files correctly (e.g, when using '-o -').
|
|
Fix from Anders Dinsen <anders@dinsen.net> in [bin/13768]
|
|
- portnum is unsigned, use %u instead of %d
|
|
- Add -4 to force IPv4 and -6 to force IPv6 address usage.
|
|
From Hajimu UMEMOTO, via Mike Heffner of FreeBSD.
|
|
- use u_char instead of char in base64_encode().
|
|
problem noticed by Jorgen Lundman in private mail.
|
|
- don't make broken file with -R option.
|
|
- handle "*" in Content-Range properly.
|
|
- If no_proxy condition is true && urltype == FTP_URL_T,
|
|
use fetch_ftp to retrieve
|
|
- convert to use getprogname()
|
|
- Fix description for "form", "mode", and "struct" commands.
|
|
Inspired by [bin/16736] from Steve McClellan
|
|
<steve.mcclellan@radisys.com>
|
|
- Generate <>& symbolically. I'm avoiding .../dist/...
|
|
directories for now.
|
|
- Punctuation nits.
|
|
- Whitespace cleanup.
|
|
- put "site" in alphabetical order. noted by Mike Barcroft
|
|
in private email
|
|
- avoid buffer overrun on PASV from malicious server.
|
|
- Large file ASCII mode support by using fseeko()
|
|
instead of fseek(). From Andrey A. Chernov of FreeBSD,
|
|
via Mike Heffner.
|
|
- Deal with const'ification if el_parse().
|
|
- call setlocale() on startup
|
|
- display a limited progress bar (containing bytes xferred
|
|
and xfer rate) when the file size is unknown
|
|
- disable progress bar during remglob()
|
|
|
|
Thu Mar 14 05:41:49 UTC 2002 lukem
|
|
|
|
* ensure all AF_INET6 use is protected with #ifdef INET6
|
|
|
|
* remove unnecessary __attribute__ goop
|
|
|
|
* libukem/snprintf.c: fix compile errors with gcc 3.x
|
|
|
|
Tue Apr 17 08:07:29 UTC 2001 lukem
|
|
|
|
* autoconf check for %q long long support in *printf()
|
|
(instead of %ll), define and use HAVE_PRINTF_QD if so
|
|
|
|
* ipv6 isn't compatible with socks, so disable the former
|
|
|
|
* look for <libutil.h> (instead of <util.h>) and <arpa/nameser.h>
|
|
|
|
* don't check for fparseln() twice
|
|
|
|
* fix getaddrinfo() checks
|
|
|
|
* crank FTP_VERSION from 1.5 to 1.6alpha1
|
|
|
|
* always ensure _PATH_BSHELL and _PATH_TMP are defined
|
|
|
|
* prototype inet_pton() if its missing
|
|
|
|
* don't bother trying to use if_indextoname() in ip6_sa2str()
|
|
(fixes problems on MacOS X)
|
|
|
|
* in inet_pton(), pull in <arpa/nameser.h> for IN6ADDRSZ and INT16SZ,
|
|
and define if missing
|
|
|
|
Fri Apr 13 15:24:44 UTC 2001 lukem
|
|
|
|
* only include <arpa/nameser.h> if we have it
|
|
|
|
* update glob(3) to netbsd-current (20010329), adding support
|
|
for GLOB_LIMIT and fixing various buffer overflows.
|
|
|
|
* update editline from NetBSD 20000915 -> NetBSD 20010413
|
|
- Enlarge editline buffers as needed to support arbitrary
|
|
length lines. This also addresses lib/9712 by Phil Nelson.
|
|
- consistently check for allocation failures and return -1,
|
|
if we could not get more memory.
|
|
- add support for home and end keys.
|
|
- improve debugging support
|
|
- el_line_t: make 'limit' const
|
|
|
|
Mon Nov 27 23:23:40 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20001127):
|
|
- implement "mreget"; as per "mget" but uses "reget" instead
|
|
of "get"
|
|
- add -N netrc and $NETRC, as methods to select an alternative
|
|
.netrc file
|
|
- cache local user name and home directory for further use
|
|
- in mget(), use docase() instead of a local version to do
|
|
the case conversion.
|
|
- format string cleanups
|
|
- be more explicit that $ftp_proxy and $http_proxy are not
|
|
supported for interactive sessions
|
|
- cope with 2553bis getnameinfo (always attach scope id)
|
|
getnameinfo error check.
|
|
- use NI_MAXHOST with getnameinfo. we can assume presence of
|
|
getnameinfo.
|
|
|
|
Tue Nov 7 00:16:23 EST 2000 lukem
|
|
|
|
* libukem/snprintf.c had a non-functional `%s' due to a
|
|
function declaration mismatch. problem found and fixed
|
|
by Hubert Feyrer <hubert@feyrer.de>
|
|
|
|
Wed Oct 11 14:06:19 EST 2000 lukem
|
|
|
|
* released version 1.5
|
|
|
|
Tue Oct 3 10:22:36 EST 2000 lukem
|
|
|
|
* crank to version 1.5 beta6
|
|
|
|
* merge ftp from NetBSD-current (20001003)
|
|
- explicitly use SOCK_STREAM with socket() instead of
|
|
res->ai_socktype, because it appears that linux with glibc
|
|
doesn't set the latter correctly after one of getaddrinfo()
|
|
or getnameinfo().
|
|
- clarify that $ftp_proxy only works for full URLs and can't
|
|
be used for interactive connections.
|
|
|
|
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)
|
|
- since everything else here uses ANSI C, we might as well
|
|
replace __STRING() with the ANSI C stringization stuff...
|
|
- base64_encode should be static. picked up by hp/ux(!)
|
|
compiler
|
|
- It appears that whilst Apache 1.3.9 incorrectly puts a
|
|
trailing space after the chunksize (before the \r\n),
|
|
Apache 1.3.11 puts *multiple* trailing spaces after the
|
|
chunksize. I 'm fairly certain that this is contrary to
|
|
RFC 2068 section 3.6, but whatever...
|
|
Found by David Brownlee <abs@mono.org>
|
|
- always include <netdb.h>, not just when INET6 is defined.
|
|
resolves PR [bin/10970] by Richard Earnshaw
|
|
<rearnsha@cambridge.arm.com>>
|
|
- 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()
|
|
|
|
* remove unused h_error in getnameinfo()
|
|
|
|
* in getaddrinfo(), don't bother declaring in6_addrany[] and
|
|
in6_loopback #ifndef INET6
|
|
|
|
Thu Sep 21 11:26:35 EST 2000 lukem
|
|
|
|
* in getaddrinfo.c::str_isnumber(), use strtol() and check the
|
|
result, instead of using strtoul() and not checking the result.
|
|
|
|
* define INADDRSZ if it's not found (e.g, HP/UX doesn't seem to have
|
|
it in <arpa/nameser.h>)
|
|
|
|
Wed Sep 20 09:23:59 EST 2000 lukem
|
|
|
|
* crank to version 1.5 beta4
|
|
|
|
Mon Sep 18 18:19:54 EST 2000 lukem
|
|
|
|
* add AC_AIX test, which defines _ALL_SOURCE under AIX
|
|
|
|
* use ANSI # stringization instead of __STRING()
|
|
|
|
* define HAVE_RFC2553_NETDB if <netdb.h> defines AI_NUMERICHOST
|
|
(et al) and has getaddrinfo(). (some systems only implement RFC2133)
|
|
|
|
* don't bother with AC_C_CONST as we depend upon ANSI C elsewhere
|
|
|
|
* when HAVE_RFC2553_NETDB isn't set, and we're #defining various EAI_,
|
|
AI_, and NI_ items, #undef first incase a system partially implements
|
|
these in <netdb.h>
|
|
|
|
* look for tgetent() in -ltinfo before -lncurses, because ncurses 5.0
|
|
has been split up into multiple libraries.
|
|
from Arkadiusz Miskiewicz <misiek@pld.org.pl>
|
|
|
|
Fri Sep 15 01:09:10 EST 2000 lukem
|
|
|
|
* don't bother defining __P() or __STRING() based on whether
|
|
__STDC__ is available or not, since these aren't used any more
|
|
|
|
* fix mkstemp() prototype
|
|
|
|
* declare getpass() if necessary
|
|
|
|
* we don't need the readline xxgdb hack in libedit...
|
|
|
|
* convert to ansi declarations
|
|
|
|
* use ansi prototypes instead of __P()
|
|
|
|
* merge in changes from makelist 1.4 -> 1.6:
|
|
- generate ansi prototypes instead of using __P(). noted by
|
|
christos
|
|
- fix a couple of comments
|
|
- add -m option to makelist, which generates an mdoc table
|
|
with the key bindings and their descriptions
|
|
- manually add the output of 'sh ./makelist -m vi.c ed.c
|
|
common.c' to a new section in editrc(5) called
|
|
`EDITOR COMMANDS'
|
|
|
|
* merge libedit from NetBSD-current (20000915)
|
|
* convert to new style guide, which includes:
|
|
- ansi prototypes & features (such as stdargs)
|
|
- 8 space indents
|
|
* history_def_set has a `const int' as a third arg, not an
|
|
`int'. picked up by the ultrix compiler, reported by
|
|
simonb@ ...
|
|
* generate ansi prototypes instead of using __P(). noted by
|
|
christos. fix a couple of comments
|
|
* make xxgdb and a gdb linked with libedit's readline emulation
|
|
work properly together. xxgdb communicates with a gdb
|
|
running on a pty that it sets to -echo,-onlcr prior to
|
|
forking the gdb process. GNU readline preserves the -echo
|
|
setting while libedit was undoing it (setting the tty to a
|
|
sane state and totally confusing xxgdb's parser).
|
|
this diff simply disables libedit if both readline emulation
|
|
and "stty -echo" are used/set. that is enough to make
|
|
xxgdb work once again, but (XXX) this is not how GNU readline
|
|
handles stty -echo (it does not echo anything, but editing
|
|
commands like ^A,^K, etc. still work), so the readline
|
|
emulation isn't perfect.
|
|
|
|
Tue Aug 29 18:00:08 EST 2000 lukem
|
|
|
|
* don't bother testing for #if __STDC__; just assume we have it...
|
|
|
|
Mon Aug 28 22:45:08 EST 2000 lukem
|
|
|
|
* refine tests for IPv6 #defines (EAI_, AI_, NI_, ...).
|
|
should improve portability on systems which implement
|
|
RFC 2133 but not RFC 2553.
|
|
|
|
Wed Aug 9 02:12:51 EST 2000 lukem
|
|
|
|
* use #if __STDC__ instead of #ifdef __STDC__
|
|
|
|
* only test 'case NETDB_INTERNAL:' if it's defined
|
|
|
|
* fix support for --program-prefix et al
|
|
|
|
* only include <arpa/nameser.h> in the files that need it, because
|
|
the DELETE define in some system's implementations causes name
|
|
collisions in libedit.
|
|
|
|
Mon Aug 7 08:17:37 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000807)
|
|
* implement parseport(), which takes a string and attempts to
|
|
convert it to a numeric port number
|
|
* use parseport() in parse_url() and hookup()
|
|
* don't try and lookup the port number using getaddrinfo(),
|
|
as it's too hard to separate a failed host name lookup from
|
|
a failed service name lookup. this was causing lossage on
|
|
systems that don't have `http' in services(5) (such as
|
|
solaris), but only crept in when we started using
|
|
getaddrinfo() unconditionally.
|
|
|
|
Wed Aug 2 23:43:50 EST 2000 lukem
|
|
|
|
* crank to version 1.5 beta3
|
|
|
|
* define NO_LONG_LONG not NO_QUAD
|
|
|
|
* detect if struct sockaddr.sa_len exists (rather than relying upon
|
|
#ifdef BSD4_4)
|
|
|
|
* detect if socklen_t exists, and if not, typedef as unsigned int
|
|
|
|
* detect if struct addrinfo exists, and if not declare it and #define
|
|
associated EAI_, AI_, and NI_ defines.
|
|
|
|
* look for & replace: getaddrinfo(), getnameinfo(), inet_ntop(),
|
|
inet_pton()
|
|
* look for gethostbyname2()
|
|
|
|
* don't bother looking for hstrerror() or inet_aton() anymore
|
|
|
|
* include <arpa/nameser.h> and <stddef.h>
|
|
|
|
* define USE_SELECT instead of __USE_SELECT
|
|
|
|
* always define HAVE_H_ERRNO
|
|
|
|
* add Brian Stark to THANKS, for lots of AIX porting feedback
|
|
|
|
* improve detection of sin_len for AIX (now part of sa_len test)
|
|
|
|
* add functions needed by recent ftp import:
|
|
getaddrinfo(), getnameinfo(), inet_ntop(), inet_pton()
|
|
remove functions not needed anymore:
|
|
hstrerror(), inet_aton()
|
|
|
|
* use #if HAVE_ISSETUGID not #ifdef
|
|
|
|
* 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 <kjk@netbsd.org>
|
|
- change defined(BSD4_4) || HAVE_SIN_LEN tests into
|
|
HAVE_SOCKADDR_SA_LEN, and set the latter if BSD4_4 exists
|
|
|
|
Mon Jul 31 10:59:10 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000731)
|
|
- we can't just rename BSD4_4 -> HAVE_SIN_LEN, since bsd
|
|
systems define BSD4_4; change tests to test for either
|
|
defined(BSD4_4) or HAVE_SIN_LEN
|
|
- more KNF
|
|
|
|
Sun Jul 30 16:55:09 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000730):
|
|
- clean up NO_QUAD support: create helper #defines and use as
|
|
appropriate:
|
|
#define NOQUAD ! NOQUAD
|
|
------- ------ - ------
|
|
QUADF "%ld" "%lld"
|
|
QUADFP(x) "%" x "ld" "%" x "lld"
|
|
QUADT long long long
|
|
STRTOL(x,y,z) strtol(x,y,z) strtoll(x,y,z)
|
|
- always use getaddrinfo() and getnameinfo() instead of
|
|
maintaining two code paths.
|
|
- rename __USE_SELECT to USE_SELECT
|
|
- rename BSD4_4 to HAVE_SIN_LEN
|
|
- replace union sockunion {} with struct sockinet {}, and
|
|
modify the code accordingly. this is possibly more portable,
|
|
as it doesn't rely upon the structure alignment within the
|
|
union for our own stuff.
|
|
|
|
Fri Jul 28 22:11:17 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000728):
|
|
- no trailing , on last item (FEAT_max) in enum
|
|
- rename "opts" to "remopts", so people used to "o host"
|
|
don't get bitten
|
|
|
|
Wed Jul 26 18:59:19 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000726):
|
|
- 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.
|
|
(from draft-ietf-ftpext-mlst-11)
|
|
- rename remotesyst() to getremoteinfo(), and modify to parse
|
|
the result from FEAT (if supported), and take into account
|
|
the support for the various extensions such as MDTM, SIZE,
|
|
REST (STREAM), MLSD, and FEAT/OPTS.
|
|
- put each feature into one of the following categories:
|
|
- known to work (explicit FEAT)
|
|
- unknown but assume works until explicit failure,
|
|
when it's then tagged as `known not to work'.
|
|
- known not to work (FEAT succeeded but didn't return
|
|
anything, or was unknown and then explicit failure)
|
|
assign results into features[] matrix.
|
|
- add support to getreply() so that an optional callback will
|
|
be called for each line received from the server except for
|
|
the first and last. this is used in FEAT (and MLST) parsing.
|
|
- modify various commands to check if REST (STREAM), MDTM and
|
|
SIZE are explicitly or implicitly supported before using.
|
|
- fix `syst' when verbose is off.
|
|
- 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.
|
|
|
|
* check for issetugid() and don't use in libedit if it doesn't exist.
|
|
|
|
* merge libedit from NetBSD-current (20000726):
|
|
* Only look in home directory for .editrc. (Discussed
|
|
with Christos.)
|
|
|
|
* in glob.c #undef TILDE before redefining, because some AIX systems
|
|
#define TILDE in <sys/ioctl.h>
|
|
|
|
Mon Jul 10 00:28:51 EST 2000 lukem
|
|
|
|
* released lukemftp 1.4
|
|
|
|
Thu Jun 15 23:28:49 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000615):
|
|
* migrate the SYST parsing from setpeer() into a separate
|
|
remotesyst(). call remotesyst() only when login has been
|
|
successful some servers don't let you run SYST until you've
|
|
successfully logged in.
|
|
* in fetch_ftp(), always call setpeer() with autologin
|
|
disabled, and use the following ftp_login() to DTRT. this
|
|
prevents ftp from trying to login a second time if the
|
|
first autologin fails when connecting to a remote site
|
|
anonymously using autofetch.
|
|
* reset unix_proxy and unix_server in cleanuppeer()
|
|
* missed a function conversion in the KNF sweep...
|
|
|
|
Mon Jun 12 01:16:12 EST 2000 lukem
|
|
|
|
* change lukemftp.h to check !HAVE_STRDUP instead of !HAVE_STRSUP.
|
|
fixes compile problem on systems which have strdup() as a macro.
|
|
|
|
* merge ftp from NetBSD-current (20000612):
|
|
from itojun: better fix for previous (doesn't need
|
|
in_addr_t or u_int32_t)
|
|
|
|
Sun Jun 11 12:19:52 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000611):
|
|
portability fixes for lukemftp:
|
|
* initconn(): use in_addr_t instead of u_int32_t when
|
|
manipulating IPv6 addresses (and assume anything with ipv6
|
|
has in_addr_t; if not, i'll add an autoconf test for it)
|
|
* ai_unmapped(): not all systems have sin_len; so only set
|
|
#ifdef BSD4_4
|
|
* fix some lint
|
|
|
|
Mon Jun 5 21:10:31 EST 2000 lukem
|
|
|
|
* released lukemftp 1.3
|
|
|
|
Mon Jun 5 19:53:49 EST 2000 lukem
|
|
|
|
* convert various support files to ANSI C
|
|
|
|
* look for strtoll() instead of strtoq()
|
|
|
|
* update COPYRIGHT, THANKS, NEWS
|
|
|
|
* merge ftp from NetBSD-current (20000605):
|
|
- fix ai_unmapped() to be a no-op in the !def INET6 case
|
|
- display `(-INET6)' at the end of the version string if
|
|
!def INET6
|
|
- clarify in the man page that IPv6 support may not be present
|
|
(for lukemftp :)
|
|
|
|
* ensure <vis.h> has VIS_WHITE et al
|
|
|
|
Sun Jun 4 18:00:07 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000604):
|
|
- Change `ls' to use the `LIST' and not `NLST' FTP protocol
|
|
command. Now that after many years on not caring we find
|
|
certain popular ftp servers are starting to obey RFC959 to
|
|
the letter of the law and will only return a list of
|
|
filenames (not directories or other filetypes) in the
|
|
output of `NLST', then `LIST' is more useful in this case.
|
|
(Note that the aforementioned pedanticness means that
|
|
filename completion isn't as useful as it could be...)
|
|
Fixes [bin/8937] by David A. Gatwood
|
|
<dgatwood@deepspace.mklinux.org>
|
|
- convert to ANSI KNF
|
|
- Add support for `fget localfile', which reads a list of
|
|
filenames to retrieve from localfile. Based on work by
|
|
Darren Reed.
|
|
- Update copyright dates.
|
|
- s/strtoq/strtoll/ (the latter is standardised)
|
|
- Add support for 'ftp -u url file ...', to upload a list of
|
|
files to given url. Mostly based on [bin/10019] by Scott
|
|
Aaron Bamford <sab@ansic.net>
|
|
- convert IPv4 mapped address (::ffff:10.1.1.1) into real IPv4
|
|
address before touching it. IPv4 mapped address complicates
|
|
too many things in FTP protocol handling.
|
|
- 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.
|
|
- 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...
|
|
- make debugging output unambiguous on IPv6 numeric addrs
|
|
(don't use host:port)
|
|
- http://[::1]:8080/ is legal.
|
|
- send Host: directive with RFC2732 bracket notation for IPv6
|
|
numeric, otherwise "host:port" is ambiguous to servers
|
|
(clarification will be submitted as update to RFC2732).
|
|
- only use getaddrinfo() et al if both NI_NUMERICHOST *and*
|
|
INET6 are defined... (allows --disable-ipv6 in lukemftp's
|
|
configure script to disable this as well, which is good for
|
|
testing when it appears getaddrinfo() is borken)
|
|
- updated comment on IPv4 mapped address. sync with kame.
|
|
- Fix examples on using pipes in local filenames. AFAICT,
|
|
ftp has always required `dir . |more' not as `dir |more'
|
|
treats `|more' as the remote filename. Resolves [bin/9922]
|
|
by Geoff Wing <mason@primenet.com.au>
|
|
- ftp(1): treats IPv4 mapped destination as IPv4 peer, not
|
|
native IPv6 peer. this does not support network with SIIT
|
|
translator.
|
|
- inhibit too-noisy message for scoped address data transfer
|
|
(will be enabled in "debug" mode).
|
|
- only use IPTOS_ setsockopt()s if they're defined (e.g, SunOS
|
|
doesn't). from Havard.Eidnes@runit.sintef.no
|
|
- allow IPv6 extended numeric address in host part.
|
|
(draft-ietf-ipngwg-scopedaddr-format-01.txt). fixes PR 9616.
|
|
|
|
* merge libedit from NetBSD-current (20000604):
|
|
- use strtol() (instead of atoi()) for sane error detection
|
|
|
|
Wed May 31 19:24:53 EST 2000 lukem
|
|
|
|
* merge libedit from NetBSD-current (20000531):
|
|
- Fix refresh glitches when using auto-margin.
|
|
- Don't dump core on empty .editrc files.
|
|
- el_insertstr takes a "const char *" not "char *" now as it
|
|
doesn't modify the argument.
|
|
|
|
Thu Feb 3 20:19:40 EST 2000 lukem
|
|
|
|
* released lukemftp 1.2
|
|
|
|
Tue Feb 1 09:47:51 EST 2000 lukem
|
|
|
|
* add --enable-ipv6 and --disable-ipv6 to configure
|
|
|
|
* modify libedit/sig.? to use sigfunc instead of sig_t, and
|
|
deprecate autoconf tests for retsigtype and sig_t.
|
|
This fixes portability problems with Digital UNIX 5.0.
|
|
|
|
* merge ftp from NetBSD-current (20000201):
|
|
- define private type `sigfunc' as
|
|
typedef void (*sigfunc) __P((int));
|
|
and replace use of sig_t and void (*)(int).
|
|
certain other OSes define sig_t differently to that (they
|
|
add extra arguments), and it causes problems due to
|
|
function mismatches, etc...
|
|
|
|
Wed Jan 26 22:54:38 EST 2000 lukem
|
|
|
|
* search for tgetent() in -ltermcap then -lcurses and -lncurses
|
|
|
|
* merge ftp from NetBSD-current (20000126):
|
|
- roll back to using sscanf() instead of strptime() to parse
|
|
`yyyymmddhhmmss' strings, since the latter technically can't
|
|
parse dates without non alphanumerics between the elements
|
|
(even though NetBSD's strptime() copes).
|
|
|
|
Tue Jan 25 19:09:37 EST 2000 lukem
|
|
|
|
* merge ftp from NetBSD-current (20000125):
|
|
- complete_ambiguous(): be consistent about completing
|
|
unambiguous matches; if the word is already complete then
|
|
return CC_REFRESH so that the higher layer may append a
|
|
suffix if necessary. Fix from Launey Thomas <ljt@alum.mit.edu>
|
|
- change references from draft-ietf-ipngwg-url-literal-01.txt
|
|
to RFC2732
|
|
- work around bug in apache 1.3.9 which incorrectly puts a
|
|
trailing space after the chunksize. noted by Jun-ichiro
|
|
itojun Hagino <itojun@itojun.org> in [bin/9096]
|
|
- work around lame ftpd's that don't return a correct post-Y2K
|
|
date in the output of `MDTM'. obviously the programmer of
|
|
aforementioned lame ftpd's did something like
|
|
"19%02d", tm->tm_year
|
|
instead of
|
|
"%04d", tm->tm_year + TM_YEAR_BASE
|
|
fixes [bin/9289] by jbernard@mines.edu
|
|
|
|
* merge libedit from NetBSD-current (20000125):
|
|
- PR/9244: Kevin Schoedel: libedit dumps bindings
|
|
inconsistently
|
|
- PR/9243: Kevin Schoedel: libedit ignores repeat count
|
|
- Add support for automatic and magic margins (from tcsh)
|
|
This makes the rightmost column usable on all programs
|
|
that use editline.
|
|
|
|
Tue Dec 21 08:59:22 EST 1999 lukem
|
|
|
|
* update INSTALL notes for some systems
|
|
|
|
* if sl_init() exists, check return value of sl_add() is int and
|
|
compile in a replacement copy if it's not the case
|
|
|
|
* don't look for <stringlist.h> - always use local prototypes; older
|
|
NetBSD systems may have conflicting prototypes
|
|
|
|
Mon Dec 20 11:21:28 EST 1999 lukem
|
|
|
|
* merge ftp from NetBSD-current (19991220):
|
|
- Move version from ftp_var.h to version.h
|
|
- Fix chunked support; probably broke after rate limiting was added.
|
|
Problem noticed/debugging assisted by giles lean
|
|
<giles@nemeton.com.au>.
|
|
- remove unnecessary freeaddrinfo(res), since res0 was changed to be
|
|
freed earlier in itojun's last commit. fixes [bin/8948].
|
|
- remove `const char *reason'; it was being assigned but not used.
|
|
- fix memory leak in fetch_url (no freeaddrinfo was there).
|
|
sync with recent KAME.
|
|
- separate out the main `data pump' loop into two: one that supports
|
|
rate limiting and one that doesn't. simplifies the code, and speeds
|
|
up the latter case a bit, at the expense of duplicating a few
|
|
lines...
|
|
|
|
Sun Nov 28 18:20:41 EST 1999 lukem
|
|
|
|
* merge ftp from NetBSD-current (19991128):
|
|
- implement xsl_init() and xsl_add(); error checking forms of
|
|
sl_{init,add}()
|
|
- fix bug where the second press of <TAB> on an empty word (i.e, list
|
|
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 <wolfgang@wsrcc.com>
|
|
- complete_remote(): use remglob("", ...) instead of remglob(".", ...),
|
|
for listings of the current working directory; some ftp servers don't
|
|
like `NLST .'.
|
|
[noted by Giles Lean <giles@nemeton.com.au>]
|
|
- recvrequest(): treat remote=="" as remote==NULL when calling
|
|
command(). (to support the above change)
|
|
- support `[user@]' in `[user@]host' and `[user@]host[:][path]'.
|
|
[based on idea (and initial code) from David Maxwell <david@fundy.ca>]
|
|
- `idle' may be invoked without any args
|
|
- reformat some comments
|
|
- reformat usage string in program and man page
|
|
- call updateremotepwd() after successful login, not after successful
|
|
connect
|
|
- always call setsockopt(, IPPROTO_IP, IP_TOS, ) (et al); using #if
|
|
defined(IPPROTO_IP) doesn't work on certain foreign systems where
|
|
enums instead of #defines are used...
|
|
[noted by Matthias Pfaller <leo@dachau.marco.de>]
|
|
|
|
Mon Nov 15 23:01:58 EST 1999 lukem
|
|
|
|
* released lukemftp 1.1
|
|
|
|
Mon Nov 15 09:07:01 EST 1999 lukem
|
|
|
|
* merge libedit from NetBSD-current (19991115):
|
|
- instead of using a private coord_t global variable to store
|
|
the size of the rprompt, use the previously unused coord_t
|
|
el->el_rprompt.p_pos
|
|
|
|
Sat Nov 13 14:42:22 EST 1999 lukem
|
|
|
|
* support caching of results in AC_MSG_TRY_{COMPILE,LINK}
|
|
autoconf tests
|
|
|
|
* add NEWS file
|
|
|
|
* clarify copyright statement in COPYING
|
|
|
|
* merge ftp from NetBSD-current (19991113):
|
|
- implement `set rprompt'; right side version of `set prompt'.
|
|
depends on EL_RPROMPT support i added to editline(3).
|
|
- allow $FTPPROMPT and $FTPRPROMPT to override defaults for
|
|
the relevant prompts
|
|
- move `%' formatting code from prompt() to expandbuf().
|
|
- implement `%.' and `%c', similar to the same % codes in
|
|
tcsh(1) (functionality I added to tcsh nearly 6 years ago),
|
|
except that `%.' always does `...trailing' and `%c' always
|
|
does `/<x>trailing'.
|
|
- unknown `%foo' codes get printed as `%foo'
|
|
- implement updateremotepwd(); update the global variable
|
|
`remotepwd' to contain the remote working directory.
|
|
- add `set prompt', a user configurable prompt. (defaults to
|
|
`ftp> '). the following escape characters a la tcsh(1) are
|
|
supported: %/, %m, %M, and %n.
|
|
- add global var `username'; used by prompt code
|
|
- fix a couple of minor memory leaks
|
|
- bump version
|
|
- prevent minor memory leak (unnecessary strdup)
|
|
- implement restarting file:/// non-proxied http:// URLs
|
|
(with -R).
|
|
- fix a semicolono which stopped file:/// from working
|
|
- split the version string into product and version
|
|
- be consistent about reporting the version between:
|
|
+ status command
|
|
+ about:version URL fetch
|
|
+ User-agent sent in http requests
|
|
- hookup(): when using getservbyname() (when getaddrinfo()
|
|
isn't available), if the provided port is a valid number
|
|
use that rather than trying to do getservbyname() against
|
|
it. fixes a problem on foreign systems noted by Chuck
|
|
Silvers <chuq@chuq.com>
|
|
- support `about:version'. also display the version in the
|
|
output of `status'.
|
|
|
|
* merge libedit from NetBSD-current (19991113):
|
|
- implement printing a right-side prompt. code derived from
|
|
similar work I wrote for tcsh(1) three years ago.
|
|
- implement EL_RPROMPT, which allows a setting/getting of a
|
|
function which returns a string to be used as the
|
|
right-side prompt.
|
|
|
|
* replace manually managed config.h.in with acconfig.h and use
|
|
autoheader to generate the former.
|
|
|
|
* add missing entry for `#undef write' in acconfig.h (for SOCKS)
|
|
|
|
* configure.in:
|
|
- use `LL' suffix on long long constant used to test
|
|
snprintf("%lld")
|
|
- test for EL_RPROMPT instead of EL_EDITMODE, since the
|
|
former is is a newer required feature
|
|
|
|
* in makelist, set LC_ALL="C", in case the locale confuses awk.
|
|
problem noted by Peter Seebach <seebs@plethora.net>
|
|
|
|
Wed Oct 27 07:00:00 UTC 1999 lukem
|
|
|
|
* released 1.0
|
|
|
|
* removed libedit/TEST/test.c; no need to distribute it
|
|
|
|
Mon Oct 25 21:59:54 EST 1999 lukem
|
|
|
|
* released 1.0b7
|
|
|
|
* put VERSION string into lukemftp.h, and display with the `status'
|
|
command
|
|
|
|
Mon Oct 25 11:36:59 EST 1999 lukem
|
|
|
|
* merge ftp from NetBSD-current (19991025):
|
|
- fix up confirm() (broke `a' and `p' in last commit)
|
|
- simplify main loop (don't need `top' variable any more)
|
|
- use a struct sockaddr_in6.sin6_addr for the result from inet_pton(),
|
|
rather than u_char buf[16]
|
|
- add a few more comments
|
|
|
|
new features:
|
|
- add `usage'; displays the usage of a command.
|
|
implemented by calling the c_handler() with argc = 0, argv =
|
|
"funcname".
|
|
- add `passive auto'; does the same as $FTPMODE=auto.
|
|
- add `set [option value]'; display all options, or set an option to
|
|
a value.
|
|
- add `unset option'; unset an option.
|
|
- add getoptionvalue() to retrieve an option's value, and replace a few
|
|
global variables with calls to this.
|
|
- implement cleanuppeer(), which resets various bits of state back to
|
|
`disconnected'. call in disconnect() and lostpeer().
|
|
- support completing on `options'.
|
|
- improve recovery after a SIGINT may have closed the connection.
|
|
XXX: there's still a couple to fix
|
|
|
|
other stuff:
|
|
- various consistency fixes in the man page.
|
|
- ensure that the command usage strings in the code and man page
|
|
match reality.
|
|
- mput/mget: check that the connection still exists before each xfer.
|
|
- minor cosmetic changes in confirm().
|
|
- set code correctly in sizecmd() and modtime()
|
|
- don't need \n in err() strings.
|
|
- change lostpeer to take an argument (rather than casting
|
|
(sig_t)lostpeer in signal handlers)
|
|
- knf and whitespace police.
|
|
|
|
Sun Oct 24 17:02:59 EST 1999 lukem
|
|
|
|
* merge libedit from NetBSD-current (19991024):
|
|
- don't assume locales are not working - it may not be
|
|
the case
|
|
- re_refresh(): cast the character passed to re_addc() to
|
|
unsigned char, so we don't end up calling isprint() with
|
|
negative value when chars are signed and character value
|
|
is >= 128
|
|
- Fix pointer arithmatic (caused problems on LP64, including
|
|
ftp dumping core when `edit' was turned off then on).
|
|
Problem solved by David Huggins-Daines <dhd@eradicator.org>
|
|
|
|
Tue Oct 12 18:05:21 EST 1999 lukem
|
|
|
|
* install man page from ${srcdir} not from .
|
|
|
|
Tue Oct 12 17:00:41 EST 1999 lukem
|
|
|
|
* released 1.0b6
|
|
|
|
* merge from NetBSD-current (19991012):
|
|
a few user interface and cosmetic tweaks:
|
|
- confirm(): move from util.c to cmds.c. display mnemonic
|
|
string in its prompt. add support for `q' (terminate
|
|
current xfer), `?' (show help list)
|
|
- in various signal handlers, output a linefeed only if
|
|
fromatty.
|
|
- if fgets(stdin) returned NULL (i.e, EOF), clearerr(stdin)
|
|
because you don't want future fgets to fail. this is not
|
|
done for the fgets() in the main command loop, since ftp
|
|
will quit at that point.
|
|
- unless ftp is invoked with -a, don't retain the anonftp
|
|
setting between hosts (`ftp somehost:' sets anonftp, but
|
|
you don't want that to `stick' if you close that connection
|
|
and open a new one).
|
|
|
|
Mon Oct 11 23:06:38 EST 1999 lukem
|
|
|
|
* check for working const
|
|
|
|
* reorganise addition of -lukem to LIBS (was being added twice)
|
|
|
|
* merge from netbsd-current:
|
|
- use sigjmp_buf instead of jmp_buf for sigsetjmp() buffer
|
|
|
|
* libedit: don't bother generating & compiling editline.c, since
|
|
its component parts are compiled anyway.
|
|
|
|
Sun Oct 10 12:08:39 EST 1999 lukem
|
|
|
|
* released 1.0b5
|
|
|
|
* in libedit, use xsignal_restart() (from src/util.c) instead of
|
|
signal(); the isn't guaranteed to work on some foreign systems
|
|
(e.g, IRIX) if sigaction() is used in the same program.
|
|
|
|
* merge from netbsd-current:
|
|
- use sigsetjmp()/siglongjump() instead of setjmp()/longjmp();
|
|
the latter don't save the signal mask on some foreign systems.
|
|
- ensure signal handlers don't use stdio and do reset errno
|
|
if they don't exit with siglongjmp()
|
|
- use a common SIGINT handler for {send,recv}request()
|
|
- allow a second SIGINT during the "xfer aborted. waiting for
|
|
remote to finish abort." stage. if this occurs, just call
|
|
lostpeer() to close the connection. whilst this might be
|
|
considered brutal, it's also extremely handy if you're
|
|
impatient or there's lossage at the remote end.
|
|
|
|
* add preformatted manual page
|
|
|
|
* fix --enable-editline
|
|
|
|
Wed Oct 6 10:19:00 EST 1999 lukem
|
|
|
|
* released 1.0b4
|
|
|
|
* don't defining SIGINFO to SIGQUIT if the former doesn't exist; the
|
|
code now supports both as a method of getting the transfer stats
|
|
|
|
* rototill signal handling in the actual data xfer routines, and
|
|
specifically set SIGQUIT to psummary in each one, to override
|
|
editline's handler
|
|
|
|
Tue Oct 5 23:48:29 EST 1999 lukem
|
|
|
|
* factor out SIGINFO setting into a handler that is always active
|
|
(but only prints out info if bytes > 0). only set the handler if
|
|
SIGINFO is defined
|
|
|
|
* hijack SIGQUIT to be the same as SIGINFO
|
|
|
|
* in {recv,send}request(), factor a lot of duplicated code out into
|
|
a `cleanup' section at the end
|
|
|
|
* rework shell() a bit
|
|
|
|
* enhancments from Marc Horowitz <marc@mit.edu> to improve
|
|
connection timeouts:
|
|
- implement xsignal_restart(), which only sets the SA_RESTART
|
|
flag if specifically requested
|
|
- xsignal() is now a wrapper to xsignal_restart(). INFO,
|
|
USR1, USR2 and WINCH are restartable, ALRM, INT, PIPE and
|
|
QUIT are not
|
|
- improve getreply()'s timeout code to take advantage of the
|
|
above
|
|
|
|
* improve wording of how globbing works for `classic' URLs (host:path)
|
|
suggested by John Refling <johnr@imageworks.com> in relation to PRs
|
|
[bin/8519] and [bin/8520]
|
|
|
|
* always compile in the `edit' command even if NO_EDITCOMPLETE defined
|
|
it's just a no-op in the latter case, which is more consistent to
|
|
the users
|
|
|
|
* always compile in about: support (i.e, remove NO_ABOUT). i'm
|
|
entitled to some vanity in this program...
|
|
|
|
* update copyrights
|
|
|
|
Mon Oct 4 10:57:41 EST 1999 lukem
|
|
|
|
* Invoke ar with `cr' not `cq'
|
|
|
|
* Use AC_PROG_RANLIB to find ranlib, and use it on the libraries
|
|
|
|
* Remove `makelist' from dependency list for libedit files; re-running
|
|
configure shouldn't result in rebuilding libedit
|
|
|
|
* Add support for --{en,dis}able-editcomplete (defaults to enabled),
|
|
which prevents libedit support from being compiled in.
|
|
From Chris G. Demetriou <cgd@netbsd.org>
|
|
|
|
Sun Oct 3 16:49:01 EST 1999 lukem
|
|
|
|
* touch up the README
|
|
|
|
* add COPYING, INSTALL, THANKS
|
|
|
|
* whitespace consistency
|
|
|
|
* in config.h, replace NO_QUAD with HAVE_QUAD_SUPPORT, and in
|
|
lukemftp.h define the former if the latter is non zero
|
|
|
|
* change test against GETPGRP_VOID from #ifdef to #if
|
|
|
|
* snprintf(): in the truncation case, ensure that the length
|
|
returned is the actual length, not the needed length
|
|
|
|
Sat Oct 2 00:41:34 EST 1999 lukem
|
|
|
|
* fix more lossage with $(srcdir) / $(VPATH) stuff; seems to work now
|
|
when configured in a separate directory
|
|
|
|
* actually test the correct variable when determining whether to run
|
|
AC_FUNC_GETPGRP
|
|
|
|
Fri Oct 1 19:32:22 EST 1999 lukem
|
|
|
|
* released 1.0b3
|
|
|
|
* use AC_PROG_MAKE_SET
|
|
|
|
* determine setting of NO_QUAD with configure not lukemftp.h
|
|
|
|
* if have long long and have snprintf, test that snprintf
|
|
supports %lld. if it doesn't use private version
|
|
|
|
* change strtoq from returning off_t to returning long long
|
|
|
|
* updates from NetBSD mainline:
|
|
- only try epsv once per connection (i.e, don't bother again
|
|
if it fails)
|
|
- improve description of rate command
|
|
- fix up global vars; they're now externed in ftp_var.h
|
|
except when main.c includes it
|
|
- remove "pathnames.h"
|
|
|
|
Fri Oct 1 10:08:43 EST 1999 lukem
|
|
|
|
* updates from NetBSD mainline:
|
|
- fix determining of homedir
|
|
- parse_url(): fix checking of portnum
|
|
- move kame copyrights after bsd/tnfi ones
|
|
|
|
* released 1.0b2
|
|
|
|
* add %lld and %qd support to snprintf() for displaying long long's
|
|
|
|
* support VPATH and srcdir
|
|
|
|
Thu Sep 30 17:19:35 EST 1999 lukem
|
|
|
|
* released 1.0b1
|
|
|
|
* fix from NetBSD mainline: in empty() FD_ZERO the correct variable
|
|
|
|
Wed Sep 29 23:34:33 EST 1999 lukem
|
|
|
|
* major rework; reimport code from NetBSD-current 1999/09/29 into
|
|
separate subdirectories and build from there. organisation is now:
|
|
libedit replacement libedit
|
|
libukem replacements for missing functions
|
|
src main ftp source
|
|
|
|
Mon Sep 27 00:43:12 EST 1999 lukem
|
|
|
|
* released 1.0 a6
|
|
|
|
Sun Sep 26 17:17:05 EST 1999 lukem
|
|
|
|
* released 1.0 a5
|
|
|
|
Sat Sep 25 00:58:28 EST 1999 lukem
|
|
|
|
* released 1.0 a4
|
|
|
|
Fri Sep 24 17:07:07 EST 1999 lukem
|
|
|
|
* released 1.0 a3
|
|
|
|
Fri Sep 24 16:18:29 EST 1999 lukem
|
|
|
|
* released 1.0 a2
|
|
|
|
Tue Sep 21 11:38:49 EST 1999 lukem
|
|
|
|
* import usr.src/bin/ftp and usr.src/lib/libedit sources from NetBSD
|