879 lines
31 KiB
Plaintext
879 lines
31 KiB
Plaintext
|
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
|