aboutsummaryrefslogtreecommitdiff
path: root/xmpp-vala/src/module/xep/0368_srv_records_tls.vala
diff options
context:
space:
mode:
Diffstat (limited to 'xmpp-vala/src/module/xep/0368_srv_records_tls.vala')
-rw-r--r--xmpp-vala/src/module/xep/0368_srv_records_tls.vala12
1 files changed, 8 insertions, 4 deletions
diff --git a/xmpp-vala/src/module/xep/0368_srv_records_tls.vala b/xmpp-vala/src/module/xep/0368_srv_records_tls.vala
index 154e8a4f..4c24c63e 100644
--- a/xmpp-vala/src/module/xep/0368_srv_records_tls.vala
+++ b/xmpp-vala/src/module/xep/0368_srv_records_tls.vala
@@ -37,10 +37,14 @@ public class TlsConnectionProvider : ConnectionProvider {
public override IOStream? connect(XmppStream stream) {
SocketClient client = new SocketClient();
- IOStream? io_stream = client.connect_to_host(srv_target.get_hostname(), srv_target.get_port());
- io_stream = TlsClientConnection.new(io_stream, new NetworkAddress(srv_target.get_hostname(), srv_target.get_port()));
- stream.add_flag(new Tls.Flag() { finished=true });
- return io_stream;
+ try {
+ IOStream? io_stream = client.connect_to_host(srv_target.get_hostname(), srv_target.get_port());
+ io_stream = TlsClientConnection.new(io_stream, new NetworkAddress(srv_target.get_hostname(), srv_target.get_port()));
+ stream.add_flag(new Tls.Flag() { finished=true });
+ return io_stream;
+ } catch (Error e) {
+ return null;
+ }
}
public override string get_id() { return "start_tls"; }