Сейчас на форуме: localhost1, vsv1, asfa, tyns777 (+5 невидимых)

 eXeL@B —› Вопросы новичков —› TLS 1.2 + чтение из сокета
Посл.ответ Сообщение

Ранг: 9.1 (гость), 20thx
Активность: 0.040.08
Статус: Участник

Создано: 16 мая 2020 20:41 · Поправил: Illuzion
· Личное сообщение · #1

Добрый вечер. Помогите, пожалуйста, советом.

Есть программа(абсолютно чистый код MSVC++, юзермод), которая устанавливает соединение по TLS 1.2 на 443 порт. Инициализация соединения выглядит так: ...htons -> ioctlsocket -> connect -> CreateEvent...
Но дальше не используется ни одной функции из ws2_32, wsock32, winhttp. В том числе, нет ни recv ни send, хотя соединение устанавливается, происходит обмен ключами, данные принимаются и программа выполняет свои функции.
Из 3-х десятков потоков попробовал остновить все, кроме одного, чтобы соединение не разрывалось. Внутри идёт обработка WaitForMultipleObjects -> GetOverlappedResult -> ResetEvent и далее по-кругу. Соединение на 1-м потоке стабильно держится, хотя программа визуально, конечно, не работает.

Как эта программа принимает данные? Чувствую, что какой-то теории в голове не хватает

P.S. я думал, что это примерно такой вариант (--> Link <--), но там ведь всё равно сокет через recv потом читается.




Ранг: 331.1 (мудрец), 561thx
Активность: 0.190.06
Статус: Участник

Создано: 16 мая 2020 21:29
· Личное сообщение · #2

Как эта программа принимает данные?
Может через IOCP, если функа CreateIoCompletionPort имеется.

-----
Everything is relative...




Ранг: 9.1 (гость), 20thx
Активность: 0.040.08
Статус: Участник

Создано: 16 мая 2020 22:04
· Личное сообщение · #3

Vamit пишет:
Может через IOCP, если функа CreateIoCompletionPort имеется.


Эта функция не вызывается..
В общем, я и забыл, что можно просто ReadFile/WriteFile делать для сокетов, а там конечно винсок не при чём Только что получилось отловить. Вроде очевидно, а день ушёл


 eXeL@B —› Вопросы новичков —› TLS 1.2 + чтение из сокета
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати