client 是自己用 C 写的
#define BUFFER_SIZE 1024
char recv_buffer[BUFFER_SIZE];
char send_buffer[BUFFER_SIZE];
// ...
else if (start_with(cmd_read, "cd"))
{
char *token;
const char delim[2] = " \t";
token = strtok(cmd_read, delim);
char *path = strtok(NULL, delim);
if (path == NULL)
{
printf("please input the path\n");
continue;
}
sprintf(send_buffer, "CWD %s\r\n", path);
send_cmd(client_socket, send_buffer);
length = get_respond(client_socket, recv_buffer);
printf("%s", recv_buffer);
}
ftp server 什么要发送两次错误信息?这个如何处理呢?
Github 源码
PS:
FTP server我用的是windows
测试发现windows
550-
这里有个
-
应该表示多行,所以得接收到550 End
PS TCP是一个流式协议