# HG changeset patch # User Sadrul Habib Chowdhury # Date 1254844685 0 # Node ID 42fc2fc14db22c66db49354ca298c803817de032 # Parent 43200ff042ad681eda8d8d07ee6cf8173721dae2# Parent 51ba542e05ebadc07f0c06c2a7547b5d70529bf7 merge of '071f90416f664b41b4426e7929dc0a595aa02127' and 'cc9474cafa24a034b6f09ddf020062a8de40e1e8' diff -r 43200ff042ad -r 42fc2fc14db2 libpurple/protocols/jabber/jabber.c --- a/libpurple/protocols/jabber/jabber.c Tue Oct 06 15:56:43 2009 +0000 +++ b/libpurple/protocols/jabber/jabber.c Tue Oct 06 15:58:05 2009 +0000 @@ -68,8 +68,6 @@ #include "jingle/jingle.h" #include "jingle/rtp.h" -#define JABBER_CONNECT_STEPS (js->gsc ? 9 : 5) - PurplePlugin *jabber_plugin = NULL; GList *jabber_features = NULL; GList *jabber_identities = NULL; @@ -198,9 +196,10 @@ void jabber_stream_features_parse(JabberStream *js, xmlnode *packet) { if(xmlnode_get_child(packet, "starttls")) { - if(jabber_process_starttls(js, packet)) - + if(jabber_process_starttls(js, packet)) { + jabber_stream_set_state(js, JABBER_STREAM_INITIALIZING_ENCRYPTION); return; + } } else if(purple_account_get_bool(js->gc->account, "require_tls", FALSE) && !jabber_stream_is_ssl(js)) { purple_connection_error_reason(js->gc, PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR, @@ -211,6 +210,7 @@ if(js->registration) { jabber_register_start(js); } else if(xmlnode_get_child(packet, "mechanisms")) { + jabber_stream_set_state(js, JABBER_STREAM_AUTHENTICATING); jabber_auth_start(js, packet); } else if(xmlnode_get_child(packet, "bind")) { xmlnode *bind, *resource; @@ -289,8 +289,10 @@ if(js->state == JABBER_STREAM_AUTHENTICATING) jabber_auth_handle_failure(js, *packet); } else if(!strcmp((*packet)->name, "proceed")) { - if(js->state == JABBER_STREAM_AUTHENTICATING && !js->gsc) + if (js->state == JABBER_STREAM_INITIALIZING_ENCRYPTION && !js->gsc) tls_init(js); + else + purple_debug_warning("jabber", "Ignoring spurious \n"); } else { purple_debug(PURPLE_DEBUG_WARNING, "jabber", "Unknown packet: %s\n", (*packet)->name); @@ -1570,6 +1572,8 @@ void jabber_stream_set_state(JabberStream *js, JabberStreamState state) { +#define JABBER_CONNECT_STEPS ((js->gsc || js->state == JABBER_STREAM_INITIALIZING_ENCRYPTION) ? 9 : 5) + js->state = state; switch(state) { case JABBER_STREAM_OFFLINE: @@ -1607,6 +1611,8 @@ purple_connection_set_state(js->gc, PURPLE_CONNECTED); break; } + +#undef JABBER_CONNECT_STEPS } char *jabber_get_next_id(JabberStream *js) diff -r 43200ff042ad -r 42fc2fc14db2 libpurple/protocols/jabber/parser.c --- a/libpurple/protocols/jabber/parser.c Tue Oct 06 15:56:43 2009 +0000 +++ b/libpurple/protocols/jabber/parser.c Tue Oct 06 15:58:05 2009 +0000 @@ -62,11 +62,6 @@ g_free(attrib); } } - if(js->protocol_version == JABBER_PROTO_0_9) - js->auth_type = JABBER_AUTH_IQ_AUTH; - - if(js->state == JABBER_STREAM_INITIALIZING || js->state == JABBER_STREAM_INITIALIZING_ENCRYPTION) - jabber_stream_set_state(js, JABBER_STREAM_AUTHENTICATING); } else { if(js->current) @@ -256,5 +251,17 @@ break; } } + + if (js->protocol_version == JABBER_PROTO_0_9 && !js->gc->disconnect_timeout && + (js->state == JABBER_STREAM_INITIALIZING || + js->state == JABBER_STREAM_INITIALIZING_ENCRYPTION)) { + /* + * Legacy servers don't advertise features, so if we've just gotten + * the opening and there was no version, we need to + * immediately start legacy IQ auth. + */ + js->auth_type = JABBER_AUTH_IQ_AUTH; + jabber_stream_set_state(js, JABBER_STREAM_AUTHENTICATING); + } } diff -r 43200ff042ad -r 42fc2fc14db2 libpurple/protocols/jabber/roster.c --- a/libpurple/protocols/jabber/roster.c Tue Oct 06 15:56:43 2009 +0000 +++ b/libpurple/protocols/jabber/roster.c Tue Oct 06 15:58:05 2009 +0000 @@ -229,7 +229,7 @@ else jb->subscription &= ~JABBER_SUB_PENDING; - if(jb->subscription == JABBER_SUB_REMOVE) { + if(jb->subscription & JABBER_SUB_REMOVE) { remove_purple_buddies(js, jid); } else { GSList *groups = NULL; diff -r 43200ff042ad -r 42fc2fc14db2 pidgin/win32/nsis/pidgin-installer.nsi --- a/pidgin/win32/nsis/pidgin-installer.nsi Tue Oct 06 15:56:43 2009 +0000 +++ b/pidgin/win32/nsis/pidgin-installer.nsi Tue Oct 06 15:58:05 2009 +0000 @@ -717,6 +717,7 @@ Delete "$INSTDIR\ca-certs\AOL_Member_CA.pem" Delete "$INSTDIR\ca-certs\CAcert_Class3.pem" Delete "$INSTDIR\ca-certs\CAcert_Root.pem" + Delete "$INSTDIR\ca-certs\Entrust.net_Secure_Server_CA.pem" Delete "$INSTDIR\ca-certs\Equifax_Secure_CA.pem" Delete "$INSTDIR\ca-certs\Equifax_Secure_Global_eBusiness_CA-1.pem" Delete "$INSTDIR\ca-certs\GTE_CyberTrust_Global_Root.pem" diff -r 43200ff042ad -r 42fc2fc14db2 po/de.po --- a/po/de.po Tue Oct 06 15:56:43 2009 +0000 +++ b/po/de.po Tue Oct 06 15:58:05 2009 +0000 @@ -11,8 +11,8 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-09-16 11:43+0200\n" -"PO-Revision-Date: 2009-09-16 11:37+0200\n" +"POT-Creation-Date: 2009-10-05 21:56+0200\n" +"PO-Revision-Date: 2009-10-05 21:59+0200\n" "Last-Translator: Bjoern Voigt \n" "Language-Team: Deutsch \n" "MIME-Version: 1.0\n" @@ -951,6 +951,9 @@ msgid "(none)" msgstr "(kein)" +#. XXX: The following expects that finch_notify_message gets called. This +#. * may not always happen, e.g. when another plugin sets its own +#. * notify_message. So tread carefully. msgid "URI" msgstr "URI" @@ -1041,10 +1044,10 @@ msgstr "Alarm, wenn Buddy..." msgid "Signs on" -msgstr "sich anmeldet" +msgstr "sich angemeldet" msgid "Signs off" -msgstr "sich abmeldet" +msgstr "sich abgemeldet" msgid "Goes away" msgstr "hinausgeht" @@ -1461,7 +1464,7 @@ msgstr "%s hat eine Nachricht in %s gesendet" msgid "Buddy signs on/off" -msgstr "Buddy sich an/abmeldet" +msgstr "Buddy hat sich an- oder abgemeldet" msgid "You receive an IM" msgstr "Sie empfangen einen Nachricht" @@ -1526,6 +1529,13 @@ "\n" "Hole TinyURL..." +#, c-format +msgid "TinyURL for above: %s" +msgstr "" + +msgid "Please wait while TinyURL fetches a shorter URL ..." +msgstr "" + msgid "Only create TinyURL for URLs of this length or greater" msgstr "TinyURL nur für URLs mit mindestens dieser Länge generieren" @@ -1884,6 +1894,10 @@ msgid "Resolver process exited without answering our request" msgstr "Auflösungsprozess hat sich beendet ohne die Anfrage zu beantworten" +#, fuzzy, c-format +msgid "Error converting %s to punycode: %d" +msgstr "Fehler beim Auflösen von %s: %d" + #, c-format msgid "Thread creation failure: %s" msgstr "Fehler beim Erzeugen eines Threads: %s" @@ -2898,7 +2912,7 @@ msgstr "Buddy _untätig wird" msgid "Buddy _Signs On/Off" -msgstr "Buddy _sich an/abmeldet" +msgstr "Buddy hat_sich an- oder abgemeldet" #. *< type #. *< ui_requirement @@ -5176,10 +5190,10 @@ "Für MSN wird SSL-Unterstützung benötigt. Bitte installieren Sie eine " "unterstützte SSL-Bibliothek." -#, c-format +#, fuzzy, c-format msgid "" "Unable to add the buddy %s because the username is invalid. Usernames must " -"be a valid email address." +"be valid email addresses." msgstr "" "Konnte den Buddy %s nicht hinzufügen, da der Benutzername ungültig ist. " "Benutzernamen müssen gültige E-Mail-Adressen sein." @@ -9708,6 +9722,15 @@ msgid "Open Inbox" msgstr "Öffne Posteingang" +msgid "Can't send SMS. Unable to obtain mobile carrier." +msgstr "" + +msgid "Can't send SMS. Unknown mobile carrier." +msgstr "" + +msgid "Getting mobile carrier to send the SMS." +msgstr "" + #. Write a local message to this conversation showing that a request for a #. * Doodle session has been made #. @@ -12440,10 +12463,10 @@ msgstr "Budd_y-Name:" msgid "Si_gns on" -msgstr "si_ch anmeldet" +msgstr "si_ch angemeldet" msgid "Signs o_ff" -msgstr "sich abmel_det" +msgstr "sich abgemel_det" msgid "Goes a_way" msgstr "hinausgeh_t" @@ -12509,7 +12532,7 @@ msgstr "Hat beim Tippen angehalten" msgid "Signed on" -msgstr "Hat sich anmeldet" +msgstr "Hat sich angemeldet" msgid "Returned from being idle" msgstr "Ist nicht mehr inaktiv" @@ -12521,7 +12544,7 @@ msgstr "Hat das Tippen gestoppt" msgid "Signed off" -msgstr "Hat sich abmeldet" +msgstr "Hat sich abgemeldet" msgid "Became idle" msgstr "Wurde untätig" @@ -12535,6 +12558,23 @@ msgid "Unknown.... Please report this!" msgstr "Unbekannt.... Bitte berichten Sie dieses Problem!" +msgid "(Custom)" +msgstr "" + +#, fuzzy +msgid "(Default)" +msgstr "(Standard)" + +msgid "The default Pidgin sound theme" +msgstr "" + +#, fuzzy +msgid "The default Pidgin buddy list theme" +msgstr "Pidgin Buddy-Listen-Thema-Editor" + +msgid "The default Pidgin status icon theme" +msgstr "" + msgid "Theme failed to unpack." msgstr "Thema konnte nicht entpackt werden." @@ -14381,9 +14421,6 @@ "\n" "* Hinweis: Dieses Plugin verlangt Win2000 oder höher." -msgid "GTK+ Runtime Version" -msgstr "GTK+ Runtime Version" - #. Autostart msgid "Startup" msgstr "Start" @@ -14392,6 +14429,10 @@ msgid "_Start %s on Windows startup" msgstr "_Starte %s beim Windows-Start" +#, fuzzy +msgid "Allow multiple instances" +msgstr "mehrere Instanzen erlauben" + msgid "_Dockable Buddy List" msgstr "An_dockbare Buddy-Liste" @@ -14451,3 +14492,6 @@ msgid "This plugin is useful for debbuging XMPP servers or clients." msgstr "" "Dieses Plugin ist nützlich zur Fehlersuche in XMPP-Servern oder -Clients." + +#~ msgid "GTK+ Runtime Version" +#~ msgstr "GTK+ Runtime Version" diff -r 43200ff042ad -r 42fc2fc14db2 share/ca-certs/Entrust.net_Secure_Server_CA.pem --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/share/ca-certs/Entrust.net_Secure_Server_CA.pem Tue Oct 06 15:58:05 2009 +0000 @@ -0,0 +1,28 @@ +-----BEGIN CERTIFICATE----- +MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC +VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u +ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc +KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u +ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 +MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE +ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j +b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF +bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg +U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ +I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 +wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC +AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb +oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 +BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p +dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk +MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp +b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu +dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 +MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi +E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa +MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI +hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN +95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd +2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= +-----END CERTIFICATE----- diff -r 43200ff042ad -r 42fc2fc14db2 share/ca-certs/Makefile.am --- a/share/ca-certs/Makefile.am Tue Oct 06 15:56:43 2009 +0000 +++ b/share/ca-certs/Makefile.am Tue Oct 06 15:58:05 2009 +0000 @@ -2,6 +2,7 @@ America_Online_Root_Certification_Authority_1.pem \ CAcert_Root.pem \ CAcert_Class3.pem \ + Entrust.net_Secure_Server_CA.pem \ Equifax_Secure_CA.pem \ Equifax_Secure_Global_eBusiness_CA-1.pem \ GTE_CyberTrust_Global_Root.pem \