glibmm 2.80.0
Public Types | Public Member Functions | List of all members
Gio::TlsError Class Reference

#include <giomm/error.h>

Inheritance diagram for Gio::TlsError:
Inheritance graph
[legend]

Public Types

enum  Code {
  UNAVAILABLE ,
  MISC ,
  BAD_CERTIFICATE ,
  NOT_TLS ,
  HANDSHAKE ,
  CERTIFICATE_REQUIRED ,
  ENDOFFILE ,
  INAPPROPRIATE_FALLBACK ,
  BAD_CERTIFICATE_PASSWORD
}
 An error code used with G_TLS_ERROR in a Error returned from a TLS-related routine. More...
 

Public Member Functions

 TlsError (Code error_code, const Glib::ustring & error_message)
 
 TlsError (GError * gobject)
 
Code code () const
 
- Public Member Functions inherited from Glib::Error
 Error ()
 
 Error (GQuark error_domain, int error_code, const Glib::ustring & message)
 
 Error (GError * gobject, bool take_copy=false)
 
 Error (const Error & other)
 
Erroroperator= (const Error & other)
 
 ~Error () noexcept override
 
 operator bool () const
 Test whether the Error has an underlying instance. More...
 
GQuark domain () const
 
int code () const
 
const char * what () const noexcept override
 
bool matches (GQuark error_domain, int error_code) const
 
GError * gobj ()
 
const GError * gobj () const
 
virtual const char * what () const noexcept
 

Additional Inherited Members

- Protected Attributes inherited from Glib::Error
GError * gobject_
 

Member Enumeration Documentation

◆ Code

An error code used with G_TLS_ERROR in a Error returned from a TLS-related routine.

Since glibmm 2.28:
Enumerator
UNAVAILABLE 

No TLS provider is available.

MISC 

Miscellaneous TLS error.

BAD_CERTIFICATE 

The certificate presented could not be parsed or failed validation.

NOT_TLS 

The TLS handshake failed because the peer does not seem to be a TLS server.

HANDSHAKE 

The TLS handshake failed because the peer's certificate was not acceptable.

CERTIFICATE_REQUIRED 

The TLS handshake failed because the server requested a client-side certificate, but none was provided.

See g_tls_connection_set_certificate().

ENDOFFILE 

The TLS connection was closed without proper notice, which may indicate an attack.

See g_tls_connection_set_require_close_notify().

INAPPROPRIATE_FALLBACK 

The TLS handshake failed because the client sent the fallback SCSV, indicating a protocol downgrade attack.

Since glibmm 2.60:
BAD_CERTIFICATE_PASSWORD 

The certificate failed to load because a password was incorrect.

Since glibmm 2.72:

Constructor & Destructor Documentation

◆ TlsError() [1/2]

Gio::TlsError::TlsError ( Code  error_code,
const Glib::ustring error_message 
)

◆ TlsError() [2/2]

Gio::TlsError::TlsError ( GError *  gobject)
explicit

Member Function Documentation

◆ code()

Code Gio::TlsError::code ( ) const