2000-12-07  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* getaddrinfo.c (getaddrinfo): fix mapping of HOST_NOT_FOUND
	error.
	(gai_strerror): fix capitalization of error strings.

	* getaddrinfo.c (getaddrinfo): fix bug (ai allocation at wrong
	time) found by OSF/1 cc.

	* ftp.c (ftp_cat): disable transfer rate display (since it is
	unreliable).

	* util.c (parse_url): recognize literal IPv6 addresses (RFC 2732).
	
	* fntable.fn, mkfntab-c.m4, mkfntab-h.m4, mkfntexi.m4,
	mkoptab-c.m4, mkoptab-h.m4, mkoptexi.m4, options.op: change quotes
	to << and >>.

	* configure.in: include comment in AC_DEFINE, obsoleting
	acconfig.h.
	don't check for hstrerror.

	* getaddrinfo.c: move replacement h_errno declarartion from
	sockets.c here.
	(getaddrinfo): map h_errno values to return values.

2000-12-06  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* getaddrinfo.c (getaddrinfo): avoid host name lookup for raw ip
	addresses, use inet_aton.

	* sockets.c (sockaddr_ntop): omit scope id.
	
	* main.c (main): initialize ftp_host et al before getting initial
	directory.
	
	* ftp.c, mkbind.c, readdir.c, sockets.c, status.c, tag.c, tty.c:
	code cleanup for -Wall.
	
	* mkfntab-h.m4: emit correct prototypes for bindable functions.
	
	* functions.h: move aux_* prototypes from fn_select here
	(aux_download used in main.c)
	
	* util.h: fix function name in prototype.
	* getaddrinfo.c (getaddrinfo): don't free airet before it is
	initialized.
	* ftp.c (ftp_port): fix endianness bug.

2000-12-05  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* sockets.c (sockaddr_ntop): work around mising sa_len.
	* configure.in: check for member sa_len of struct sockaddr.
	* acinclude.m4 (NIH_HAVE_STRUCT_MEMBER): generic check for a
	member of a struct.

	* ftp.c (ftp_port): support for inet6.
	(ftp_addr, ftp_gethostaddr): store address in struct
	sockaddr_storage for protocol independence.

	* sockets.c (sopen): new version with inet6 support.
	(spassive): new version with inet6 support.
	(sockaddr_ntop): new function.

	* configure.in: check for struct sockaddr_storage.
	* acinclude.m4 (NIH_HAVE_STRUCT): generic check for a struct.

2000-12-04  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* configure.in: check for presence of getaddrinfo.
	* getaddrinfo.c: new replacement function.

2000-11-26  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* readdir.c (read_dir): don't call pfunc[npfunc], as it doesn't
	exist.
	(parse_unix): recognize lines where there is no space between
	permissions and number of links (as is the case on some servers on
	files with more than 99 links).

2000-10-19  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* configure.in: search for tgetent in libc (needed on Darvin).

2000-10-16  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* sockets.c (sopen): include hostname in connect error message.

2000-06-28  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_accept): set close-on-exec flag, so piping works.

2000-06-02  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* inet_aton.c (inet_aton): new function.
	* configure.in: AC_REPLACE_FUNCS inet_aton.

2000-06-01  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* sockets.c (sopen): use inet_aton to convert dotted quad
	notation to address.

2000-05-18  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_cat): correct transfer rate display when start != 0.

2000-05-09  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_cat, _ftp_update_transfer): display transfer rate.

	* signals.c (sig_remember): add sig_alarm.
	* signals.h: declare signal counters extern, add sig_alarm.

2000-05-05  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* tag.c (_tag_insert): realloc tags.line on overflow, correcting
	next/prev pointers.

2000-05-02  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* tag.c (tag_file): don't initialize dir if not given, simplified
	strcmp.
	(change_curdir): simplified strncmp.

1999-05-14  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_reconnect): reset ftp_curmode to ' '.

1999-04-09  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* readdir.c (parse_ms): new function.
	(read_dir): loop over parser functions until accepted.  free line
	here.
	(parse_unix): reject line if strcspn(line, " ") != 10.  don't free
	line.

1999-02-08  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* added 1999 to copyright notices.
	* readrc.c (readrc): remember password when part of alias url.

1998-12-31  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_retr): place size from 150 response in *sizep (new
	argument); changed callers.
	* fn_select.c (aux_download): use size from ftp_retr if size
	unknown.

1998-12-16  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* util.c (argstostr): removed (args_to_string is
	duplicate), changed callers.
	(args_to_string): fixed bug which placed all args at beginning of
	string.
	
1998-10-19  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* display.h, options.op, list.c (list_full),
	status.c (opt_set_status): removed opt_emacs_status.

	* status.c (status_do): handle short status line (space < 0).

1998-10-17  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* bindings.desc: added mkdir, site.

	* util.h, util.c (args_to_string): new function.

	* ftp.h, ftp.c (ftp_site): new function.

	* fntable.fn, fn_basic.c (fn_site): new function.

1998-10-07  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_stor): accept response 125.

