Changeset 792a93b for protocols/jabber/io.c
- Timestamp:
- 2011-12-23T12:44:08Z (12 years ago)
- Branches:
- master
- Children:
- 200e151
- Parents:
- 2d93a51e (diff), 41658da (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
protocols/jabber/io.c
r2d93a51e r792a93b 279 279 } 280 280 281 gboolean jabber_connected_ssl( gpointer data, void *source, b_input_condition cond )281 gboolean jabber_connected_ssl( gpointer data, int returncode, void *source, b_input_condition cond ) 282 282 { 283 283 struct im_connection *ic = data; … … 295 295 jd->ssl = NULL; 296 296 297 imcb_error( ic, "Could not connect to server" ); 298 imc_logout( ic, TRUE ); 297 if( returncode != 0 ) 298 { 299 char *err = ssl_verify_strerror( returncode ); 300 imcb_error( ic, "Certificate verification problem 0x%x: %s", 301 returncode, err ? err : "Unknown" ); 302 g_free( err ); 303 imc_logout( ic, FALSE ); 304 } 305 else 306 { 307 imcb_error( ic, "Could not connect to server" ); 308 imc_logout( ic, TRUE ); 309 } 310 299 311 return FALSE; 300 312 } … … 400 412 struct im_connection *ic = data; 401 413 struct jabber_data *jd = ic->proto_data; 402 char *xmlns ;414 char *xmlns, *tlsname; 403 415 404 416 xmlns = xt_find_attr( node, "xmlns" ); … … 426 438 427 439 jd->flags |= JFLAG_STARTTLS_DONE; 428 jd->ssl = ssl_starttls( jd->fd, jabber_connected_ssl, ic ); 440 441 /* If the user specified a server for the account, use this server as the 442 * hostname in the certificate verification. Else we use the domain from 443 * the username. */ 444 if( ic->acc->server && *ic->acc->server ) 445 tlsname = ic->acc->server; 446 else 447 tlsname = jd->server; 448 449 jd->ssl = ssl_starttls( jd->fd, tlsname, set_getbool( &ic->acc->set, "tls_verify" ), 450 jabber_connected_ssl, ic ); 429 451 430 452 return XT_HANDLED;
Note: See TracChangeset
for help on using the changeset viewer.