Я пишу простое приложение udp-сервера, и я столкнулся с ошибкой, когда пытаюсь получить адрес удаленного пользователя.recvfrom() всегда возвращает нулевой удаленный адрес
while(run == 1) {
struct sockaddr_in client_addr;
char message[1024];
int len = recvfrom(sockfd, message, 1024, 0, (struct sockaddr*)&client_addr, sizeof client_addr);
printf("Received request from: %s#%d\n", inet_ntoa(client_addr.sin_addr), ntohs(client_addr.sin_port));
}
Он всегда возвращает удаленный адрес: 0.0.0.0 # 0
Последний параметр должен быть указателем. Он также возвратил -1 и установил errno на EFAULT, случайно? – immibis
возвращает -1, а сообщение об ошибке: Плохой адрес – mateass
Этот код даже не компилируется. Вы компилируете в разрешающем режиме? Тебе не следует! – SergeyA