DragonFly On-Line Manual Pages
    
    
	
ftp_site(3)                     C Library Calls                    ftp_site(3)
NAME
       ftp_site, ftp_site_open - perform a site-specific FTP operation
SYNOPSIS
       #include <libfget.h>
       int ftp_site(FTP *ftp, char *fmt, ...);
       int ftp_site_open(FTPFILE **ftpfile,  FTP *ftp, int mode,  char *fmt,
       ...);
VERSION
       This man page documents version 1.3 of libfget.
DESCRIPTION
       The ftp_site() function executes an FTP "SITE" command on the FTP
       server associated with ftp.
       The ftp_site_open() function is used to execute a "SITE" command that
       opens a data connection.  It creates a new FTPFILE handle for the new
       data connection and sets ftpfile to point to the newly created handle.
       The mode argument must be one of the following values:
       O_RDONLY
              The data connection is opened in read-only mode.
       O_WRONLY
              The data connection is opened in write-only mode.
       The FTPFILE handle returned in ftpfile may be used the same way as an
       FTPFILE handle returned by ftp_open(3).  In other words, it can be
       passed to ftp_read(3) or ftp_write(3) to read or write data, and it
       must be freed by calling ftp_close(3) before another FTPFILE may be
       opened.
       For both functions, the fmt argument is a printf(3)-style format
       string.  It, along with any optional arguments that may follow it,
       specifies the site command to be executed (i.e., the text sent to the
       FTP server after the "SITE" verb itself).
RETURN VALUE
       The ftp_site() and ftp_site_open() functions return 0 on success, or -1
       on error (and set errno).
ERRORS
       The ftp_site() and ftp_site_open() functions fail if:
       ECONNRESET
              The server shut down the connection.  The caller is then
              responsible for calling ftp_quit() with the FTP_QUIT_FAST flag
              set.
       ETIMEDOUT
              The operation timed out.  (The timeout interval can be set via
              the FTP_OPT_IO_TIMEOUT option; see the ftp_set_options(3) man
              page for details.)
       EINVAL Unexpected response code received from server.
       EAGAIN An attempt was made to send a request to the server while the
              data connection is open.
       They may also fail for any of the errors specified for the underlying
       poll(2), read(2) or write(2) system calls.
       The ftp_site_open() function will also fail if:
       ENOSYS The mode argument was set to an unsupported value.
       It will also fail for any of the errors specified for the underlying
       socket(2), connect(2), fcntl(2) (using F_GETFL and F_SETFL), or
       calloc(3) system and library calls.
SEE ALSO
       libfget(3), ftp_open(3)
Feep Networks                    January 2004                      ftp_site(3)