2016-07-15 10 views
1

В существующем соединении DTLS, т. Е. Квитирование DTLS уже выполнено успешно на порту 5000, если сервер получает входящее соединение DTLS, т.е. пакет DTLS Client Hello, тогда генерируется SSL_read SSL_ERROR_SYSCALL ,Получение SSL_ERROR_SYSCALL для входящего соединения DTLS в существующем соединении DTLS на том же порту

Может ли кто-нибудь дать мне понять, почему.

Сценарий заключается в том, что Клиент установил соединение DTLS с сервером на сервере 5000 сервера. IP-адрес изменений клиента может быть связан с переходом с Wi-Fi на 3G или наоборот. Итак, теперь Клиент снова попытается установить соединение DTLS с сервером на том же сервере 5000 сервера.

Пожалуйста, кто-нибудь, дайте мне знать, как к

  • Q1. почему SSL_read генерирует ошибку SSL_ERROR_SYSCALL и что можно сделать для продолжения?

  • Q2. Можем ли мы обрабатывать другое входящее соединение DTLS в существующем соединении DTLS на том же порту, не очищая уже существующее соединение DTLS?

Заранее спасибо за помощь, Vineet Шривастава

+0

Ваш вопрос летел под радаром. Всегда указывайте свою среду программирования. Я предполагаю, что это о коде, который у вас есть, не так ли? Если да, то где код? Если это касается самого OpenSSL, вы можете вместо этого попробовать serverfault или суперпользователь. –

+0

Среда программирования - Unix. –

+0

Нашли решение этой проблемы. Выявленные проблемы были следующими: 1. При получении входящего DTLS-соединения на порт, имеющем другое DLTS-соединение, необходимо было создать еще одну SSL-ручку и рассматривать ее как отдельное соединение DTLS. 2. Длина, указанная в SSL_Read, должна быть правильной. После предоставления правильного параметра и создания нового дескриптора SSL проблема была решена. Спасибо в любом случае за комментарии. –

ответ

1

нашел решение проблемы.

Проблема, выявленная было два:

  1. При получении входящего соединения DTLS на порт, имеющий другое соединение DLTS это требовалось, чтобы генерировать другой SSL ручку и рассматривать его как отдельный DTLS Connection.

  2. длина, указанная в SSL_Read, должна быть правильной.

После предоставления правильного параметра и создания нового SSL-дескриптора проблема была решена. Спасибо в любом случае за комментарии.