EvdTlsSession

EvdTlsSession

Synopsis

gssize              (*EvdTlsSessionPullFunc)            (EvdTlsSession *self,
                                                         gchar *buf,
                                                         gsize size,
                                                         gpointer user_data,
                                                         GError **error);
gssize              (*EvdTlsSessionPushFunc)            (EvdTlsSession *self,
                                                         const gchar *buf,
                                                         gsize size,
                                                         gpointer user_data,
                                                         GError **error);
struct              EvdTlsSession;
struct              EvdTlsSessionClass;
EvdTlsSession *     evd_tls_session_new                 (void);
void                evd_tls_session_set_transport_pull_func
                                                        (EvdTlsSession *self,
                                                         EvdTlsSessionPullFunc func,
                                                         gpointer user_data);
void                evd_tls_session_set_transport_push_func
                                                        (EvdTlsSession *self,
                                                         EvdTlsSessionPushFunc func,
                                                         gpointer user_data);
gint                evd_tls_session_handshake           (EvdTlsSession *self,
                                                         GError **error);
gssize              evd_tls_session_read                (EvdTlsSession *self,
                                                         gchar *buffer,
                                                         gsize size,
                                                         GError **error);
gssize              evd_tls_session_write               (EvdTlsSession *self,
                                                         const gchar *buffer,
                                                         gsize size,
                                                         GError **error);
GIOCondition        evd_tls_session_get_direction       (EvdTlsSession *self);
gboolean            evd_tls_session_close               (EvdTlsSession *self,
                                                         GError **error);
gboolean            evd_tls_session_shutdown_write      (EvdTlsSession *self,
                                                         GError **error);
void                evd_tls_session_copy_properties     (EvdTlsSession *self,
                                                         EvdTlsSession *target);
GList *             evd_tls_session_get_peer_certificates
                                                        (EvdTlsSession *self,
                                                         GError **error);
gint                evd_tls_session_verify_peer         (EvdTlsSession *self,
                                                         guint flags,
                                                         GError **error);
void                evd_tls_session_reset               (EvdTlsSession *self);
gboolean            evd_tls_session_set_server_name     (EvdTlsSession *self,
                                                         const gchar *server_name,
                                                         GError **error);
const gchar *       evd_tls_session_get_server_name     (EvdTlsSession *self);

Object Hierarchy

  GObject
   +----EvdTlsSession

Properties

  "credentials"              EvdTlsCredentials*    : Read / Write
  "mode"                     guint                 : Read / Write
  "priority"                 gchar*                : Read / Write
  "require-peer-cert"        gboolean              : Read / Write

Description

Details

EvdTlsSessionPullFunc ()

gssize              (*EvdTlsSessionPullFunc)            (EvdTlsSession *self,
                                                         gchar *buf,
                                                         gsize size,
                                                         gpointer user_data,
                                                         GError **error);


EvdTlsSessionPushFunc ()

gssize              (*EvdTlsSessionPushFunc)            (EvdTlsSession *self,
                                                         const gchar *buf,
                                                         gsize size,
                                                         gpointer user_data,
                                                         GError **error);


struct EvdTlsSession

struct EvdTlsSession;


struct EvdTlsSessionClass

struct EvdTlsSessionClass {
  GObjectClass parent_class;

  /* padding for future expansion */
  void (* _padding_0_) (void);
  void (* _padding_1_) (void);
  void (* _padding_2_) (void);
  void (* _padding_3_) (void);
  void (* _padding_4_) (void);
  void (* _padding_5_) (void);
  void (* _padding_6_) (void);
  void (* _padding_7_) (void);
};


evd_tls_session_new ()

EvdTlsSession *     evd_tls_session_new                 (void);


evd_tls_session_set_transport_pull_func ()

void                evd_tls_session_set_transport_pull_func
                                                        (EvdTlsSession *self,
                                                         EvdTlsSessionPullFunc func,
                                                         gpointer user_data);


evd_tls_session_set_transport_push_func ()

void                evd_tls_session_set_transport_push_func
                                                        (EvdTlsSession *self,
                                                         EvdTlsSessionPushFunc func,
                                                         gpointer user_data);


evd_tls_session_handshake ()

gint                evd_tls_session_handshake           (EvdTlsSession *self,
                                                         GError **error);


evd_tls_session_read ()

gssize              evd_tls_session_read                (EvdTlsSession *self,
                                                         gchar *buffer,
                                                         gsize size,
                                                         GError **error);


evd_tls_session_write ()

gssize              evd_tls_session_write               (EvdTlsSession *self,
                                                         const gchar *buffer,
                                                         gsize size,
                                                         GError **error);


evd_tls_session_get_direction ()

GIOCondition        evd_tls_session_get_direction       (EvdTlsSession *self);


evd_tls_session_close ()

gboolean            evd_tls_session_close               (EvdTlsSession *self,
                                                         GError **error);


evd_tls_session_shutdown_write ()

gboolean            evd_tls_session_shutdown_write      (EvdTlsSession *self,
                                                         GError **error);


evd_tls_session_copy_properties ()

void                evd_tls_session_copy_properties     (EvdTlsSession *self,
                                                         EvdTlsSession *target);


evd_tls_session_get_peer_certificates ()

GList *             evd_tls_session_get_peer_certificates
                                                        (EvdTlsSession *self,
                                                         GError **error);

Returns :

The list of certificates as sent by the peer. [transfer full][element-type Evd.TlsCertificate]

evd_tls_session_verify_peer ()

gint                evd_tls_session_verify_peer         (EvdTlsSession *self,
                                                         guint flags,
                                                         GError **error);


evd_tls_session_reset ()

void                evd_tls_session_reset               (EvdTlsSession *self);


evd_tls_session_set_server_name ()

gboolean            evd_tls_session_set_server_name     (EvdTlsSession *self,
                                                         const gchar *server_name,
                                                         GError **error);


evd_tls_session_get_server_name ()

const gchar *       evd_tls_session_get_server_name     (EvdTlsSession *self);

Property Details

The "credentials" property

  "credentials"              EvdTlsCredentials*    : Read / Write

The certificate credentials object to use by this SSL/TLS session.


The "mode" property

  "mode"                     guint                 : Read / Write

The SSL/TLS session's mode of operation: client or server.

Allowed values: [1,2]

Default value: 1


The "priority" property

  "priority"                 gchar*                : Read / Write

Gets/sets the priorities to use on the ciphers, key exchange methods, macs and compression methods.

Default value: "NORMAL"


The "require-peer-cert" property

  "require-peer-cert"        gboolean              : Read / Write

Controls whether a peer certificate will be requested during handshake.

Default value: FALSE