The NetBSD Project

CVS log for src/usr.bin/ftp/complete.c

[BACK] Up to [cvs.NetBSD.org] / src / usr.bin / ftp

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.46.38.3 / (download) - annotate - [select for diffs], Mon Sep 12 17:08:13 2022 UTC (19 months, 1 week ago) by martin
Branch: netbsd-8
Changes since 1.46.38.2: +3 -4 lines
Diff to previous 1.46.38.2 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored) to selected 1.4 (colored)

Catch up to current, requested by christos in ticket #1763:

        usr.bin/ftp/Makefile                            up to 1.39
        usr.bin/ftp/cmds.c                              up to 1.141
        usr.bin/ftp/complete.c                          up to 1.47
        usr.bin/ftp/domacro.c                           up to 1.23
        usr.bin/ftp/extern.h                            up to 1.82
        usr.bin/ftp/fetch.c                             up to 1.235
        usr.bin/ftp/ftp.1                               up to 1.147
        usr.bin/ftp/ftp.c                               up to 1.174
        usr.bin/ftp/ftp_var.h                           up to 1.86
        usr.bin/ftp/main.c                              up to 1.128
        usr.bin/ftp/progressbar.c                       up to 1.24
        usr.bin/ftp/progressbar.h                       up to 1.9
        usr.bin/ftp/ssl.c                               up to 1.12
        usr.bin/ftp/ssl.h                               up to 1.5
        usr.bin/ftp/util.c                              up to 1.164
        usr.bin/ftp/version.h                           up to 1.94

ftp(1): validate address from PASV and LPSV response.
ftp(1): use raw write(2) instead of fwrite(3) to avoid stream
corruption because of the progress bar interrupts.
Fixes for PR 56219 and PR 55857.
PR 57003: Support relative redirects.

Revision 1.46.38.2 / (download) - annotate - [select for diffs], Mon Sep 12 15:05:21 2022 UTC (19 months, 1 week ago) by martin
Branch: netbsd-8
Changes since 1.46.38.1: +4 -3 lines
Diff to previous 1.46.38.1 (colored) to branchpoint 1.46 (colored) to selected 1.4 (colored)

Backout ticket #1763 for now - trust anchors are not solved.

Revision 1.46.38.1 / (download) - annotate - [select for diffs], Mon Sep 12 14:46:51 2022 UTC (19 months, 1 week ago) by martin
Branch: netbsd-8
Changes since 1.46: +3 -4 lines
Diff to previous 1.46 (colored) to selected 1.4 (colored)

Catch up to current, requested by christos in ticket #1763:

	usr.bin/ftp/Makefile                            up to 1.39
	usr.bin/ftp/cmds.c                              up to 1.141
	usr.bin/ftp/complete.c                          up to 1.47
	usr.bin/ftp/domacro.c                           up to 1.23
	usr.bin/ftp/extern.h                            up to 1.82
	usr.bin/ftp/fetch.c                             up to 1.235
	usr.bin/ftp/ftp.1                               up to 1.147
	usr.bin/ftp/ftp.c                               up to 1.174
	usr.bin/ftp/ftp_var.h                           up to 1.86
	usr.bin/ftp/main.c                              up to 1.128
	usr.bin/ftp/progressbar.c                       up to 1.24
	usr.bin/ftp/progressbar.h                       up to 1.9
	usr.bin/ftp/ssl.c                               up to 1.11
	usr.bin/ftp/ssl.h                               up to 1.5
	usr.bin/ftp/util.c                              up to 1.164
	usr.bin/ftp/version.h                           up to 1.94

ftp(1): validate address from PASV and LPSV response.
ftp(1): use raw write(2) instead of fwrite(3) to avoid stream
corruption because of the progress bar interrupts.
Fixes for PR 56219 and PR 55857.
PR 57003: Support relative redirects.

Revision 1.46.46.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:10:19 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.46: +3 -4 lines
Diff to previous 1.46 (colored) next main 1.47 (colored) to selected 1.4 (colored)

Sync with HEAD

