✔ 最佳答案
操作方法:1.程式執行環境: 工作站(linux)。2.Compile: 有寫Makefile,第一次執行前可先打”make”來compile程式。3.執行: 鍵入”./ftp <IP address> <portnumber>”執行程式。4.登入FTP Server:在Username:後打上使用者帳號, Password:後打上使用者密碼即可。
程式架構與寫法介紹函式部份:1. int connection(char *IP,int port);parameter:IP為要連到的server IP,port為所要連到server的port number。description: 這個函式主要用在剛開始要與FTPserver建立control connection及之後要建立data connection時會用到。 寫法就是用socket()這個函式取得server的filedescriptor再用connect()函式連過去。此函式會回傳server的file descriptor。 2.int send_command(int fd,char*command,char *tempbuf,int successValue);parameter: fd通常是放server的filedescriptor,command是RFC959裡定義的指令, tempbuf是存指令後的參數,sussessValue是如果指令成功執行的話server會回傳的responsevalue。description: 這個函式主要是用來傳指令給FTPserver(用control connection),而且只用在指令後還有參數的情況。如果server回傳的response value等於successValue的話return 0,otherwisereturn -1。 “rm”: 傳送”DELE<filename>”給server,其中<filename>這個部份是放使者想刪除的檔案名稱。 “mkdir”: 傳送”MKD<directory>”給server,其中<directory>這個部份是放使者想新增的資料夾名稱。 “rmdir”: 傳送”RMD<directory>”給server,其中<directory>這個部份是放使者想刪除的資料夾名稱。
更多:
www.cmlab.csie.ntu.edu.tw/~plokm/htdocs/.../Ftp%20Client書面報告.doc