2012-04-27 3 views
0

Я реализую простой FTP-сервер. При отладке я пытаюсь использовать клиента FileZilla для подключения моего сервера. Запрос и ответ шаблон найден в командной панели перечислены ниже:Подходит ли приветствие или рукопожатие при установлении соединения с FTP?

GREETING: 220 (FTP v1.0) 
REQUEST: USER *** 
RESPONS: 331 Password? 
REQUEST: PASS ******** 
RESPONS: 230 login successfully. 
REQUEST: PWD 
RESPONS: 257 "https://stackoverflow.com/a/" is current directory. 
REQUEST: TYPE I 
RESPONS: 200 Type set to I. 
REQUEST: PASV 
RESPONS: 200 127,255,0,0,175,200(I specify local port 45000) 
REQUEST: LIST 
RESPONS: 150 here is the listing 
RESPONS: 226 Transfer done. 

Однако, есть ошибка с последующим Fail to read directroy. я думаю, что пассивное соединение действительно установлено, так как я могу получить поток на сокете (я реализую сервер в C#). Но я не знаю, почему ошибка. Это потому, что я должен отправить некоторую информацию о рукопожатии/приветствии, подобную информации в контрольном соединении, вместо отправки данных непосредственно на сервер синхронизации и клиент? Если да, каков код состояния этой информации?

Спасибо и с наилучшими пожеланиями.

ответ

0

Отсутствует квитирование при подключении к данным.

Возможно, ошибка «Ошибка чтения каталога» является результатом неправильного формата списка папок, возвращаемого сервером?

+0

Возможно, я использую некоторые фиктивные данные для тестирования, уточню этот модуль и повторю тест. Спасибо. –

+0

Вы правы. Формат - это одно, а другое - то, что я оставил соединение открытым после завершения передачи данных. Любопытно, почему FileZilla принимает эту политику, возможно, все операции завершены в одном потоке? Будет проверять src, если у меня будет время. –

 Смежные вопросы

  • Нет связанных вопросов^_^