aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl_nss.c
diff options
context:
space:
mode:
authordequis <dx@dxzone.com.ar>2015-10-26 05:18:51 -0300
committerdequis <dx@dxzone.com.ar>2015-10-26 05:28:10 -0300
commit0db66186f49438ae9c2f73ca85b915e999896309 (patch)
treee79f3ef3e17866ed19415f877b8526b920b7c85b /lib/ssl_nss.c
parent4e365cec5275e3dec782af3ec0bc9a651cc2b831 (diff)
Use proxy_disconnect() in http, ssl, jabber, oscar
Twitter and MSN are all HTTP/SSL, so they don't need it either. The out of tree facebook and steam plugins are also covered by the HTTP/SSL changes. Yahoo is written in a weird way and doesn't seem to need it (it seems it doesn't immediately stop connections when you tell it to logout)
Diffstat (limited to 'lib/ssl_nss.c')
-rw-r--r--lib/ssl_nss.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/ssl_nss.c b/lib/ssl_nss.c
index 09e50f3f..78121a4e 100644
--- a/lib/ssl_nss.c
+++ b/lib/ssl_nss.c
@@ -225,8 +225,8 @@ ssl_connected_failure:
if (conn->prfd) {
PR_Close(conn->prfd);
- }
- if (source >= 0) {
+ } else if (source >= 0) {
+ /* proxy_disconnect() would be redundant here */
closesocket(source);
}
g_free(conn->hostname);
@@ -304,6 +304,8 @@ void ssl_disconnect(void *conn_)
if (conn->prfd) {
PR_Close(conn->prfd);
+ } else if (conn->fd) {
+ proxy_disconnect(conn->fd);
}
g_free(conn->hostname);