OpenSSL error reporting during handshake
There are various conditions when TLS handshake is aborted due to cipher mismatch, certificate mismatch, protocol mismatch, missing prereqs. you-name-it. GIO-TLS expects this to be reported on server side as NOT_TLS (tls never succeeded). OpenSSL on server side reports this spuriously and intermittently as either broken-pipe or no_error - which depends on whether server was able to terminate connection with Alert (and then it;s no-error - business as usual) or client bails first (and then it's broken-pipe as server is unable to deliver queued alert). This corner case needs to be polished to re-align with existing error reporting. Potentially need to try to pop more errors from the queue, or vice versa - peek and re-queue locally to be able to report later.