I'm using libgnutls.so.26.14.11 with libgcrypt.so.11.4.3 on Solaris 10.
The problem only occurs when I test my software using a local ftp server that we have set up within our own site network. If I test using a remote ftp server no problem occurs.
To start with the problem was reported as an assert fail; (*lock == MUTEX_UNLOCKED). My code is not threaded, however I assumed there may be some interrupts as I am using asynchronous sockets and still followed the guide as discussed here
However this resulted in another problem with the Solaris privileges system in that I do not have permission to lock memory. I also tried the disable secure memory option but this results in abort signals being issued either during the initial handshake or passing the user name or password.
I don't understand why I get different behaviour with our local server and the remote server apart from possible time delays and I don't understand why I can't lock memory direct from my code and yet there are no such problems when I just call gnutls_global_init() without the gcry_control() calls.
Can anyone help me understand why this is proving so difficult?