Разработать приложение для операционных систем семейства Windows или Linux, обеспечивающее функции клиента протокола FTP.
Основные возможности.
Приложение должно реализовывать следующие функции:
- Подключение к указанному серверу
- Получение списка файлов в каталоге
- Навигация по системе каталогов
- Копирование файла на сервер
- Копирование файла с сервера
- Создание и удаление каталогов
- Удаление файлов
- Обеспечение работы со ссылками на файлы и каталоги
- Поддержка передачи в бинарном и текстовом режиме
- Протоколирование соединения сервера с клиентом
Поддерживаемые команды.
Разработанное приложение должно реализовывать следующие команды протокола FTP:
- USER – передача серверу идентификационной информации пользователя
- PASS – передача серверу пароля пользователя
- CWD – смена текущего каталога сервера
- MKD – создание каталога
- RMD – удаление каталога
- DELE – удаление файла на сервере
- PORT – передача на сервер параметров (адреса и порта) сокета, осуществляющего приём и передачу данных
- LIST – получение списка файлов в текущем каталоге сервера в расширенном формате
- NLST – получение списка файлов в текущем каталоге сервера в сокращённом формате
- RETR – получение файла с сервера
- STOR – посылка файла на сервер
- TYPE – задание режима передачи данных
- QUIT – завершение сеанса
Настройки приложения.
Разработанное приложение должно обеспечивать настройку следующих параметров:
- IP-адрес или доменное имя файлового сервера
- Имя пользователя
- Пароль пользователя
- Режим передачи: текстовый / бинарный
Примечания:
- Недопустимо использование сторонних библиотек, которые реализуют команды протокола. Все команды необходимо реализовывать самостоятельно.
- Для тестирования необходимо использовать стандартные приложения, а не telnet.