La razón es bastante simple: cuando SSL_Write regresa con SSL_ERROR_WANT_WRITE o SSL_ERROR_WANT_READ, hay que repetir la llamada a SSL_write con los mismos parámetros exactos de nuevo, después de la condición está satisfecha (lectura/escritura disponible en el zócalo).
Llamarlo con diferentes parámetros, producirá el error de reintento de escritura 1409F07F malo.
Por ejemplo, cuando SSL_write (ssl, ptr, tamaño) con ptr = 0xABCDEFGH, tamaño = 4096 falla con SSL_ERROR_WANT_READ o SSL_ERROR_WANT_WRITE, cuando de volver a intentar la llamada SSL_write, los parámetros ptr y el tamaño debe ser el mismo. No es equivalente si ptr es otro puntero que apunta a una copia de los mismos contenidos que en la llamada original.
Sin embargo, este comportamiento predeterminado de SSL_write se puede cambiar configurando SSL_MODE_ENABLE_PARTIAL_WRITE y/o SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER.
Gracias por @ShriramV para los comentarios aclaratorios, integrados a la respuesta
Hey puede separar usted pregunta de su respuesta, para que pueda aceptar su propia respuesta si usted piensa que es correcto. Gracias por tu consejo – Matias
Gracias por la idea, hice lo que sugeriste, ¡10 veces! –