mirror of
https://github.com/profanity-im/profanity.git
synced 2024-12-04 14:46:46 -05:00
Tidy connection.c
This commit is contained in:
parent
5cb6b174cc
commit
02bc4f217c
@ -71,7 +71,9 @@ static void _xmpp_file_logger(void *const userdata, const xmpp_log_level_t level
|
|||||||
|
|
||||||
static void _connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status, const int error,
|
static void _connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status, const int error,
|
||||||
xmpp_stream_error_t *const stream_error, void *const userdata);
|
xmpp_stream_error_t *const stream_error, void *const userdata);
|
||||||
|
|
||||||
#ifdef HAVE_LIBMESODE
|
#ifdef HAVE_LIBMESODE
|
||||||
|
TLSCertificate* _xmppcert_to_profcert(xmpp_tlscert_t *xmpptlscert);
|
||||||
static int _connection_certfail_cb(xmpp_tlscert_t *xmpptlscert, const char *const errormsg);
|
static int _connection_certfail_cb(xmpp_tlscert_t *xmpptlscert, const char *const errormsg);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -172,21 +174,6 @@ connection_connect(const char *const fulljid, const char *const passwd, const ch
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_LIBMESODE
|
#ifdef HAVE_LIBMESODE
|
||||||
TLSCertificate*
|
|
||||||
_xmppcert_to_profcert(xmpp_tlscert_t *xmpptlscert)
|
|
||||||
{
|
|
||||||
return tlscerts_new(
|
|
||||||
xmpp_conn_tlscert_fingerprint(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_version(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_serialnumber(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_subjectname(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_issuername(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_notbefore(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_notafter(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_key_algorithm(xmpptlscert),
|
|
||||||
xmpp_conn_tlscert_signature_algorithm(xmpptlscert));
|
|
||||||
}
|
|
||||||
|
|
||||||
TLSCertificate*
|
TLSCertificate*
|
||||||
connection_get_tls_peer_cert(void)
|
connection_get_tls_peer_cert(void)
|
||||||
{
|
{
|
||||||
@ -425,10 +412,11 @@ static void
|
|||||||
_connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status, const int error,
|
_connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status, const int error,
|
||||||
xmpp_stream_error_t *const stream_error, void *const userdata)
|
xmpp_stream_error_t *const stream_error, void *const userdata)
|
||||||
{
|
{
|
||||||
// login success
|
switch (status) {
|
||||||
if (status == XMPP_CONN_CONNECT) {
|
|
||||||
log_debug("Connection handler: XMPP_CONN_CONNECT");
|
|
||||||
|
|
||||||
|
// login success
|
||||||
|
case XMPP_CONN_CONNECT:
|
||||||
|
log_debug("Connection handler: XMPP_CONN_CONNECT");
|
||||||
conn.conn_status = JABBER_CONNECTED;
|
conn.conn_status = JABBER_CONNECTED;
|
||||||
|
|
||||||
Jid *my_jid = jid_create(xmpp_conn_get_jid(conn.xmpp_conn));
|
Jid *my_jid = jid_create(xmpp_conn_get_jid(conn.xmpp_conn));
|
||||||
@ -440,7 +428,10 @@ _connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status
|
|||||||
|
|
||||||
session_login_success(connection_is_secured());
|
session_login_success(connection_is_secured());
|
||||||
|
|
||||||
} else if (status == XMPP_CONN_DISCONNECT) {
|
break;
|
||||||
|
|
||||||
|
// disconnected
|
||||||
|
case XMPP_CONN_DISCONNECT:
|
||||||
log_debug("Connection handler: XMPP_CONN_DISCONNECT");
|
log_debug("Connection handler: XMPP_CONN_DISCONNECT");
|
||||||
|
|
||||||
// lost connection for unknown reason
|
// lost connection for unknown reason
|
||||||
@ -454,12 +445,20 @@ _connection_handler(xmpp_conn_t *const xmpp_conn, const xmpp_conn_event_t status
|
|||||||
session_login_failed();
|
session_login_failed();
|
||||||
}
|
}
|
||||||
|
|
||||||
// close stream response from server after disconnect is handled too
|
// close stream response from server after disconnect is handled
|
||||||
conn.conn_status = JABBER_DISCONNECTED;
|
conn.conn_status = JABBER_DISCONNECTED;
|
||||||
} else if (status == XMPP_CONN_FAIL) {
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
// connection failed
|
||||||
|
case XMPP_CONN_FAIL:
|
||||||
log_debug("Connection handler: XMPP_CONN_FAIL");
|
log_debug("Connection handler: XMPP_CONN_FAIL");
|
||||||
} else {
|
break;
|
||||||
|
|
||||||
|
// unknown state
|
||||||
|
default:
|
||||||
log_error("Connection handler: Unknown status");
|
log_error("Connection handler: Unknown status");
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -474,6 +473,21 @@ _connection_certfail_cb(xmpp_tlscert_t *xmpptlscert, const char *const errormsg)
|
|||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TLSCertificate*
|
||||||
|
_xmppcert_to_profcert(xmpp_tlscert_t *xmpptlscert)
|
||||||
|
{
|
||||||
|
return tlscerts_new(
|
||||||
|
xmpp_conn_tlscert_fingerprint(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_version(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_serialnumber(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_subjectname(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_issuername(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_notbefore(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_notafter(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_key_algorithm(xmpptlscert),
|
||||||
|
xmpp_conn_tlscert_signature_algorithm(xmpptlscert));
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static xmpp_log_t*
|
static xmpp_log_t*
|
||||||
|
Loading…
Reference in New Issue
Block a user