20#define FTP_NET_ERROR 802
21#define FTP_FILE_ERROR 803
22#define FTP_RESPONSE_ERROR 804
23#define FTP_INVALID_ARG 805
26static char bars[] =
"/-\\|";
70 memset(&bind_addr, 0,
sizeof(bind_addr));
72 bind_addr.sin_addr.s_addr = 0;
73 bind_addr.sin_port =
htons(port);
89 memcpy((
char *) &(bind_addr.sin_addr),
phe->h_addr,
phe->h_length);
94 status = connect(sock, (
struct sockaddr *) &bind_addr,
sizeof(bind_addr));
99 status = connect(sock, (
struct sockaddr *) &bind_addr,
sizeof(bind_addr));
135 if (
send(
con->sock,
"\r\n", 2, 0) == -1)
230 va_start(
args, number);
274 (
char *) &
one,
sizeof(
one)) < 0) {
281 data.sin_addr.s_addr = *(
unsigned long *) *(host->h_addr_list);
302 a = (
char *) &
data.sin_addr;
303 b = (
char *) &
data.sin_port;
389 const char *user,
const char *password,
const char *
account)
444 sprintf(cmd,
"PORT %d,%d,%d,%d,%d,%d", a, b,
c,
d,
e, f);
508 sprintf(
str,
"%ld bytes received in %1.2f seconds (%1.2lf kB/sec).",
550 sprintf(
str,
"%ld bytes sent in %1.2f seconds (%1.2lf kB/sec).",
563 static char str[256];
590 char command[256], buffer[8192];
593 strcpy(command,
"LIST");
int(* ftp_debug_func)(const char *message)
int ftp_login(FTP_CON **con, const char *host, unsigned short port, const char *user, const char *password, const char *account)
int ftp_close(FTP_CON *con)
int(* ftp_error_func)(const char *message)
int ftp_command(FTP_CON *con, const char *command, const char *param,...)
int ftp_send_message(FTP_CON *con, const char *message)
int ftp_dir(FTP_CON *con, const char *file)
#define FTP_RESPONSE_ERROR
char * ftp_pwd(FTP_CON *con)
void ftp_debug(int(*debug_func)(const char *message), int(*error_func)(const char *message))
int ftp_send(int sock, const char *buffer, int n_bytes_to_write)
int ftp_get_message(FTP_CON *con, char *message)
int ftp_connect(FTP_CON **con, const char *host_name, unsigned short port)
int ftp_data(FTP_CON *con, const char *command, const char *file)
int ftp_receive(int sock, char *buffer, int bsize)
int ftp_put(FTP_CON *con, const char *local_name, const char *remote_name)
int ftp_port(FTP_CON *con, int a, int b, int c, int d, int e, int f)
int ftp_bye(FTP_CON *con)
int ftp_get(FTP_CON *con, const char *local_name, const char *remote_name)
BOOL ftp_good(int number,...)
int ftp_move(FTP_CON *con, const char *oldname, const char *newname)
#define ftp_open_read(ftp, file)
#define ftp_account(ftp, acc)
#define ftp_password(ftp, pas)
#define ftp_open_write(ftp, file)
#define ftp_user(ftp, user)
char host_name[HOST_NAME_LENGTH]
#define message(type, str)
#define write(n, a, f, d)
TH1X EXPRT * h1_book(const char *name, const char *title, int bins, double min, double max)