DTLS - select всегда возвращает, что есть что прочитать после закрытия сокета

Я создал неблокирующий клиент / сервер на основе примеров из FH Muenster. К сожалению, после закрытия сокета он не позволяет мне подключить другого клиента к серверу.

  • Я проверил на Wireshark, и сообщения о закрытии соединения отправляются правильно.
  • Результат функции Select() (вызов на стороне сервера) равен 0 (срок истек), однако мой файл чтения не возвращается пустым.
  • Первый клиент подключается успешно, когда я пытаюсь подключить второй клиент во время рукопожатия, он выдает ошибку "соединение отказано"

Я знаю, что поведение select отличается от дейтаграмм. Мои вопросы: - В DTLS совершенно необходимо вызывать listen()?. - Это нормально, что по истечении времени ожидания (select возвращает 0), fdSetRead не является пустым?

0 ответов

Другие вопросы по тегам