comparison libgaim/protocols/novell/novell.c @ 14250:1f963d406bb4

[gaim-migrate @ 16932] More sslconn improvements committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 21 Aug 2006 02:42:14 +0000
parents 60b1bc8dbf37
children 8ed6ef220b2d
comparison
equal deleted inserted replaced
14249:9c371189d7d6 14250:1f963d406bb4
1661 1661
1662 static void 1662 static void
1663 novell_ssl_connect_error(GaimSslConnection * gsc, 1663 novell_ssl_connect_error(GaimSslConnection * gsc,
1664 GaimSslErrorType error, gpointer data) 1664 GaimSslErrorType error, gpointer data)
1665 { 1665 {
1666 gaim_connection_error((GaimConnection *)data, 1666 GaimConnection *gc;
1667 _("Unable to make SSL connection to server.")); 1667 NMUser *user;
1668
1669 gc = data;
1670 user = gc->proto_data;
1671 user->conn->ssl_conn->data = NULL;
1672
1673 gaim_connection_error(gc, _("Unable to make SSL connection to server."));
1668 } 1674 }
1669 1675
1670 static void 1676 static void
1671 novell_ssl_recv_cb(gpointer data, GaimSslConnection * gsc, 1677 novell_ssl_recv_cb(gpointer data, GaimSslConnection * gsc,
1672 GaimInputCondition condition) 1678 GaimInputCondition condition)
1715 user = gc->proto_data; 1721 user = gc->proto_data;
1716 if ((user == NULL) || (conn = user->conn) == NULL) 1722 if ((user == NULL) || (conn = user->conn) == NULL)
1717 return; 1723 return;
1718 1724
1719 conn->ssl_conn = g_new0(NMSSLConn, 1); 1725 conn->ssl_conn = g_new0(NMSSLConn, 1);
1720 conn->ssl_conn->data = gsc;
1721 conn->ssl_conn->read = (nm_ssl_read_cb) gaim_ssl_read; 1726 conn->ssl_conn->read = (nm_ssl_read_cb) gaim_ssl_read;
1722 conn->ssl_conn->write = (nm_ssl_write_cb) gaim_ssl_write; 1727 conn->ssl_conn->write = (nm_ssl_write_cb) gaim_ssl_write;
1723 1728
1724 gaim_connection_update_progress(gc, _("Authenticating..."), 1729 gaim_connection_update_progress(gc, _("Authenticating..."),
1725 2, NOVELL_CONNECT_STEPS); 1730 2, NOVELL_CONNECT_STEPS);
2180 /* connect to the server */ 2185 /* connect to the server */
2181 gaim_connection_update_progress(gc, _("Connecting"), 2186 gaim_connection_update_progress(gc, _("Connecting"),
2182 1, NOVELL_CONNECT_STEPS); 2187 1, NOVELL_CONNECT_STEPS);
2183 2188
2184 user->conn->use_ssl = TRUE; 2189 user->conn->use_ssl = TRUE;
2185 if (gaim_ssl_connect(user->client_data, user->conn->addr, 2190 user->conn->ssl_conn->data = gaim_ssl_connect(user->client_data,
2186 user->conn->port, novell_ssl_connected_cb, 2191 user->conn->addr, user->conn->port,
2187 novell_ssl_connect_error, gc) == NULL) { 2192 novell_ssl_connected_cb, novell_ssl_connect_error, gc);
2193 if (user->conn->ssl_conn->data == NULL) {
2188 gaim_connection_error(gc, _("Error." 2194 gaim_connection_error(gc, _("Error."
2189 " SSL support is not installed.")); 2195 " SSL support is not installed."));
2190 } 2196 }
2191 } 2197 }
2192 } 2198 }