comparison src/protocols/msn/notification.c @ 7274:448e39ace278

[gaim-migrate @ 7851] Added a parameter to gaim_ssl_connect() to specify an optional error callback. MSN takes advantage of it, but since I can't reproduce the errors here, I'm not positive it works. It should though! Famous last words. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Wed, 15 Oct 2003 06:32:13 +0000
parents 78f3252e9d10
children ff9127038a5a
comparison
equal deleted inserted replaced
7273:d152ea377e4a 7274:448e39ace278
311 311
312 return TRUE; 312 return TRUE;
313 } 313 }
314 314
315 static void 315 static void
316 login_error_cb(GaimSslConnection *gsc, GaimSslErrorType error, void *data)
317 {
318 MsnServConn *servconn = (MsnServConn *)data;
319 GaimAccount *account = servconn->session->account;
320 GaimConnection *gc = gaim_account_get_connection(account);
321
322 gaim_connection_error(gc, _("Unable to connect to server"));
323 }
324
325 static void
316 login_connect_cb(gpointer data, GaimSslConnection *gsc, 326 login_connect_cb(gpointer data, GaimSslConnection *gsc,
317 GaimInputCondition cond) 327 GaimInputCondition cond)
318 { 328 {
319 MsnServConn *servconn = (MsnServConn *)data; 329 MsnServConn *servconn = (MsnServConn *)data;
320 MsnSession *session = servconn->session; 330 MsnSession *session = servconn->session;
418 session->ssl_login_host = g_strdup(location); 428 session->ssl_login_host = g_strdup(location);
419 429
420 session->ssl_conn = gaim_ssl_connect(session->account, 430 session->ssl_conn = gaim_ssl_connect(session->account,
421 session->ssl_login_host, 431 session->ssl_login_host,
422 GAIM_SSL_DEFAULT_PORT, 432 GAIM_SSL_DEFAULT_PORT,
423 login_connect_cb, servconn); 433 login_connect_cb, login_error_cb,
434 servconn);
424 } 435 }
425 else if (strstr(buffer, "HTTP/1.1 401 Unauthorized") != NULL) 436 else if (strstr(buffer, "HTTP/1.1 401 Unauthorized") != NULL)
426 { 437 {
427 const char *error, *c; 438 const char *error, *c;
428 char *temp; 439 char *temp;
588 599
589 /* Now begin the connection to the login server. */ 600 /* Now begin the connection to the login server. */
590 session->ssl_conn = gaim_ssl_connect(session->account, 601 session->ssl_conn = gaim_ssl_connect(session->account,
591 session->ssl_login_host, 602 session->ssl_login_host,
592 GAIM_SSL_DEFAULT_PORT, 603 GAIM_SSL_DEFAULT_PORT,
593 login_connect_cb, servconn); 604 login_connect_cb, login_error_cb,
605 servconn);
594 } 606 }
595 607
596 static gboolean 608 static gboolean
597 usr_cmd(MsnServConn *servconn, const char *command, const char **params, 609 usr_cmd(MsnServConn *servconn, const char *command, const char **params,
598 size_t param_count) 610 size_t param_count)
680 #endif 692 #endif
681 693
682 session->ssl_conn = gaim_ssl_connect(session->account, 694 session->ssl_conn = gaim_ssl_connect(session->account,
683 "nexus.passport.com", 695 "nexus.passport.com",
684 GAIM_SSL_DEFAULT_PORT, 696 GAIM_SSL_DEFAULT_PORT,
685 nexus_connect_cb, servconn); 697 nexus_connect_cb, login_error_cb,
698 servconn);
686 699
687 if (session->ssl_conn == NULL) 700 if (session->ssl_conn == NULL)
688 { 701 {
689 gaim_connection_error(gc, 702 gaim_connection_error(gc,
690 _("Unable to connect to passport server")); 703 _("Unable to connect to passport server"));