Revision 1.47 / (download) - annotate - [select for diffs], Mon Jan 28 12:04:16 2019 UTC (5 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, HEAD
Changes since 1.46: +3 -4 lines
Diff to previous 1.46 (colored) to selected 1.4 (colored)

PR/53916: Rob Gill: remove redundant assignment to matchlen.

Revision 1.44.6.1 / (download) - annotate - [select for diffs], Wed May 13 19:19:50 2009 UTC (14 years, 11 months ago) by jym
Branch: jym-xensuspend
Changes since 1.44: +19 -16 lines
Diff to previous 1.44 (colored) next main 1.45 (colored) to selected 1.4 (colored)

Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html

Revision 1.46 / (download) - annotate - [select for diffs], Sun Apr 12 10:18:52 2009 UTC (15 years ago) by lukem
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-pagecache, tls-maxphys-base, tls-maxphys, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-premerge-20091211, matt-nb8-mediatek-base, matt-nb8-mediatek, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, localcount-20160914, jym-xensuspend-nbase, jym-xensuspend-base, cherry-xenmp-base, cherry-xenmp, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2, agc-symver-base, agc-symver
Branch point for: phil-wifi, netbsd-8
Changes since 1.45: +17 -14 lines
Diff to previous 1.45 (colored) to selected 1.4 (colored)

Fix numerous WARNS=4 issues (-Wcast-qual -Wsign-compare).

Revision 1.45 / (download) - annotate - [select for diffs], Sun Apr 12 07:07:41 2009 UTC (15 years ago) by lukem
Branch: MAIN
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored) to selected 1.4 (colored)

fix -Wshadow issues

Revision 1.44 / (download) - annotate - [select for diffs], Tue Sep 30 03:41:53 2008 UTC (15 years, 6 months ago) by lukem
Branch: MAIN
CVS Tags: netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2
Branch point for: jym-xensuspend
Changes since 1.43: +3 -3 lines
Diff to previous 1.43 (colored) to selected 1.4 (colored)

update copyrights

Revision 1.42.10.1 / (download) - annotate - [select for diffs], Sun May 18 12:36:05 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-pf42
Changes since 1.42: +2 -9 lines
Diff to previous 1.42 (colored) next main 1.43 (colored) to selected 1.4 (colored)

sync with head.

Revision 1.43 / (download) - annotate - [select for diffs], Mon Apr 28 20:24:13 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, hpcarm-cleanup-nbase
Changes since 1.42: +2 -9 lines
Diff to previous 1.42 (colored) to selected 1.4 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.42 / (download) - annotate - [select for diffs], Tue Apr 17 05:52:03 2007 UTC (17 years ago) by lukem
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf
Branch point for: yamt-pf42
Changes since 1.41: +4 -3 lines
Diff to previous 1.41 (colored) to selected 1.4 (colored)

* Implement -s srcaddr; uses srcaddr as the local IP address for all
  connections.
  Based on code in the version of ftp that FreeBSD had before they
  replaced it with lukemftp.
* Move error message handling into ftp_connect() rather than in the
  caller, so that more specific error reporting can occur.
* Improve consistency of various warning and error messages.

