LINUX.ORG.RU

История изменений

Исправление LamerOk, (текущая версия) :

Ещё раз повторю суть беседы,

Вот в таком формате надо было сделать ОП-пост.

3б) и 3в) - это одно и тоже, если шатдаун не пропущен. В любом случае сокет надо будет закрыть.

а SSL_read и так выдаёт ошибку без close.

SSL_read() + SSL_get_error() возвращающий тебе SSL_ERROR_ZERO_RETURN означает, что у тебя есть рабочая SSL-сессия, но нет данных для чтения. Когда удалённая сторона закроет сокет со свой стороны, SSL_read() / SSL_get_error() вернёт тебе другую ошибку (SSL_ERROR_SYSCALL).

Т.е. для тебя порядок и логика вызвов функций во всех трёх случаях (3а - 3в) одни и те же.

Исправление LamerOk, :

Ещё раз повторю суть беседы,

Вот в таком формате надо было сделать ОП-пост.

3б) и 3в) - это одно и тоже. В любом случае сокет надо будет закрыть.

а SSL_read и так выдаёт ошибку без close.

SSL_read() + SSL_get_error() возвращающий тебе SSL_ERROR_ZERO_RETURN означает, что у тебя есть рабочая SSL-сессия, но нет данных для чтения. Когда удалённая сторона закроет сокет со свой стороны, SSL_read() / SSL_get_error() вернёт тебе другую ошибку (SSL_ERROR_SYSCALL).

Т.е. для тебя порядок и логика вызвов функций во всех трёх случаях (3а - 3в) одни и те же.

Исправление LamerOk, :

Ещё раз повторю суть беседы,

Вот в таком формате надо было сделать ОП-пост.

3б) и 3в) - это одно и тоже. В любом случае сокет надо будет закрыть.

а SSL_read и так выдаёт ошибку без close.

SSL_read() + SSL_get_error() возвращающий тебе SSL_ERROR_ZERO_RETURN означает, что у тебя есть рабочая SSL-сессия, но нет данных для чтения. Когда удалённая сторона закроет сокет со свой стороны, SSL_read() / SSL_get_error() вернёт тебе другую ошибку (SSL_ERROR_SYSCALL).

Исходная версия LamerOk, :

Ещё раз повторю суть беседы,

Вот в таком формате надо было сделать ОП-пост.

3б) и 3в) - это одно и тоже. В любом случае сокет надо будет закрыть.

а SSL_read и так выдаёт ошибку без close.

SSL_read() возвращающий тебе SSL_ERROR_ZERO_RETURN означает, что у тебя есть рабочая SSL-сессия, но нет данных для чтения. Когда удалённая сторона закроет сокет со свой стороны, SSL_read() вернёт тебе другую ошибку (SSL_ERROR_SYSCALL).