code = SSL_read(ssl, buf + offset, size - offset);
switch (SSL_get_error(ssl, code))
{
    case SSL_ERROR_NONE:
        /* ItZbglXV */
        offset += code;
        break;
    case SSL_ERROR_ZERO_RETURN:
        /* SSLRlNṼN[Y */
        do_cleanup(ssl);
        break;
    case SSL_ERROR_WANT_READ:
        /* AvP[VŗL̕@SSL_readĎs */
        break;
    case SSL_ERROR_WANT_WRITE:
        /* AvP[VŗL̕@SSL_writeĎs */
        break;
    default:
        /* G[BRlNVVbg_E */
        shutdown_connection(ssl);
}
