Семейство адресов не поддерживается протоколом?Отправить - PullRequest
2 голосов
/ 21 октября 2011

У меня странная проблема с моей программой.

Я использую UDP для передачи файла со стандартными sendto и recvfrom.

У меня есть сервер и клиент много раз общаются взад и вперед во время программы.

Я только что добавил новый вызов sendto в коде сервера, и он дает мне эту ошибку при выполнении.

Address family not supported by protocol., и это происходит из моей функции sendto.

Вот код, который он выполняет:

if ((numbytes = sendto(sockfd,sDropped,strlen(sDropped), 0,
         (struct sockaddr *)&their_addr, p->ai_addrlen)) == -1) {
    perror("talker: sendto");
    exit(1);
    }

Как я уже сказал, этот код работает примерно в 4 других случаях ранее в программе, поэтому я уверен, что я все подключилправо.

Кто-нибудь знаком с этой проблемой и может дать мне некоторое представление о том, что нужно проверить в моей программе, которая может вызвать эту проблему?

Спасибо.

1 Ответ

9 голосов
/ 27 сентября 2012

Посмотрите, установлено ли их_дд.sin_family, просто потратили пару часов, борясь с одним и тем же сообщением только за эту ошибку.

...