### aftp-0.31 README file

    Advanced FTP v0.3     (C) 1999 by Arpad Gereoffy (a.k.a. A'rpi/ESP-team)
    ~~~~~~~~~~~~~~~~~         report bugs and ideas to <arpi@esp.kign.org>

    Featuers & changes:
    [v0.1]
      - very short commands
      - file selection
      - !entrynum & masks
      - path history
      - directory cache
      - recursive get subdirs
      - wget script creation
    [v0.2]
      - code cleanup, some parts rewritten
      - line editor & history
    [v0.3]
      - keep-alive function
      - handle symlinks correctly  ('CDROM -> /mnt/cdrom')
      - automatic reconnect if login failed (user-defined timeout!)
      - display welcome banners/messages

    Usage:
      aftp host         - connect to 'host' as anonymous with fake password
      aftp @host        - connect to 'host' as anonymous and ask password
      aftp user@host    - connect to 'host' as 'user' and ask password
    Note: host may include port number/name: aftp mp3@warezsite.org:1999

    1. Control commands:
      q                 - Quit
      ?                 - Help
      help              - Help
      keep [t1][,t2]    - Set keep-alive time (t1 seconds) and maxtime (t2 mins)
                          t1=0 disable keep-alive, t2=0 means no max time limit

    2. Change directory commands:
      .                 - refresh (re-read current dir)
      ..                - CDUP (cd ..)
      >dirname          - CD dirname
      <                 - step back (CD to previous path)
      <<                - step back twice...
      >                 - step forward
      h                 - view path history

      Note: dirname can be !entrynum or mask too ('>!5' and '>A*')

    3. Commands on files/dirs:
      General: [+-][lgw+-][s][df] [mask]
      Prefixes:
        +  = select all
        -  = unselect all
      Commands:
        l  = list
        g  = get
        w  = get with wget (generate script 'wget-it')
        +  = select (and list)
        -  = unselect
      Modifiers:
        s  = selected only
        d  = dirs only
        f  = files only
        p  = prompt (Y/n)
      Mask:
        - can contain space and other specials without quoting
        - '*' matching multiple characters
        - '?' matching exactly one character
        - '!n' is replaced with nth name (command 'g !3' gets 3rd file...)

    Examples:
      l         - List all
      lsf       - List Selected Files
      gf *.mp3  - Get Files with .mp3 extension
      g !3      - Get 3rd directory (recursive)
      ws        - generate Wget script for downloading Selected things
      + X*      - select files beginning with char 'X'
      -+f X*    - select _only_ files beginning with char 'X' (first unselect all)
      -+s *p    - select only things from currently Selected ones which ends to 'p'

      Notes for 'g':
       - AFtp recursive download directories! (with all files and subdirs inside)

      Notes for 'w':
       - AFtp will append a wget line to a script called 'wget-it', so
         you can create a script for download many things in easy way.
       - options of wget are defined in 'aftp1b.c', you must recompile
         it if you modify! sorry.

    To do:
       - reconnect
       - re-get/resume
       - put files
       - local commands (cd, ls, md, sh)
       - du (recursive disk-usage)

    Legal things:

    1. This program is based on ftplib - callable ftp access routines
       Copyright (C) 1996, 1997, 1998 Thomas Pfau, pfau@cnj.digex.net
                     73 Catherine Street, South Bound Brook, NJ,08880
       Modified in ftplib by me:
       - FtpXfer() now reports number of xfered bytes
         (requires for log_progress() at the end of transfer)
       - FtpXfer() now opens remote before local
         (to avoid creation of 0-byte files when trying open a directory)
       - Added 'DEBUG' define to print out server commands (not really important)
       - fixed: segfault if invalid port name specified ('localhost:ft[')
       - Added display_resp() to readresp() (prints welcome banners and messages)

    2. This package includes the editline library sources, without
       modification. Read ./editline/README for details and its licence.
       Editline lib is a small but powerfull replacement of GNU-Readline.

    3. This program is free software; you can redistribute it and/or
       modify it under the terms of the GNU General Public License
       as published by the Free Software Foundation.

    4. This software is provided as-is. The author can not be held
       liable for any damage that might arise from the use of this
       software.  Use it at your own risk.