用C語言實現乙個FTP服務系統 有原始碼

2021-10-12 19:00:02 字數 912 閱讀 5221

實現乙個ftp服務系統

一、實驗目的

通過該實驗,掌握linux環境下的多執行緒/程序程式設計技術、檔案操作、使用者許可權管理、程序間通訊技術

啟動方式。執行ftpserver [ip位址] port啟動ftp服務。其中ip位址為可選項。若不提供伺服器ip位址,ftp服務將自動繫結到本地網路的ip。

使用者認證與許可權管理。為ftp客戶提供基於使用者名稱/密碼認證的服務模式,只有授權使用者才可以訪問ftp服務。並行執行功能。為提高系統效能,伺服器將採用多程序/執行緒技術響應客戶請求。當客戶通過身份驗證後,伺服器將建立乙個新的程序/執行緒來響應使用者請求,提供服務。

服務傳輸模式。支援二進位制(預設)及ascii傳輸模式。使用者可通過執行binary/ascii命令切換傳輸模式。

站點計數與使用者管理功能。統計伺服器站點的當前活動使用者數及自執行以來的訪客總數。系統管理員可在伺服器軟體執行終端視窗執行以下命令:

count current:當前活動使用者數

count all:顯示系統訪客總數

kill username:強制刪除某個使用者。

quit:關閉ftp伺服器軟體。

登入管理。客戶端在shell中輸入 username,passwd登入ftpserver。若通過身份驗證,伺服器將向客戶回顯第幾位使用者並顯示ftp命令輸入提示符myftp>;否則顯示"username doesn't exist or password is error!"。

退出系統。使用者執行」quit」斷開連線,結束當前ftp會話。

**量略大,就不貼出來了,可加微xin:bocheng3

開啟終端make all編譯後照著下面的執行就行了

c語言 實現乙個棧

include include include include 入棧出站操作 typedef struct nodenode,pnode typedef struct stack pstack,stack void init pstack void push pstack,int bool isem...

資料結構 用C語言實現乙個佇列

只允許在一端進行插入資料操作,在另一端進行刪除資料操作的特殊線性表。佇列具有先進先出fifo first in first out 入佇列 進行插入操作的一端稱為隊尾。出佇列 進行刪除操作的一端稱為隊頭。佇列可以以鍊錶和陣列的結構實現,使用鍊錶的結構更具有優勢,因為使用陣列的結構,在出佇列的時候效率...

用go語言實現乙個簡單的web伺服器

我們這個簡單的web伺服器,主要用到的就是http包,啥也不說了,先上 顯而易見,這裡並沒有很多 非常的簡潔,原因就是好多任務作都由包裡的 去實現了,我們做的只是傳個引數而已。雖然 並不多,也簡單的說一下。簡單的 我簡單的說 功能主要為建立乙個web服務程序,監聽的埠為 8000。然後我們啟動這個程...