# HG changeset patch # User Yoshiki Yazawa # Date 1206261780 0 # Node ID aceb6c9734a4001989f71e991a9a47b76504a765 # Parent 07915e7a4c08bc3c336cad150ba6e6fcd48cfca4# Parent 06f195789c3ef430163d795e58f947f609dc4f7d propagate from branch 'im.pidgin.pidgin' (head 86f8b3e5d789c691f873f515a92fe8e111dcab6e) to branch 'im.pidgin.pidgin.yaz' (head 04ef66f5e5ca7d5f39fa3f38bf9cd5bcb2745833) diff -r 07915e7a4c08 -r aceb6c9734a4 COPYRIGHT --- a/COPYRIGHT Thu Mar 20 11:57:02 2008 +0000 +++ b/COPYRIGHT Sun Mar 23 08:43:00 2008 +0000 @@ -325,6 +325,7 @@ Jason Roth Jean-Francois Roy Peter Ruibal +Michael Ruprecht Sam S. Thanumalayan S. Tomasz Sałaciński diff -r 07915e7a4c08 -r aceb6c9734a4 ChangeLog --- a/ChangeLog Thu Mar 20 11:57:02 2008 +0000 +++ b/ChangeLog Sun Mar 23 08:43:00 2008 +0000 @@ -17,6 +17,7 @@ * Increase XMPP ping timeout to 120 seconds, to prevent poor network connections from timing out unnecessarily. * Don't crash on XMPP forms with empty default values. + * Fix issues with CHAP authentication for SOCKS5 proxies. Pidgin: * Remove a workaround for older versions gstreamer that was causing diff -r 07915e7a4c08 -r aceb6c9734a4 configure.ac --- a/configure.ac Thu Mar 20 11:57:02 2008 +0000 +++ b/configure.ac Sun Mar 23 08:43:00 2008 +0000 @@ -166,7 +166,7 @@ dnl Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS_ONCE(arpa/nameser_compat.h fcntl.h sys/time.h unistd.h locale.h signal.h stdint.h regex.h) +AC_CHECK_HEADERS(arpa/nameser_compat.h fcntl.h sys/time.h unistd.h locale.h signal.h stdint.h regex.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -1052,7 +1052,7 @@ AC_ARG_WITH(zephyr, [AC_HELP_STRING([--with-zephyr=PREFIX], [compile Zephyr plugin against external libzephyr])], zephyr="$withval", zephyr="no") AM_CONDITIONAL(EXTERNAL_LIBZEPHYR, test "x$zephyr" != "xno") -AC_CHECK_HEADERS_ONCE(sys/utsname.h) +AC_CHECK_HEADERS(sys/utsname.h) AC_CHECK_FUNC(uname) AC_ARG_ENABLE(fortify, [AC_HELP_STRING([--disable-fortify], [compile without FORTIFY_SOURCE support])], , enable_fortify=yes) @@ -2102,13 +2102,13 @@ AC_MSG_RESULT(no) AC_CHECK_FUNCS(gethostid lrand48) AC_CHECK_FUNCS(memcpy memmove random strchr strerror vprintf) -AC_CHECK_HEADERS_ONCE(malloc.h paths.h sgtty.h stdarg.h sys/cdefs.h) -AC_CHECK_HEADERS_ONCE(sys/file.h sys/filio.h sys/ioctl.h sys/msgbuf.h) -AC_CHECK_HEADERS_ONCE(sys/select.h sys/uio.h sys/utsname.h sys/wait.h) -AC_CHECK_HEADERS_ONCE(termios.h) +AC_CHECK_HEADERS(malloc.h paths.h sgtty.h stdarg.h sys/cdefs.h) +AC_CHECK_HEADERS(sys/file.h sys/filio.h sys/ioctl.h sys/msgbuf.h) +AC_CHECK_HEADERS(sys/select.h sys/uio.h sys/utsname.h sys/wait.h) +AC_CHECK_HEADERS(termios.h) # sys/sysctl.h on OpenBSD 4.2 requires sys/param.h -AC_CHECK_HEADERS_ONCE(sys/param.h) +AC_CHECK_HEADERS(sys/param.h) AC_CHECK_HEADERS(sys/sysctl.h, [], [], [[ #ifdef HAVE_PARAM_H @@ -2116,7 +2116,7 @@ #endif ]]) -AC_CHECK_HEADERS_ONCE(sys/socket.h) +AC_CHECK_HEADERS(sys/socket.h) AC_VAR_TIMEZONE_EXTERNALS AC_CACHE_CHECK(for tm_gmtoff in struct tm, ac_cv_struct_tm_gmtoff, diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/nat-pmp.c --- a/libpurple/nat-pmp.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/nat-pmp.c Sun Mar 23 08:43:00 2008 +0000 @@ -182,7 +182,7 @@ if (!(buf = malloc(needed))) { - purple_debug_warning("nat-pmp", "malloc\n"); + purple_debug_warning("nat-pmp", "Failed to malloc %i\n", needed); return NULL; } @@ -232,7 +232,7 @@ sin->sin_addr.s_addr = rti_sin->sin_addr.s_addr; memcpy(sin, rti_info[RTAX_GATEWAY], sizeof(struct sockaddr_in)); - purple_debug_info("nat-pmp", "found a default gateway\n"); + purple_debug_info("nat-pmp", "Found a default gateway\n"); found = TRUE; break; } @@ -455,7 +455,8 @@ { success = (resp->opcode == (req.opcode + 128)); if (!success) - purple_debug_info("nat-pmp", "The opcode for the response from the NAT device does not match the request opcode!\n"); + purple_debug_info("nat-pmp", "The opcode for the response from the NAT device (%i) does not match the request opcode (%i + 128 = %i)!\n", + resp->opcode, req.opcode, req.opcode + 128); } #ifdef PMP_DEBUG @@ -492,7 +493,8 @@ success = purple_pmp_create_map(((type == PURPLE_PMP_TYPE_UDP) ? PMP_MAP_OPCODE_UDP : PMP_MAP_OPCODE_TCP), privateport, 0, 0); if (!success) - purple_debug_warning("nat-pmp", "Failed to properly destroy mapping for %d!\n", privateport); + purple_debug_warning("nat-pmp", "Failed to properly destroy mapping for %s port %d!\n", + ((type == PURPLE_PMP_TYPE_UDP) ? "UDP" : "TCP"), privateport); return success; } diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/command.c --- a/libpurple/protocols/msn/command.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/command.c Sun Mar 23 08:43:00 2008 +0000 @@ -58,6 +58,7 @@ (!strcmp(str,"FQY")) || (!strcmp(str,"UUN")) || (!strcmp(str,"UUX")) || + (!strcmp(str,"IPG")) || (is_num(str))){ return TRUE; } diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/msn.c --- a/libpurple/protocols/msn/msn.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/msn.c Sun Mar 23 08:43:00 2008 +0000 @@ -243,7 +243,9 @@ MsnSession *session; MsnCmdProc *cmdproc; MsnPage *page; - char *payload; + MsnUser *user; + char *payload = NULL; + const char *mobile_number = NULL; size_t payload_len; session = gc->proto_data; @@ -254,7 +256,19 @@ payload = msn_page_gen_payload(page, &payload_len); - trans = msn_transaction_new(cmdproc, "PGD", "%s 1 %d", who, payload_len); + if ((user = msn_userlist_find_user(session->userlist, who)) && + (mobile_number = msn_user_get_mobile_phone(user)) && + mobile_number[0] == '+') { + /* if msn_user_get_mobile_phone() has a + in front, it's a number + that from the buddy's contact card */ + trans = msn_transaction_new(cmdproc, "PGD", "tel:%s 1 %d", + mobile_number, payload_len); + } else { + /* otherwise we send to whatever phone number the buddy registered + with msn */ + trans = msn_transaction_new(cmdproc, "PGD", "%s 1 %d", who, + payload_len); + } msn_transaction_set_payload(trans, payload, payload_len); g_free(payload); diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/notification.c --- a/libpurple/protocols/msn/notification.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/notification.c Sun Mar 23 08:43:00 2008 +0000 @@ -461,7 +461,7 @@ passport = msg->remote_user; content_type = msn_message_get_content_type(msg); - purple_debug_info("MSNP14","type:%d\n",content_type); + purple_debug_info("MSNP14", "type:%s\n", content_type); if(!strcmp(content_type,"text/plain")){ const char *value; const char *body; @@ -1071,9 +1071,61 @@ static void ipg_cmd_post(MsnCmdProc *cmdproc, MsnCommand *cmd, char *payload, size_t len) { -#if 0 + PurpleConnection *gc; + MsnUserList *userlist; + char *who = NULL, *text = NULL; + xmlnode *payloadNode, *from, *textNode; + purple_debug_misc("msn", "Incoming Page: {%s}\n", payload); -#endif + + userlist = cmdproc->session->userlist; + gc = purple_account_get_connection(cmdproc->session->account); + + /* payload looks like this: + + + + + + + + + + + + Message was here + + + + */ + + if (!(payloadNode = xmlnode_from_str(payload, len)) || + !(from = xmlnode_get_child(payloadNode, "FROM")) || + !(textNode = xmlnode_get_child(payloadNode, "MSG/BODY/TEXT"))) + return; + + who = g_strdup(xmlnode_get_attrib(from, "name")); + if (!who) return; + + text = xmlnode_get_data(textNode); + + /* Match number to user's mobile number, FROM is a phone number if the + other side page you using your phone number */ + if(!strncmp(who, "tel:+", 5)) { + MsnUser *user = + msn_userlist_find_user_with_mobile_phone(userlist, who + 4); + + if(user && user->passport) { + g_free(who); + who = g_strdup(user->passport); + } + } + + serv_got_im(gc, who, text, 0, time(NULL)); + + g_free(text); + g_free(who); + xmlnode_free(payloadNode); } static void diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/switchboard.c --- a/libpurple/protocols/msn/switchboard.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/switchboard.c Sun Mar 23 08:43:00 2008 +0000 @@ -1198,9 +1198,10 @@ swboard = trans->data; - purple_debug_info("msn", "xfr_error %i for %s: trans %x, command %s, reason %i\n", - error, (swboard->im_user ? swboard->im_user : "(null)"), trans, - (trans->command ? trans->command : "(null)"), reason); + purple_debug_info("msn", + "xfr_error %i for %s: trans %p, command %s, reason %i\n", + error, (swboard->im_user ? swboard->im_user : "(null)"), trans, + (trans->command ? trans->command : "(null)"), reason); swboard_error_helper(swboard, reason, swboard->im_user); } diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/transaction.h --- a/libpurple/protocols/msn/transaction.h Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/transaction.h Sun Mar 23 08:43:00 2008 +0000 @@ -61,9 +61,8 @@ this transaction. */ }; -MsnTransaction *msn_transaction_new(MsnCmdProc *cmdproc, - const char *command, - const char *format, ...); +MsnTransaction *msn_transaction_new(MsnCmdProc *cmdproc, const char *command, + const char *format, ...) G_GNUC_PRINTF(3, 4); void msn_transaction_destroy(MsnTransaction *trans); char *msn_transaction_to_string(MsnTransaction *trans); diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/userlist.c --- a/libpurple/protocols/msn/userlist.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/userlist.c Sun Mar 23 08:43:00 2008 +0000 @@ -500,11 +500,10 @@ { GList *l; - g_return_val_if_fail(uid != NULL, NULL); + g_return_val_if_fail(uid != NULL, NULL); - for (l = userlist->users; l != NULL; l = l->next) - { - MsnUser *user = (MsnUser *)l->data; + for (l = userlist->users; l != NULL; l = l->next) { + MsnUser *user = (MsnUser *)l->data; if (user->uid == NULL) { continue; @@ -518,6 +517,28 @@ return NULL; } +MsnUser * +msn_userlist_find_user_with_mobile_phone(MsnUserList *userlist, const char *number) +{ + GList *l; + + g_return_val_if_fail(number != NULL, NULL); + + for (l = userlist->users; l != NULL; l = l->next) { + MsnUser *user = (MsnUser *)l->data; + + if (user->phone.mobile == NULL) { + continue; + } + + if (!g_strcasecmp(number, user->phone.mobile)) { + return user; + } + } + + return NULL; +} + void msn_userlist_add_group(MsnUserList *userlist, MsnGroup *group) { diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/protocols/msn/userlist.h --- a/libpurple/protocols/msn/userlist.h Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/protocols/msn/userlist.h Sun Mar 23 08:43:00 2008 +0000 @@ -80,6 +80,7 @@ MsnUser * msn_userlist_find_add_user(MsnUserList *userlist, const char *passport, const char *userName); MsnUser * msn_userlist_find_user_with_id(MsnUserList *userlist, const char *uid); +MsnUser * msn_userlist_find_user_with_mobile_phone(MsnUserList *userlist, const char *number); void msn_userlist_add_group(MsnUserList *userlist, MsnGroup *group); void msn_userlist_remove_group(MsnUserList *userlist, MsnGroup *group); diff -r 07915e7a4c08 -r aceb6c9734a4 libpurple/proxy.c --- a/libpurple/proxy.c Thu Mar 20 11:57:02 2008 +0000 +++ b/libpurple/proxy.c Sun Mar 23 08:43:00 2008 +0000 @@ -1356,11 +1356,17 @@ purple_debug(PURPLE_DEBUG_INFO, "socks5 proxy", "Got CHAP response.\n"); if (connect_data->read_buffer == NULL) { - connect_data->read_buf_len = 20; + /* A big enough butfer to read the message header (2 bytes) and at least one complete attribute and value (1 + 1 + 255). */ + connect_data->read_buf_len = 259; connect_data->read_buffer = g_malloc(connect_data->read_buf_len); connect_data->read_len = 0; } + if (connect_data->read_buf_len - connect_data->read_len == 0) { + /*If the stuff below is right, this shouldn't be possible. */ + purple_debug_error("socks5 proxy", "This is about to suck because the read buffer is full (shouldn't happen).\n"); + } + len = read(connect_data->fd, connect_data->read_buffer + connect_data->read_len, connect_data->read_buf_len - connect_data->read_len); @@ -1400,13 +1406,31 @@ cmdbuf++; for (currentav = 0; currentav < navas; currentav++) { - if (connect_data->read_len - (cmdbuf - connect_data->read_buffer) < 2) + + len = connect_data->read_len - (cmdbuf - connect_data->read_buffer); + /* We don't have enough data to even know how long the next attribute is, + * or we don't have the full length of the next attribute. */ + if (len < 2 || len < (cmdbuf[1] + 2)) { + /* Clear out the attributes that have been read - decrease the attribute count */ + connect_data->read_buffer[1] = navas - currentav; + /* Move the unprocessed data into the first attribute position */ + memmove((connect_data->read_buffer + 2), cmdbuf, len); + /* Decrease the read count accordingly */ + connect_data->read_len = len + 2; return; - if (connect_data->read_len - (cmdbuf - connect_data->read_buffer) < cmdbuf[1]) - return; + } + buf = cmdbuf + 2; + + if (cmdbuf[1] == 0) { + purple_debug_error("socks5 proxy", "Attribute %x Value length of 0; ignoring.\n", cmdbuf[0]); + cmdbuf = buf; + continue; + } + switch (cmdbuf[0]) { case 0x00: + purple_debug_info("socks5 proxy", "Received STATUS of %x\n", buf[0]); /* Did auth work? */ if (buf[0] == 0x00) { purple_input_remove(connect_data->inpa); @@ -1415,7 +1439,6 @@ connect_data->read_buffer = NULL; /* Success */ s5_sendconnect(connect_data, connect_data->fd); - return; } else { /* Failure */ purple_debug_warning("proxy", @@ -1423,10 +1446,10 @@ "failed. Disconnecting..."); purple_proxy_connect_data_disconnect(connect_data, _("Authentication failed")); - return; } - break; + return; case 0x03: + purple_debug_info("socks5 proxy", "Received CHALLENGE\n"); /* Server wants our credentials */ connect_data->write_buf_len = 16 + 4; @@ -1451,8 +1474,9 @@ PURPLE_INPUT_WRITE, proxy_do_write, connect_data); proxy_do_write(connect_data, connect_data->fd, PURPLE_INPUT_WRITE); - break; + return; case 0x11: + purple_debug_info("socks5 proxy", "Received ALGORIGTHMS of %x\n", buf[0]); /* Server wants to select an algorithm */ if (buf[0] != 0x85) { /* Only currently support HMAC-MD5 */ @@ -1467,12 +1491,19 @@ return; } break; + default: + purple_debug_info("socks5 proxy", "Received unused command %x, length=%d\n", cmdbuf[0], cmdbuf[1]); } cmdbuf = buf + cmdbuf[1]; } + /* Fell through. We ran out of CHAP events to process, but haven't * succeeded or failed authentication - there may be more to come. * If this is the case, come straight back here. */ + + /* We've processed all the available attributes, so get ready for a whole new message */ + g_free(connect_data->read_buffer); + connect_data->read_buffer = NULL; } static void diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/16/jabber.png Binary file pidgin/pixmaps/protocols/16/jabber.png has changed diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/16/scalable/jabber.svg --- a/pidgin/pixmaps/protocols/16/scalable/jabber.svg Thu Mar 20 11:57:02 2008 +0000 +++ b/pidgin/pixmaps/protocols/16/scalable/jabber.svg Sun Mar 23 08:43:00 2008 +0000 @@ -9,127 +9,293 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="16px" - height="16px" - id="svg4239" + width="16" + height="16" + id="svg3302" sodipodi:version="0.32" - inkscape:version="0.44.1" - sodipodi:docbase="/home/hbons/GUI/Tango/Gaim Refresh/protocols/16/scalable" - sodipodi:docname="jabber.svg" - inkscape:export-filename="/home/hbons/GUI/Tango/Gaim Refresh/protocols/16/jabber.png" + inkscape:version="0.45.1" + sodipodi:docbase="/home/hbons/Desktop" + sodipodi:docname="xmpp16.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + inkscape:export-filename="/home/hbons/Desktop/xmpp16.png" inkscape:export-xdpi="90" - inkscape:export-ydpi="90"> + inkscape:export-ydpi="90" + version="1.0"> + id="defs3304"> + style="stop-color:#d9541e;stop-opacity:1" /> + + + + + style="stop-color:#0f97cb;stop-opacity:1" /> + + + + - + inkscape:collect="always" + id="linearGradient3417"> + + + + inkscape:collect="always" + id="linearGradient3409"> + id="stop3411" /> + id="stop3413" /> + inkscape:collect="always" + id="linearGradient3354"> + id="stop3356" /> + id="stop3358" /> + inkscape:collect="always" + id="linearGradient3344"> + id="stop3346" /> + id="stop3348" /> + + + + + + + + + gradientTransform="matrix(0.3406067,0,0,0.3395702,-1.7782608e-2,-0.3494314)" /> + + + + + + + - + + + - + + + + gradientTransform="matrix(-0.3406067,0,0,0.3698986,13.017783,-0.6058341)" + x1="18.734463" + y1="21.519651" + x2="15.642859" + y2="23.876795" /> + + inkscape:window-y="43" + width="16px" + height="16px" /> + id="metadata3307"> @@ -166,26 +333,64 @@ inkscape:label="Layer 1" inkscape:groupmode="layer"> + style="fill:#0a6fa2;fill-opacity:1;stroke:#02396a;stroke-width:1.00000012;stroke-miterlimit:4;stroke-opacity:1" + d="M 15.5,2.5000001 L 10.454106,2.5327029 C 10.454106,4.6682012 8.4691474,12.778185 3.1541859,14.341671 C 9.641668,14.341671 15.5,7.1171759 15.5,2.5000001 z " + id="path2228" + sodipodi:nodetypes="cccc" /> + + + + + style="opacity:0.4;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1" + d="M 14.328472,3.5879657 C 13.402352,7.5116178 11.050991,9.896006 7.9932059,11.841578 C 9.4009194,9.3771388 10.613796,8.3204791 10.426187,3.617359 L 14.328472,3.5879657 z " + id="path3390" + sodipodi:nodetypes="cccc" /> + + + style="fill:#a0ce67;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1" + d="M 3.7118046,3.055775 L 6.0094407,3.1813771 C 5.9820727,4.0797021 5.9514165,10.838935 12,13.996284 C 5.4281278,13.125156 3.6296973,5.1178307 3.7118046,3.055775 z " + id="rect3326" + sodipodi:nodetypes="cccc" /> + style="opacity:0.4;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1.00000012;stroke-miterlimit:4;stroke-opacity:1" + d="M 1.6738483,3.5879662 C 2.5999681,7.5116186 4.9513289,9.8960072 8.0091145,11.841579 C 6.6014005,9.3771399 5.3885239,8.3204801 5.5761331,3.6173594 L 1.6738483,3.5879662 z " + id="path2240" + sodipodi:nodetypes="cccc" /> + diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/22/jabber.png Binary file pidgin/pixmaps/protocols/22/jabber.png has changed diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/22/scalable/jabber.svg --- a/pidgin/pixmaps/protocols/22/scalable/jabber.svg Thu Mar 20 11:57:02 2008 +0000 +++ b/pidgin/pixmaps/protocols/22/scalable/jabber.svg Sun Mar 23 08:43:00 2008 +0000 @@ -2,49 +2,194 @@ + inkscape:export-ydpi="90" + version="1.0"> + id="defs3304"> + + + + + + + + + + + + + + + + + + + + + + id="linearGradient3334"> + id="stop3336" /> + id="stop3338" /> - + + + + + xlink:href="#linearGradient3417" + id="linearGradient3423" + x1="31.736355" + y1="20.841261" + x2="35.292381" + y2="22.255474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.4696897,0,0,0.4693264,1.1291183,0.5593256)" /> + + + + + + + inkscape:grid-bbox="true" + inkscape:document-units="px" + inkscape:window-width="1434" + inkscape:window-height="823" + inkscape:window-x="3" + inkscape:window-y="43" + inkscape:snap-bbox="true" + inkscape:snap-nodes="false" + objecttolerance="9" + gridtolerance="12"> + + + id="metadata3307"> @@ -77,28 +231,88 @@ - - + inkscape:groupmode="layer"> + style="opacity:0.29670332;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter3871)" + id="path3425" + sodipodi:cx="22.273863" + sodipodi:cy="36.736797" + sodipodi:rx="13.283506" + sodipodi:ry="6.2124381" + d="M 35.557369,36.736797 A 13.283506,6.2124381 0 1 1 8.9903564,36.736797 A 13.283506,6.2124381 0 1 1 35.557369,36.736797 z" + transform="matrix(0.5199608,0,0,0.1850564,0.5826339,12.558808)" /> + + + + + + + + + + + + + + diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/48/jabber.png Binary file pidgin/pixmaps/protocols/48/jabber.png has changed diff -r 07915e7a4c08 -r aceb6c9734a4 pidgin/pixmaps/protocols/48/scalable/jabber.svg --- a/pidgin/pixmaps/protocols/48/scalable/jabber.svg Thu Mar 20 11:57:02 2008 +0000 +++ b/pidgin/pixmaps/protocols/48/scalable/jabber.svg Sun Mar 23 08:43:00 2008 +0000 @@ -7,44 +7,159 @@ xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/s odipodi-0.dtd" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="48" - height="48" - id="svg2" + width="48px" + height="48px" + id="svg3302" sodipodi:version="0.32" - inkscape:version="0.43" - version="1.0" - sodipodi:docbase="/home/hbons/Desktop/Gaim Refresh/protocols/48" - sodipodi:docname="jabber.svg" - inkscape:export-filename="/home/hbons/Desktop/Gaim Refresh/protocols/48/jabber.png" + inkscape:version="0.45.1" + sodipodi:docbase="/home/hbons/Desktop" + sodipodi:docname="xmpp.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + inkscape:export-filename="/home/hbons/Desktop/xmpp.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> + id="defs3304"> + + + + + + + + + + + + + + + + + + + + + id="linearGradient3334"> + id="stop3336" /> + id="stop3338" /> - + + + + + + + + + inkscape:grid-bbox="true" + inkscape:document-units="px" + inkscape:window-width="1434" + inkscape:window-height="823" + inkscape:window-x="3" + inkscape:window-y="43" /> + id="metadata3307"> @@ -77,27 +191,98 @@ - - + inkscape:groupmode="layer"> + style="opacity:0.2967033;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter3871)" + id="path3425" + sodipodi:cx="22.273863" + sodipodi:cy="36.736797" + sodipodi:rx="13.283506" + sodipodi:ry="6.2124381" + d="M 35.557369 36.736797 A 13.283506 6.2124381 0 1 1 8.9903564,36.736797 A 13.283506 6.2124381 0 1 1 35.557369 36.736797 z" + transform="matrix(1.0990312,0,0,0.3942904,-0.4161261,25.323157)" /> + + + + + + + + + + + + + + diff -r 07915e7a4c08 -r aceb6c9734a4 po/de.po --- a/po/de.po Thu Mar 20 11:57:02 2008 +0000 +++ b/po/de.po Sun Mar 23 08:43:00 2008 +0000 @@ -11,8 +11,8 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-03-15 09:48+0100\n" -"PO-Revision-Date: 2008-03-15 09:48+0100\n" +"POT-Creation-Date: 2008-03-21 21:24+0100\n" +"PO-Revision-Date: 2008-03-21 21:23+0100\n" "Last-Translator: Jochen Kemnade \n" "Language-Team: Deutsch \n" "MIME-Version: 1.0\n" @@ -4440,6 +4440,9 @@ msgid "Allow plaintext auth over unencrypted streams" msgstr "Erlaube Klartext-Authentifikation über einen unverschlüsselten Kanal" +msgid "Use GSSAPI (Kerberos v5) for authentication" +msgstr "GSSAPI (Kerberos v5) für Authentifizierung benutzen" + msgid "Connect port" msgstr "Verbindungsport" @@ -9988,9 +9991,6 @@ "auseinandernehmen, wenn Sie auf 'Expandieren' im Kontextmenü des Kontakts " "klicken" -msgid "_Merge" -msgstr "_Zusammenführen" - msgid "Room _List" msgstr "Ra_umliste" @@ -10344,26 +10344,17 @@ msgid "/Buddies/Show/Protocol Icons" msgstr "/Buddys/Anzeigen/Protokoll-Icons" -msgid "" -"Please enter the screen name of the person you would like to add to your " -"buddy list. You may optionally enter an alias, or nickname, for the buddy. " -"The alias will be displayed in place of the screen name whenever possible.\n" -msgstr "" -"Bitte geben Sie den Benutzernamen der Person ein, die Sie zur Buddy-Liste " -"hinzufügen möchten. Sie können optional einen Alias oder Spitzname für den " -"Buddy eingeben. Der Alias wird anstelle des Benutzernamens ausgegeben, wann " -"immer es möglich ist.\n" - -#. Set up stuff for the account box -msgid "A_ccount:" -msgstr "_Konto:" - -#. End of account box -msgid "_Screen name:" -msgstr "_Benutzername:" - -msgid "A_lias:" -msgstr "A_lias:" +msgid "Add a buddy.\n" +msgstr "Einen Buddy hinzufügen.\n" + +msgid "Buddy's _screen name:" +msgstr "_Benutzername des Buddys:" + +msgid "(Optional) A_lias:" +msgstr "(Optionaler) A_lias:" + +msgid "Add buddy to _group:" +msgstr "Buddy zu folgender Gruppe hinzufügen:" msgid "This protocol does not support chat rooms." msgstr "Dieses Protokoll unterstützt keine Chaträume." @@ -10380,6 +10371,9 @@ "Bitte geben Sie einen Alias und geeignete Informationen über den Chat ein, " "den Sie in Ihre Buddy-Liste aufnehmen wollen.\n" +msgid "A_lias:" +msgstr "A_lias:" + msgid "Auto_join when account becomes online." msgstr "Automatisch _beitreten, wenn das Konto online geht."