Читать по протоколу FTP. Единственное, что отличается при подключении к FTP-серверу, это то, что существуют правила о том, какие сигналы отправлять в качестве тезисов, описанных протоколом.
Для получения информации о сигналах и структуре сообщений
Пример входа на ftp-сервер в предположении, что sock
- это сокет, подключенный к ftp-порту (21) ftp-сервера.
char loginMsg[] = "USER MyName\r\nPASS MyPass\r\n";
char responce[4] = {'\0'};
send(sock, loginMsg, strlen(loginMsg), 0);
recv(sock, responce, 3, 0);
if (strcmp(responce, "230") != 0)
// Could not log in to the ftp server