1998-10-07  Wiz  <wiz@danbala.tuwien.ac.at>

	* fn_select.c (fn_reload): reload logically current dir, not
	physically current.

	* bindings.desc, fn_basic.c (fn_showname): new option -l: show
	link target.

	* readdir.c (parse_unix): better parsing of symbolic links (Windows).

	* display.c: removed include for termcap.h

	* main.c (main): if startdir is file, download.

1998-05-14  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fputchar.c (fputchar): return a value.

	* main.c, tty.h, display.h, fn_tag.c, tag.h: cleanup for -Wall.

1998-05-01  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* directory.c, tty.h: cleanup for -Wall.

1998-04-30  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* signals.c: cleanup for -Wall

	* util.c (parse_url, deurl, hexdigit): moved from main.c

1998-04-25  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_basic.c (fn_mkdir): new function.

	* ftp.c (ftp_mkdir): new funktion.

1998-03-12  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_cwd, ftp_pwd): handle DOS servers with leading '\\'
	in directory names.

1998-03-02  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_cat): new parameter start.  callers changed.

1998-02-27  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_retr): new parameter startp.  callers changed.

	* fn_tag.c (fn_gettags): new option -c: restart.

	* fn_select.c (aux_download): new parameter restart.  callers
	changed.

	* tty.c (tty_readkey): fixed handling of 8 bit chars (s now
	unsigned char).

1998-01-24  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_scroll.c (aux_scroll_page): fixed page scrolling when listing
	is shorter than screen.

1998-01-21  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* main.c (parse_url): ignore trailing colon in host part.
	(deurl): treat percent at end of string as regular char.

1997-12-18  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fntable.h.proto: added newline to last line.

1997-12-17  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_port, ftp_accept): support for passive mode.

1997-12-03  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_tag.c (fn_tag): globbing tag/untag (-t, -u).

	* main.c (print_usage): fixed shadow bug.

1997-12-02  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_scroll.c (aux_scroll_line): handle `opt_wrap'.
	(aux_scroll_page): handle `opt_wrap'.

	* options.op (opt_wrap): new option.

1997-11-24  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_list): dup path before storing in dir structure.
	store path in structure.

	* fn_scroll.c (aux_scroll_page): changed wrapping behavior.

1997-11-21  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* main.c: fixed typo.
	(print_usage): changed calling convention; callers changed.

1997-11-20  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_select.c (fn_reload): new function.

	* tag.c (change_curdir): handle NULL `curdir'.

	* ftp.c (ftp_cd): new argument `force'; changed callers.

	* directory.c (get_dir): new argument `force'.

1997-11-14  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_init): new function
	(ftp_pwd): check for and handle DOS path names
	(ftp_cwd): check for and handle DOS path names

1997-11-03  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_pwd): set ftp_pcwd

1997-10-29  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* directory.c (opt_set_sort): don't sort curdir if it's NULL.
	(get_dir): moved call to dir_sort here.

	* readdir.c (init_parse_time): new function.
	(parse_time): init non-standard fields of struct tm from global
	now.  Use global now instead of calling time(), gmtime() on each
	invocation.

	* hstrerror.c (hstrerror): renamed h_errlist to _h_errlist to
	avoid conflict with libresolv on Solaris.  _h_errlist & _h_nerr
	now static.

1997-10-25  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_basic.c (fn_help): listings, more info on options.

	* display.c (disp_open): reenter display if open failed.

1997-10-24  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* main.c: (main): moved version tail text to variable
	version_tail; adapted to example in GNU standards 97/07/4.
	(deurl): fixed double increment of s in single statement.

	* fn_basic.c (fn_lcd): don't get cwd if rc_inrc.

1997-10-23  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* fn_basic.c (fn_set): handle enum options.

	* mkoptab-h.m4, mkoptab-c.m4, mkoptexi.m4: new option type enum.

	* directory.c (dir_sort): new function.
	(sort_unsorted, sort_name, sort_date, sort_name_r, sort_date_r):
	new function.
	(opt_set_sort): new function.

	* readdir.c (read_dir): init new members pos and sorted.

	* directory.h: new member pos in struct direntry; new member sort
	in struct directory.

	* readrc.c (readrc): treat lines beginning with `#' as comments.

	* options.op: (sort) new option.

1997-10-21  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* readdir.c (parse_unix): parse modification time.
	(parse_time): new function.
	
	* directory.h: new member mtime in struct direntry.

	* fn_select.c (aux_download): ftp_close(fout), fclose(fin) -- not
	the other way around.
	(aux_upload): new function.
	(fn_put): new function.

	* ftp.c (ftp_stor): new function.

1997-10-17  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* ftp.c (ftp_close): return if not connected
	(ftp_resp): return -1 if not connected

	* sockets.c (sopen): write error in message area when display is
	active.

	* display.c: new variable `disp_active'.

1997-10-14  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* directory.c (get_dir): reuse cache entry only if ftp_list
	succeeded.

1997-10-08  Dieter Baron  <dillo@danbala.tuwien.ac.at>

	* main.c (main): --version and --help: conform to GNU standards.

	* version.c (version): conform to GNU standards.

	* main.c (get_annon_passwd): Handle domainname ``(none)'',
	check for beginning dot, existing user, dot in hostname. 

	* ftp.c (ftp_login): Set status.remote.path to NULL after freeing.

	* status.c (status_do): Print space in "host... ...path".

