fts_ftp_syn_request_ex()−伝送要求の登録(同期)−
形式
#include <apihead.h> int fts_ftp_syn_request_ex( int sock, char *cardname, FTS_FTP_API_DATA_EX *data, FTS_FTP_API_RETDATA_EX *retdata )
機能
JP1/FTPに伝送要求を登録し,伝送の終了を待って終了結果を返します。伝送要求の内容は伝送情報構造体で指定するか,登録済みの伝送カード名を指定することで定義できます。終了結果は伝送終了情報構造体に返されます。伝送の正常/異常は伝送終了情報構造体のtrans_statusメンバで判断できます。
引数
sock
fts_ftp_open_ex()の戻り値を指定します。
cardname
登録済みの伝送カード名を指定します。伝送カードの内容に従ってファイル伝送要求を登録します。
data
伝送情報構造体のアドレスを指定します。
cardnameにNULLが指定された場合は,dataに指定された内容に従ってファイル伝送要求を登録します。
cardnameに登録済みの伝送カード名が指定された場合は,伝送カードの内容に従ってファイル伝送要求を登録します。伝送情報構造体には,登録した伝送情報が格納されます。この伝送情報構造体は,別にファイル伝送要求を登録する際に,再度利用できます。
retdata
伝送終了情報構造体のアドレスを指定します。伝送の終了結果を返します。
注意事項
-
この関数は,fts_ftp_open_ex()をコールしたあとで,コールしてください。
-
この関数は,要求した伝送が終了するまで戻りません。
戻り値
TRUE |
正常 |
FALSE |
異常 伝送要求の登録または伝送終了結果の取得に失敗しました。 |
エラーを示す値はfts_errnoにセットされます。エラー情報の戻り値を次の表に示します。また,下記以外のエラーの場合には,システム関数のエラー番号がセットされていますので,システム関数のエラー番号を参照してください。
拡張エラー情報の戻り値 (10進数) |
説明 |
リトライの可否 |
---|---|---|
FTS_API_ERROR_DISCONNECT (805306116) |
JP1/FTPデーモンとのコネクションが切断されました。伝送要求を再度登録したい場合は,fts_ftp_close()を発行し,fts_ftp_open_ex()から処理をし直す必要があります。 |
否 |
FTS_API_ERROR_NOTREADCARD (805306117) |
指定したカード名称が参照できません。カードが正しく登録されていない場合があります。 |
否 |
FTS_API_ERROR_MAXPALTRANS (805306119) |
同時に伝送できる最大数(最大同時伝送数)を超えています。ほかの伝送が終了したあと,再度伝送要求を登録してください。最大同時伝送数については,「6. コマンド」の「ftsutil−環境情報の変更・表示−」を参照してください。 |
可 |
FTS_API_ERROR_MEMORY (805306122) |
メモリを確保できません。 |
否 |
FTS_API_ERROR_NOTSOCK (805306124) |
fts_ftp_open_ex()の戻り値を第1引数に指定していない場合があります。 |
否 |
FTS_API_ERROR_FTSMISS (805306125) |
JP1/FTPデーモンで何かの異常が発生しました。 |
否 |
FTS_API_ERROR_FORCEEND (805306127) |
JP1/FTPデーモンが強制終了しました。 |
否 |
FTS_API_ERROR_LOGIC (805306128) |
API内で論理矛盾エラーが発生しました。 |
否 |
FTS_API_ERROR_MAXGROUPS (805306129) |
セカンダリグループの最大数を超えています。 |
否 |