3 FTP: Client Downloading
The net/ftp library provides
utilities for FTP client operations.
The library was written by Micah Flatt.
3.1 Functions
(ftp-connection? v) → boolean? |
v : any/c |
| ||||||||||||||||||||||||||||
server : string? | ||||||||||||||||||||||||||||
port-no : (integer-in 0 65535) | ||||||||||||||||||||||||||||
user : string? | ||||||||||||||||||||||||||||
passwd : string? |
Establishes an FTP connection with the given server using the
supplied username and password.
The username and password strings are encoded to bytes using the current locale’s encoding.
(ftp-close-connection ftp-conn) → void? |
ftp-conn : ftp-connection? |
Closes an FTP connection.
(ftp-cd ftp-conn new-dir) → void? |
ftp-conn : ftp-connection? |
new-dir : string? |
Changes the current directory on the FTP server to new-dir.
The new-dir argument is not interpreted at all, but simply
passed on to the server (encoded using the current locale’s
encoding); it must not contain a newline.
(ftp-directory-list ftp-conn) | |||||||
| |||||||
ftp-conn : ftp-connection? |
Returns a list of files and directories in the current directory of
the server, assuming that the server provides directory information in
the quasi-standard Unix format.
Each file or directory is represented by a list of three strings. The first string is either "-", "d", or "l", depending on whether the items is a file, directory, or link, respectively. The second item is the file’s date; to convert this value to seconds consistent with file-seconds, pass the date string to ftp-make-file-seconds, below. The third string is the name of the file or directory.
All strings are decoded from bytes using the current locale’s encoding.
(ftp-make-file-seconds ftp-date) → exact-integer? |
ftp-date : string? |
Takes a date string produced by ftp-directory-list and
converts it to seconds (which can be used with
seconds->date).
(ftp-download-file ftp-conn local-dir file) → void? |
ftp-conn : ftp-connection? |
local-dir : path-string? |
file : string? |
Downloads file from the server’s current directory and puts
it in local-dir using the same name. If the file already
exists in the local directory, it is replaced, but only after the
transfer succeeds (i.e., the file is first downloaded to a temporary
file, then moved into place on success).
3.2 FTP Unit
(require net/ftp-unit) |
ftp@ : unit? |
Imports nothing, exports ftp^.
3.3 FTP Signature
(require net/ftp-sig) |
ftp^ : signature |
Includes everything exported by the net/ftp module.