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 |
Returns #t if v represents an FTP connection as returned by ftp-establish-connection, #f otherwise.
| ||||||||||||||||||||||||||||
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-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
ftp@ : unit? |
Imports nothing, exports ftp^.
3.3 FTP Signature
ftp^ : signature |
Includes everything exported by the net/ftp module.