# HG changeset patch # User Daniel Atallah # Date 1196378331 0 # Node ID 882ac6616de937fa99953785d4a43275abc591ac # Parent 6f4ffdc65230b01ef67df6734cad2df3bc9efa73# Parent 280f622cb9b0a22f0950821573bb7b63b1a22644 merge of '29f8aed19e209a53a63c57cf872bc9f446d84aeb' and '680ead8ac23fbdc99bd7178248a4cdf0bec54307' diff -r 6f4ffdc65230 -r 882ac6616de9 libpurple/protocols/irc/parse.c --- a/libpurple/protocols/irc/parse.c Thu Nov 29 23:18:33 2007 +0000 +++ b/libpurple/protocols/irc/parse.c Thu Nov 29 23:18:51 2007 +0000 @@ -64,7 +64,7 @@ { "318", "nt:", irc_msg_endwhois }, /* End of WHOIS */ { "319", "nn:", irc_msg_whois }, /* Whois channels */ { "320", "nn:", irc_msg_whois }, /* Whois (fn ident) */ - { "314", "nnvvv:", irc_msg_whois }, /* Whowas user */ + { "314", "nnnvv:", irc_msg_whois }, /* Whowas user */ { "369", "nt:", irc_msg_endwhois }, /* End of WHOWAS */ { "321", "*", irc_msg_list }, /* Start of list */ { "322", "ncv:", irc_msg_list }, /* List. */ diff -r 6f4ffdc65230 -r 882ac6616de9 libpurple/protocols/msnp9/notification.c --- a/libpurple/protocols/msnp9/notification.c Thu Nov 29 23:18:33 2007 +0000 +++ b/libpurple/protocols/msnp9/notification.c Thu Nov 29 23:18:51 2007 +0000 @@ -235,6 +235,8 @@ /* OK */ const char *friendly = purple_url_decode(cmd->params[3]); + session->passport_info.verified = atoi(cmd->params[4]); + purple_connection_set_display_name(gc, friendly); msn_session_set_login_step(session, MSN_LOGIN_STEP_SYN); diff -r 6f4ffdc65230 -r 882ac6616de9 libpurple/protocols/msnp9/session.h --- a/libpurple/protocols/msnp9/session.h Thu Nov 29 23:18:33 2007 +0000 +++ b/libpurple/protocols/msnp9/session.h Thu Nov 29 23:18:51 2007 +0000 @@ -114,7 +114,7 @@ char *file; char *client_ip; int client_port; - + int verified; } passport_info; }; diff -r 6f4ffdc65230 -r 882ac6616de9 libpurple/protocols/msnp9/user.c --- a/libpurple/protocols/msnp9/user.c Thu Nov 29 23:18:33 2007 +0000 +++ b/libpurple/protocols/msnp9/user.c Thu Nov 29 23:18:51 2007 +0000 @@ -126,16 +126,20 @@ msn_user_set_friendly_name(MsnUser *user, const char *name) { MsnCmdProc *cmdproc; + MsnSession *session; const char *encoded; g_return_if_fail(user != NULL); encoded = purple_url_encode(name); + session = user->userlist->session; - if (user->friendly_name && strcmp(user->friendly_name, name) && (strlen(encoded) < 387)) { + if (user->friendly_name && strcmp(user->friendly_name, name) + && (strlen(encoded) < 387) && session->passport_info.verified && + (user->list_op & MSN_LIST_FL_OP)) { /* copy the new name to the server list, but only when new */ /* should we check this more thoroughly? */ - cmdproc = user->userlist->session->notification->cmdproc; + cmdproc = session->notification->cmdproc; msn_cmdproc_send(cmdproc, "REA", "%s %s", user->passport, encoded);