Revision 1.41 / (download) - annotate - [select for diffs], Tue Jan 31 20:01:23 2006 UTC (18 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.40: +14 -14 lines
Diff to previous 1.40 (colored) to selected 1.4 (colored)

Rename xfoo() to ftp_foo() to avoid collisions with libssh. Don't ask.

Revision 1.38.12.2 / (download) - annotate - [select for diffs], Sun Jul 24 10:28:25 2005 UTC (18 years, 9 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Changes since 1.38.12.1: +3 -3 lines
Diff to previous 1.38.12.1 (colored) to branchpoint 1.38 (colored) next main 1.39 (colored) to selected 1.4 (colored)

Pull up revision 1.40 (requested by lukem in ticket #606):
copyright maintenance

Revision 1.38.12.1 / (download) - annotate - [select for diffs], Sun Jul 24 10:19:26 2005 UTC (18 years, 9 months ago) by tron
Branch: netbsd-3
Changes since 1.38: +4 -4 lines
Diff to previous 1.38 (colored) to selected 1.4 (colored)

Pull up revision 1.39 (requested by lukem in ticket #606):
Some const cleanups.

Revision 1.40 / (download) - annotate - [select for diffs], Thu Jun 9 16:38:29 2005 UTC (18 years, 10 months ago) by lukem
Branch: MAIN
Changes since 1.39: +3 -3 lines
Diff to previous 1.39 (colored) to selected 1.4 (colored)

copyright maintenance

Revision 1.39 / (download) - annotate - [select for diffs], Thu May 19 02:55:37 2005 UTC (18 years, 11 months ago) by lukem
Branch: MAIN
Changes since 1.38: +4 -4 lines
Diff to previous 1.38 (colored) to selected 1.4 (colored)

Some const cleanups.

Revision 1.38 / (download) - annotate - [select for diffs], Mon May 1 10:35:17 2000 UTC (23 years, 11 months ago) by lukem
Branch: MAIN
CVS Tags: netbsd-3-base, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, minoura-xpg4dl-base, minoura-xpg4dl, fvdl_fs64_base
Branch point for: netbsd-3
Changes since 1.37: +16 -30 lines
Diff to previous 1.37 (colored) to selected 1.4 (colored)

convert to ANSI KNF

Revision 1.37 / (download) - annotate - [select for diffs], Thu Jan 20 13:19:46 2000 UTC (24 years, 3 months ago) by lukem
Branch: MAIN
Changes since 1.36: +6 -4 lines
Diff to previous 1.36 (colored) to selected 1.4 (colored)

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>.

Revision 1.27.2.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:36:57 1999 UTC (24 years, 3 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.27: +78 -49 lines
Diff to previous 1.27 (colored) next main 1.28 (colored) to selected 1.4 (colored)

Pull up to last week's -current.

Revision 1.36 / (download) - annotate - [select for diffs], Sun Nov 28 06:32:04 1999 UTC (24 years, 4 months ago) by lukem
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.35: +14 -14 lines
Diff to previous 1.35 (colored) to selected 1.4 (colored)

* 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())

Revision 1.35 / (download) - annotate - [select for diffs], Fri Nov 26 21:41:55 1999 UTC (24 years, 4 months ago) by lukem
Branch: MAIN
Changes since 1.34: +5 -5 lines
Diff to previous 1.34 (colored) to selected 1.4 (colored)

* 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>]

Revision 1.34 / (download) - annotate - [select for diffs], Sun Oct 24 12:31:37 1999 UTC (24 years, 6 months ago) by lukem
Branch: MAIN
CVS Tags: comdex-fall-1999-base, comdex-fall-1999
Changes since 1.33: +47 -8 lines
Diff to previous 1.33 (colored) to selected 1.4 (colored)

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.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Oct 5 01:16:12 1999 UTC (24 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.32: +5 -5 lines
Diff to previous 1.32 (colored) to selected 1.4 (colored)

add TNFi copyright to all files i've done more than a minor amount of work to...

Revision 1.32 / (download) - annotate - [select for diffs], Tue Sep 28 06:47:40 1999 UTC (24 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.31: +14 -22 lines
Diff to previous 1.31 (colored) to selected 1.4 (colored)

* add new commands:
	lpage	page local files
	pdir	as dir, but through your $PAGER
	pls	as ls, but through your $PAGER
* implement docase() (a la dotrans() et al) and use appropriately, rototilling
  some duplicated code
* globulize(): modify to return a pointer to the strdup()ed result in all cases,
  and hack the code that calls it to take this into account
* replace strcpy() and strncpy() with strlcpy()
* put(), getit(): use some aptly named local vars instead of argv[...]
* delint

Revision 1.31 / (download) - annotate - [select for diffs], Mon Sep 27 23:09:43 1999 UTC (24 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.30: +2 -3 lines
Diff to previous 1.30 (colored) to selected 1.4 (colored)

* idle(): rename to idlecmd(). certain linux distributions have an incompatible
  prototype for idle() in <unistd.h> (which i thought was against namespace
  and sensibility guidelines, but...)
* consistently use xsignal() instead of signal(). we get known behaviour
  in all cases (SA_RESTART), which is good for some borken foreign systems.
* remove signal.h from most files; it's unnecessary now
* fetch_url(): use `long chunksize' instead of ssize_t; it's more portable, and
  we're setting chunksize with strtol() anyway
* xsignal(): only use SA_RESTART if it exists. SunOS 4.x doesn't have it
  but has the inverse (SA_INTERRUPT). the original function i was inspired
  from had this support (lib/signal.c, W. Richard Stevens' `UNP 2nd ed Vol 1').
* remove <termios.h> from util.c; it should be unnecessary now

Revision 1.30 / (download) - annotate - [select for diffs], Sun Sep 26 02:00:12 1999 UTC (24 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.29: +3 -3 lines
Diff to previous 1.29 (colored) to selected 1.4 (colored)

* replace ifdefs against __SVR4 and __linux__ with DIRENT_MISSING_D_NAMLEN;
  it's more portable and more obvious
* remove the mkgmtime() && HAVE_TIMEGM stuff:
	a) why should netbsd have to define HAVE_TIMEGM to compile cleanly?
	b) foreign compiles of ftp should just be linked with working
	   timegm function

a more portable version of this ftp client will be released as a 3rdparty
product; no use polluting our code with half-baked attempts...

Revision 1.29 / (download) - annotate - [select for diffs], Fri Sep 24 14:28:14 1999 UTC (24 years, 7 months ago) by lukem
Branch: MAIN
Changes since 1.28: +3 -4 lines
Diff to previous 1.28 (colored) to selected 1.4 (colored)

* use %lld instead of %qd to print out (long long) vars.
  (slightly more portable; e.g, solaris supports this)
* remove some fluff (lint)

Revision 1.28 / (download) - annotate - [select for diffs], Fri Sep 24 05:35:09 1999 UTC (24 years, 7 months ago) by lukem
Branch: MAIN
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored) to selected 1.4 (colored)

in complete(), only copy the word if there is one.
`cd <TAB>' was triggering _DIAGASSERT(src != NULL)).

Revision 1.27 / (download) - annotate - [select for diffs], Wed Sep 22 03:01:53 1999 UTC (24 years, 7 months ago) by lukem
Branch: MAIN
Branch point for: wrstuden-devbsize
Changes since 1.26: +6 -3 lines
Diff to previous 1.26 (colored) to selected 1.4 (colored)

replace snprintf() with strlcpy(), strlcat(), or direct assignment
where appropriate. (strlc*() are easier to port to foriegn systems).

XXX; there's still a few snprintf's in the progress meter stuff to convert

Revision 1.26 / (download) - annotate - [select for diffs], Sat Jul 10 19:40:36 1999 UTC (24 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.25: +3 -3 lines
Diff to previous 1.25 (colored) to selected 1.4 (colored)

don't do unnecessary const castaways

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Fri Jun 25 01:14:57 1999 UTC (24 years, 10 months ago) by cgd
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001
Changes since 1.21: +8 -8 lines
Diff to previous 1.21 (colored) next main 1.22 (colored) to selected 1.4 (colored)

pull up revs 1.22-1.24 from trunk. (cgd)

Revision 1.25 / (download) - annotate - [select for diffs], Thu Jun 24 14:54:28 1999 UTC (24 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.24: +3 -2 lines
Diff to previous 1.24 (colored) to selected 1.4 (colored)

include <signal.h> explicitly! we use sig_t extern.h, and we cannot
depend on other headers fetching it on other OS's.

Revision 1.24 / (download) - annotate - [select for diffs], Sun Jun 20 22:07:28 1999 UTC (24 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.23: +5 -5 lines
Diff to previous 1.23 (colored) to selected 1.4 (colored)

split the "SMALL" #ifdefs into ones for NO_ABOUT, NO_EDITCOMPLETE, and
NO_PROGRESS.  -DSMALL still implies all of those.  progress meter support
isn't necessary for the smallest possible ftp client, but it adds very
little space and makes users' lives much better.  Therefore, it should
be enabled for installation media if at all possible.

Revision 1.23 / (download) - annotate - [select for diffs], Sat Jun 12 18:19:53 1999 UTC (24 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.22: +4 -4 lines
Diff to previous 1.22 (colored) to selected 1.4 (colored)

oops reversed the test.

Revision 1.22 / (download) - annotate - [select for diffs], Sat Jun 12 18:07:34 1999 UTC (24 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored) to selected 1.4 (colored)

Make this compile on linux [zoularis on linux works]

Revision 1.21 / (download) - annotate - [select for diffs], Mon Mar 8 03:09:08 1999 UTC (25 years, 1 month ago) by lukem
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE
Branch point for: netbsd-1-4
Changes since 1.20: +5 -5 lines
Diff to previous 1.20 (colored) to selected 1.4 (colored)

whitespace & copyright fixes

Revision 1.20 / (download) - annotate - [select for diffs], Thu Feb 18 23:08:41 1999 UTC (25 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored) to selected 1.4 (colored)

during an ambiguous complete, take into account the length of the
string already input before inserting the non-ambiguous component.
bug noted by Thorsten Frueauf <frueauf@ira.uka.de> in [bin/7014]

Revision 1.19 / (download) - annotate - [select for diffs], Mon Feb 8 05:27:56 1999 UTC (25 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored) to selected 1.4 (colored)

whitespace

Revision 1.18 / (download) - annotate - [select for diffs], Sun Feb 7 13:14:06 1999 UTC (25 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.17: +8 -7 lines
Diff to previous 1.17 (colored) to selected 1.4 (colored)

changes to fix [bin/6951] by Peter Simons <simons@cys.de>:
* implement ftpvis(), which \ quotes the following in the given string:
  SP, TAB, \, CR, "
* use ftpvis() in complete_ambiguous(), to escape characters in a word
  which would confuse makeargv()/slurpstring().

Revision 1.17 / (download) - annotate - [select for diffs], Sun Feb 7 12:27:50 1999 UTC (25 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.16: +14 -2 lines
Diff to previous 1.16 (colored) to selected 1.4 (colored)

complete ~ in local paths (noted by perry@netbsd.org)

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Tue Nov 10 18:48:41 1998 UTC (25 years, 5 months ago) by cgd
Branch: netbsd-1-3
CVS Tags: netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003
Changes since 1.11: +48 -19 lines
Diff to previous 1.11 (colored) next main 1.12 (colored) to selected 1.4 (colored)

pull up rev(s) 1.12-1.16 from trunk and patch to work on 1.3 branch.  (feyrer)

Revision 1.16 / (download) - annotate - [select for diffs], Sat Aug 8 07:51:30 1998 UTC (25 years, 8 months ago) by lukem
Branch: MAIN
Changes since 1.15: +4 -3 lines
Diff to previous 1.15 (colored) to selected 1.4 (colored)

minor workaround for borken compilers

Revision 1.15 / (download) - annotate - [select for diffs], Mon Aug 3 01:49:25 1998 UTC (25 years, 8 months ago) by lukem
Branch: MAIN
Changes since 1.14: +4 -8 lines
Diff to previous 1.14 (colored) to selected 1.4 (colored)

features:
* support $no_proxy, which is a comma or space separated list of
  host[:port] elements for which proxying is to be disabled.
  (asked for by cgd in [bin/5027])
* if $FTPANONPASS is defined, use that as the anon ftp password
  (instead of "`whoami`@")
* allow http URL's without a filename as long as an output file
  is specified.

other stuff:
* implement parse_url(), which breaks up a URL into its bits, and use.
* simplify url_get() and auto_fetch() to use parse_url() and to not
  modify the supplied URL or a copy of it.
* implement xmalloc() and xstrdup(); error-checked malloc()/strdup()
* add more consistency to messages, quoting strings in output as `%s'

Revision 1.14 / (download) - annotate - [select for diffs], Thu Jun 4 08:28:35 1998 UTC (25 years, 10 months ago) by lukem
Branch: MAIN
Changes since 1.13: +6 -5 lines
Diff to previous 1.13 (colored) to selected 1.4 (colored)

some fixes & enhancements from openbsd's ftp, with extra fixes by me:
* default to passive with active fallback. $FTPMODE modifies this behaviour.
  -A forces active connection.
* support '-o outfile' for auto-fetched files. outfile can be a file,
  `-' (for stdout), or '|command' (to output each file through command).
* support '-r waittime', which retries the connection after waittime seconds
  if it fails.
* fix 'page file' when restart is non-zero.
* try all ip-addresses of a host in a http fetch (as the normal ftp fetch
  does).

XXX: a ``broken pipe'' error sometimes occurs with -o '|command';
i haven't tracked this down yet.

Revision 1.13 / (download) - annotate - [select for diffs], Mon Jun 1 14:46:11 1998 UTC (25 years, 10 months ago) by lukem
Branch: MAIN
Changes since 1.12: +24 -6 lines
Diff to previous 1.12 (colored) to selected 1.4 (colored)

* use CC_REFRESH_BEEP in an ambiguous complete (recently added to -ledit)
* in command completion, append a space to a definite match
* in local path completion, append a space or / to a definite match,
  depending if the path is a non-directory or directory respectively
(nothing added to remote path completion yet, until a simple sane method
 of determining if the path is a directory or not is available).

Revision 1.12 / (download) - annotate - [select for diffs], Wed May 20 00:53:57 1998 UTC (25 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.11: +14 -5 lines
Diff to previous 1.11 (colored) to selected 1.4 (colored)

- cast arg to is*() to unsigned char.
- don't require d_namlen to exist
- don't recompute the length of the file everytime around the loop.

Revision 1.11 / (download) - annotate - [select for diffs], Sat Sep 13 09:05:53 1997 UTC (26 years, 7 months ago) by lukem
Branch: MAIN
CVS Tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA
Branch point for: netbsd-1-3
Changes since 1.10: +7 -5 lines
Diff to previous 1.10 (colored) to selected 1.4 (colored)

Fixes from Todd Miller <Todd.Miller@courtesan.com>:
* use size_t instead of int in places
* use symbolic constants when using access()

Revision 1.10 / (download) - annotate - [select for diffs], Mon Aug 18 10:20:18 1997 UTC (26 years, 8 months ago) by lukem
Branch: MAIN
Changes since 1.9: +4 -4 lines
Diff to previous 1.9 (colored) to selected 1.4 (colored)

bugs fixed:
* don't interpret '-' or '|' when a local filename is determined from
  the remote name (i.e, in mget, and in get with only one argument).
  This is implemented using an extra argument to recvrequest().
  Fixes a major security hole.
* clean up memory leak when using globulize()
* clean up a couple of comments
* fix wording in TNF copyright

features added:
* support for TIS fwtk gate-ftp servers:
	* read defaults from $FTPSERVER && $FTPSERVERPORT
	* start in gate-ftp mode if invoked as 'gate-ftp'
	* toggle or set with 'gate [host [port]]'

Revision 1.9 / (download) - annotate - [select for diffs], Sun Jul 20 09:45:43 1997 UTC (26 years, 9 months ago) by lukem
Branch: MAIN
Changes since 1.8: +12 -3 lines
Diff to previous 1.8 (colored) to selected 1.4 (colored)

* use RCSID() && COPYRIGHT() macros
* cleanup for WARNS=1 (including some ugly '(void)&var' bits wrapped in
  #ifdef __GNUC__ to shut up gcc warnings WRT setjmp/longjmp)
* use strtol() instead of atoi(), and more extensively check result of
  conversion
* use u_int16_t instead of short or int for TCP port addresses

Revision 1.8 / (download) - annotate - [select for diffs], Sat May 24 16:34:30 1997 UTC (26 years, 11 months ago) by lukem
Branch: MAIN
Changes since 1.7: +10 -27 lines
Diff to previous 1.7 (colored) to selected 1.4 (colored)

Simplify NLST parsing code in complete_remote(); just basename each of
the returned names! Fixes parsing problems caused by the differences
between NLST output on BSD, Solaris, and Windows NT.

Revision 1.7 / (download) - annotate - [select for diffs], Mon Apr 14 09:09:16 1997 UTC (27 years ago) by lukem
Branch: MAIN
Changes since 1.6: +4 -4 lines
Diff to previous 1.6 (colored) to selected 1.4 (colored)

More enhancements/bugfixes (when will it end?)
* differentiate between being connected, and being logged in
* cleanup some text messages
* support username & password ftp URLs (ftp://user:pass@host/) in non-proxy
  situations; assume proxy supports it for proxy situations.
* cd to / before performing any autofetch transfers
* use strncasecmp in URL parsing. fix from <Todd.Miller@courtesan.com>

Revision 1.6 / (download) - annotate - [select for diffs], Sun Mar 16 14:24:16 1997 UTC (27 years, 1 month ago) by lukem
Branch: MAIN
Changes since 1.5: +45 -41 lines
Diff to previous 1.5 (colored) to selected 1.4 (colored)

Fixes from <Todd.Miller@cs.colorado.edu>, with some cleanup and reworks by me:
* only echo "Passive mode" in verbose mode; scripts that use ftp
  may get unwanted output otherwise
* disable progress bar and modification time preservation when
  retreiving to a non-regular files. fixes progress bar getting in
  way of "get file /dev/tty"
* setup el_init() et al if editing is set, not if fromatty.
  TODO: migrate this to a function, and call if editing is turned on later
	in the session. also implement edit_cleanup if editing is turned off
* call el_set() after setting SIGWINCH handler. This fixes the problem
  when suspending in a non-cbreak shell (e.g, csh) would trash your tty mode.
* reset interactive mode correctly in auto_fetch() mget mode

Revision 1.5 / (download) - annotate - [select for diffs], Fri Mar 14 01:39:35 1997 UTC (27 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

SMALLFTP->SMALL; remove SMALL from Makefile

Revision 1.4 / (download) - annotate - [selected], Thu Mar 13 22:38:40 1997 UTC (27 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.3: +4 -2 lines
Diff to previous 1.3 (colored)

Deal with SMALLFTP a bit differently [by compiling complete.c]

Revision 1.3 / (download) - annotate - [select for diffs], Thu Mar 13 06:23:13 1997 UTC (27 years, 1 month ago) by lukem
Branch: MAIN
Changes since 1.2: +39 -27 lines
Diff to previous 1.2 (colored) to selected 1.4 (colored)

Features:
* support remglobbing of auto_fetch arguments
* new flag - '-e'; disable editing
* "page file" == "get file |${PAGER-less}"

Bugfixes/cleanup:
* consistently use a trailing '.' on messages
* code cleanup, including buffer overrun fixes, use puts
  and putchar in places, etc (inspired by OpenBSD mods)
* disable progress bar when local-file is a pipe or '-'
* skip \r in http headers
* fix remote ftpd slash bug more elegantly (so it works with ////)
* abort_remote(): check if cout==NULL before using it. should fix [bin/3273]
* fixed up cosmetic problems when complete_remote() generated errors from the
  remote server (such as "no files found", "login with user and pass", ...)
  done by adding extra argument to remglob(), which is a pointer to an error
  buffer to put messages in rather than printing to stdout.

Revision 1.2 / (download) - annotate - [select for diffs], Sat Feb 1 10:44:57 1997 UTC (27 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.1: +15 -3 lines
Diff to previous 1.1 (colored) to selected 1.4 (colored)

[Yet Another Huge Ftp Commit - hopefully the last for a while,
 barring any more little things people want added ...]

New features:
* progressmeter is now asynchronous, so "stalled" transfers can be
  detected. "- stalled -" is displayed instead of the ETA in this case.
  When the xfer resumes, the time that the xfer was stalled for is
  factored out of the ETA. It is debatable whether this is better than
  not factoring it out, but I like it this way (I.e, if it stalls for 8
  seconds and the ETA was 30 seconds, when it resumes the ETA will still
  be 30 seconds).
* verbosity can be disabled on the command line (-V), so that in auto-fetch
  mode the only lines displayed will be a description of the file, and
  the progress bar (if possible)
* if the screen is resized (and detected via the SIGWINCH signal), the
  progress bar will rescale automatically.

Bugs fixed:
* progress bar will not use the last character on the line, as this can
  cause problems on some terminals
* screen dimensions (via ioctl(TIOCWINSZ)) should use stdout not stdin
* progressmeter() used some vars before initialising them
* ^D will quit now. [fixes bin/3162]
* use hstrerror() to generate error message for host name lookup failure.
* use getcwd instead of getwd (it should have been OK, but why tempt fate?)
* auto-fetch transfers will always return a positive exit value upon failure
  or interruption, relative to the file's position in argv[].
* remote completion of / will work, without putting a leading "///".
  This is actually a bug in ftpd(1), where "NLST /" prefixes all names
  with "//", but fixing every ftpd(1) is not an option...

Revision 1.1 / (download) - annotate - [select for diffs], Sun Jan 19 14:19:06 1997 UTC (27 years, 3 months ago) by lukem
Branch: MAIN
Diff to selected 1.4 (colored)

New features:
* Command line editing via editline(3) library.
* Context sensitive command and file completion, including remote files.

Enhancements to auto-fetch feature:
* Support for http:// URLs using the http protocol, including proxy HTTP
  support via $htty_proxy if it's defined.
* The connection is kept open between successive files on the same host.
  (obviously, this does not count for http requests.)
* Return value of ftp is 0 on no error, or the offset in argv[] of the file
  which failed (i.e., argv[x] failed, ftp returns x).
* If the path in an ftp URL or classic format line has a trailing '/',
  cd to the path and enter interactive mode. Fixes [bin/3011], albiet
  requiring the user to help ftp in determining the operation.

Other changes:
* '-P port' works for normal ftp, and is the default for all classic style
  auto-fetch transfers and for ftp URLs that don't specify the port.
  (previously it would just work for the first xfer.)
* Some code moved into separated files along logical divisions.
* Editing and completion can be compiled out with -DSMALLFTP.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>