TlsInteraction.invokeRequestCertificate
gio.types.TlsInteractionResult invokeRequestCertificate(gio.tls_connection.TlsConnection connection, gio.types.TlsCertificateRequestFlags flags, gio.cancellable.Cancellable cancellable = null)Invoke the interaction to ask the user to choose a certificate to use with the connection. It invokes this interaction in the main loop, specifically the #GMainContext returned by [glib.main_context.MainContext.getThreadDefault] when the interaction is created. This is called by called by #GTlsConnection when the peer requests a certificate during the handshake.
Derived subclasses usually implement a certificate selector, although they may also choose to provide a certificate from elsewhere. Alternatively the user may abort this certificate request, which may or may not abort the TLS connection.
The implementation can either be a synchronous (eg: modal dialog) or an asynchronous one (eg: modeless dialog). This function will take care of calling which ever one correctly.
If the interaction is cancelled by the cancellation object, or by the user then [gio.types.TlsInteractionResult.Failed] will be returned with an error that contains a [gio.types.IOErrorEnum.Cancelled] error code. Certain implementations may not support immediate cancellation.
Parameters
connection | a #GTlsConnection object |
flags | flags providing more information about the request |
cancellable | an optional #GCancellable cancellation object |