написал код, очевидно. заработал с первого раза.
код покажи
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#define BUF 4096
// читаем ответ FTP
static void recv_reply(int sock, char *buf)
{
int n = recv(sock, buf, BUF-1, 0);
if (n <= 0) return;
buf[n] = 0;
printf("%s", buf);
}
// отправка команды
static void send_cmd(int sock, const char *cmd)
{
send(sock, cmd, strlen(cmd), 0);
}
// извлекаем ip/port из ответа PASV
static int parse_pasv(char *resp, char *ip, int *port)
{
int h1,h2,h3,h4,p1,p2;
char *p = strchr(resp,'(');
if(!p) return -1;
sscanf(p+1,"%d,%d,%d,%d,%d,%d",&h1,&h2,&h3,&h4,&p1,&p2);
sprintf(ip,"%d.%d.%d.%d",h1,h2,h3,h4);
*port = p1*256 + p2;
return 0;
}
void ftp_list()
{
int ctrl, data;
struct sockaddr_in addr;
char buf[BUF];
// --- control connection ---
ctrl = socket(AF_INET, SOCK_STREAM, 0);
addr.sin_family = AF_INET;
addr.sin_port = htons(21);
inet_pton(AF_INET,"192.168.1.5",&addr.sin_addr);
connect(ctrl,(struct sockaddr*)&addr,sizeof(addr));
recv_reply(ctrl,buf);
// login
send_cmd(ctrl,"USER myuser\r\n");
recv_reply(ctrl,buf);
send_cmd(ctrl,"PASS mypass\r\n");
recv_reply(ctrl,buf);
// change dir
send_cmd(ctrl,"CWD /MY_DIR\r\n");
recv_reply(ctrl,buf);
// PASV
send_cmd(ctrl,"PASV\r\n");
recv_reply(ctrl,buf);
char ip[64];
int port;
parse_pasv(buf,ip,&port);
// --- data connection ---
data = socket(AF_INET,SOCK_STREAM,0);
addr.sin_port = htons(port);
inet_pton(AF_INET,ip,&addr.sin_addr);
connect(data,(struct sockaddr*)&addr,sizeof(addr));
// LIST
send_cmd(ctrl,"LIST\r\n");
// читаем listing
int n;
while((n = recv(data,buf,BUF-1,0)) > 0)
{
buf[n]=0;
printf("%s",buf);
}
close(data);
recv_reply(ctrl,buf);
close(ctrl);
}
int main () {
ftp_list();
return 0;
}
![]()
Што не так?
ну, если ты фанат htonl(), то вызывай ее, обойдешся без строчек
до тех пор пока твой гпт не напишет работающий код, считаю его пистаболом.
Ну я все же менее персонифицирую чатгпт. Считаю его инструментом.
а дип сик наверное справился!))) илон маск не делает продукты, он делает бабки… инфа 100%! даже если не он лично не занимался проектом, где он притрагивается к проекту, он становится оскверненным!
но это в первую очередь… а во вторую есть специальные модели заточенные под написание кода, а не универсальные…
Созвучно, но ситуация другая.
Нарядная ШТ (шахтный транспорт). Начальник участка дает наряд. “Так значит на 12-м, 20-м и 22-м пикетах замените шпалы, потом на вспомагательном уклоне поправите путь, потом…, потом…”. Короче наряд такой, что и за 2 смены без перекуров не успеть.
Один из работяг встает:
- Простите, когда мы все сделаем чем нам тогда заниматься?
Пойти на перекур. А если посоветуют бросить курить - спроси: “А что я буду делать вместо перекуров”?
Или:
А когда же я буду отрываться от “тряски пальмы” и спокойно думать?
На картинке разобранный насос от посудомойки с нагревательным элементом. Типичный дизайн уже лет 10, когда стали делать нагреватель интегрированный в насос, а не отдельный ТЭН ставить. Марку не сажу по заднему виду… Не Бош, но и не китай вроде. Ты её для жены чинишь, или работаешь в ремонте?
ЗЫ: судя по фото нагревателя отдельно, диагноз: “Воду нихренеа не греет” и задача - замена нагревателя. ![]()
ЗЗЫ: в каких-то каналах ютуб из бедных стран… не стану уточнять… видел ремонт этого нагревателя! Не ржите только!! Человек запаял сгоревший участок и лаком эластичным (которым шлейфы чинят) закрыл… У него это заработало… проавда не знаю, сколько прослужит!
А у мну фото-видео съёмка на территории запрещена ![]()
Свою пмм ремонтирую.
Вчера был нехарактерный звук при мойке. При открытии пмм на экране вылезло E09. И больше она не греет.
Впринципе всё не так и плохо. На озоне полно предложений с доставкой на завтра примено 2000 руб.
Место разрыва тэна почистил наждачкой, но пропаять не реально, он на металлическом цилиндре, который не прогреть.
А у меня нестратегический кирпичный заводик. Кирпич, он, канеш, применяется для уничтожения противника в ближнем бою, но нечасто. ![]()
вот для этого и придумали строительный фен и ручные газовые горелки.
Ну канэшна я попробовал горелкой погреть. И оно даже горячее стало, и припой плавится, но не липнет к этим дорожкам. Фокус не удался. Заказал на озоне за 1700 похожий тэн, завтра привезут.
Сама нержавейка плохого качества, внутри цилиндра коррозия.





