inital handshake always fails with GNUTLS_E_GOT_APPLICATION_DATA

MK mk at
Sat Oct 13 00:30:17 CEST 2012

I'm trying to use tls in an existing http server.  Unfortunately, the
inital handshake always craps out with GNUTLS_E_GOT_APPLICATION_DATA.

The server is a non-blocking async/single-thread model written in a
combination of perl and (Inline::)C.   The secure socket module is kind
of tightly coupled in the sense that it is an alternative at the bottom
of a socket class hierarchy, fulfilling read and write methods left
abstract higher up, so I have not included any code here.  However, I
follow the same sequence of calls as used in the "x509 echo server"
example from the gnutls docs (which does not reproduce the problem).

The only even remotely related thing I've found online is from the
devel list archive:

Which gave me various flail-my-arms-while-drowning ideas such as trying
to purge the connection with gnutls_record_recv, but before I
run-around-like-a-headless-chicken I thought I'd ask here for more
educated guesses.

Note that the server has been in use online for a while and extensively
tested sans tls. 

Sincerely, Mark E.

"Enthusiasm is not the enemy of the intellect." (said of Irving Howe)
"The angel of history[...]is turned toward the past." (Walter Benjamin)

More information about the Gnutls-help mailing list