Browse Subversion Repository
Diff of /trunk/ftp_put_buffer.c
Parent Directory
| Revision Log
| Patch
| 37 |
/*! バッファからファイル送信 |
/*! バッファからファイル送信 |
| 38 |
* |
* |
| 39 |
*@param ftp LIBOFTPへのポインタ。 |
*@param ftp LIBOFTPへのポインタ。 |
|
*@param fname サーバ上のファイル名 |
|
| 40 |
*@param buf バッファへのポインタ |
*@param buf バッファへのポインタ |
| 41 |
*@param bufsiz バッファサイズ |
*@param bufsiz バッファサイズ |
| 42 |
|
*@param fname サーバ上のファイル名 |
| 43 |
*@retval int 0: no error. -1: OS level error. -2: ftp protocol error. -3: buffer too small. |
*@retval int 0: no error. -1: OS level error. -2: ftp protocol error. -3: buffer too small. |
| 44 |
*@note |
*@note |
| 45 |
*/ |
*/ |
| 46 |
int ftp_put_buffer( LIBOFTP *ftp, const char *fname, char *buf, int bufsiz ) |
int ftp_put_buffer( LIBOFTP *ftp, char *buf, int bufsiz, const char *fname ) |
| 47 |
{ |
{ |
| 48 |
int data_socket; |
int data_socket; |
| 49 |
char *p = buf; |
char *p = buf; |
| 53 |
* 送信準備 |
* 送信準備 |
| 54 |
*/ |
*/ |
| 55 |
if( ftp->flag_passive ) { |
if( ftp->flag_passive ) { |
| 56 |
data_socket = ftp_getready_pasv( ftp, fname, "STOR" ); |
data_socket = ftp_getready_pasv( ftp, "STOR", fname ); |
|
if( data_socket < 0 ) { |
|
|
return -1; /* XXX: mixed os level error and ftp protocol error. */ |
|
|
} |
|
| 57 |
} else { |
} else { |
| 58 |
return -2; /* XXX: active mode not ready yet. */ |
data_socket = ftp_getready_active( ftp, "STOR", fname ); |
| 59 |
|
} |
| 60 |
|
if( data_socket < 0 ) { |
| 61 |
|
return data_socket; |
| 62 |
} |
} |
| 63 |
|
|
| 64 |
/* |
/* |
|
|
Legend:
| Removed from v.17 |
|
| changed lines |
| |
Added in v.27 |
|
|
| |