/pidgin/main: 6c4d5b524296: Merge
Daniel Atallah <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: 6c4d5b524296264ad20462a89ae02c4db0d965e5 Author: Daniel Atallah <[email protected]> Date: 2014-03-24 20:01 -0400 Branch: release-2.x.y URL: https://hg.pidgin.im/pidgin/main/rev/6c4d5b524296 Description: Merge diffstat: COPYRIGHT | 3 + configure.ac | 11 +- libpurple/protocols/gg/lib/common.c | 205 +- libpurple/protocols/gg/lib/config.h | 2 +- libpurple/protocols/gg/lib/dcc.c | 179 +- libpurple/protocols/gg/lib/dcc7.c | 272 +- libpurple/protocols/gg/lib/debug.c | 2 - libpurple/protocols/gg/lib/deflate.c | 52 +- libpurple/protocols/gg/lib/encoding.c | 16 +- libpurple/protocols/gg/lib/encoding.h | 3 +- libpurple/protocols/gg/lib/endian.c | 11 +- libpurple/protocols/gg/lib/events.c | 248 +- libpurple/protocols/gg/lib/fileio.h | 3 + libpurple/protocols/gg/lib/handlers.c | 528 +- libpurple/protocols/gg/lib/http.c | 76 +- libpurple/protocols/gg/lib/internal.h | 105 +- libpurple/protocols/gg/lib/libgadu.c | 306 +- libpurple/protocols/gg/lib/libgadu.h | 30 +- libpurple/protocols/gg/lib/message.c | 112 +- libpurple/protocols/gg/lib/message.h | 10 +- libpurple/protocols/gg/lib/network.c | 9 +- libpurple/protocols/gg/lib/network.h | 24 + libpurple/protocols/gg/lib/obsolete.c | 12 +- libpurple/protocols/gg/lib/protobuf-c.c | 8 +- libpurple/protocols/gg/lib/protobuf.c | 4 +- libpurple/protocols/gg/lib/protocol.h | 18 +- libpurple/protocols/gg/lib/pubdir.c | 91 +- libpurple/protocols/gg/lib/pubdir50.c | 20 +- libpurple/protocols/gg/lib/resolver.c | 124 +- libpurple/protocols/gg/lib/sha1.c | 20 +- libpurple/protocols/gg/lib/tvbuff.c | 34 +- libpurple/protocols/gg/lib/tvbuilder.c | 14 +- pidgin/gtkdialogs.c | 5 +- po/lv.po | 19813 ++++++++++++++++++++++++++++++ po/tt.po | 19755 +++++++++++++++++++++++++++++ 35 files changed, 41310 insertions(+), 815 deletions(-) diffs (truncated from 46213 to 300 lines): diff --git a/COPYRIGHT b/COPYRIGHT --- a/COPYRIGHT +++ b/COPYRIGHT @@ -336,6 +336,7 @@ John Matthews Simo Mattila Robert Matusewicz Michal Matyska +Rudolfs Mazurs Ryan McCabe Peter McCurdy Kurt McKee @@ -561,6 +562,8 @@ Max Ulidtko Dmitry Utkin Igor Vlasenko István Váradi +ILDAR Valeev +Cédric Valmary Martijn van Beers Gideon van Melle Arjan van de Ven diff --git a/configure.ac b/configure.ac --- a/configure.ac +++ b/configure.ac @@ -304,7 +304,7 @@ if test x$enable_i18n = xyes; then GETTEXT_PACKAGE=pidgin AC_SUBST(GETTEXT_PACKAGE) - ALL_LINGUAS="af am ar ast az be@latin bg bn bn_IN bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ku lt mai mhr mk mn mr my_MM nb ne nl nn oc or pa pl pt_BR pt ps ro ru si sk sl sq sr sr@latin sv sw ta te th tr uk ur vi xh zh_CN zh_HK zh_TW" + ALL_LINGUAS="af am ar ast az be@latin bg bn bn_IN bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ku lt lv mai mhr mk mn mr my_MM nb ne nl nn oc or pa pl pt_BR pt ps ro ru si sk sl sq sr sr@latin sv sw ta te th tr tt uk ur vi xh zh_CN zh_HK zh_TW" AM_GLIB_GNU_GETTEXT dnl If we don't have msgfmt, then po/ is going to fail -- ensure that @@ -1133,6 +1133,9 @@ if test "x$gadu_libs" != "xyes"; then AC_DEFINE_UNQUOTED(GG_CONFIG_GNUTLS_SYSTEM_TRUST_STORE, ["$gg_gnutls_sts"], [use the given file as GnuTLS default trust store]) fi + PKG_CHECK_MODULES([GNUTLS_2_10], [gnutls >= 2.10.0], [ + AC_DEFINE([HAVE_GNUTLS_2_10], [], [Defined if GnuTLS >= 2.10.0 is available.]) + ],:) fi if test "x$gadu_libs" = "x"; then @@ -1327,9 +1330,7 @@ if test "x$GCC" = "xyes"; then orig_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $newflag" AC_MSG_CHECKING(for $newflag option to gcc) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[ - int main() {return 0;} - ]])], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [ AC_MSG_RESULT(yes) CFLAGS="$orig_CFLAGS" DEBUG_CFLAGS="$DEBUG_CFLAGS $newflag" @@ -1342,7 +1343,6 @@ if test "x$GCC" = "xyes"; then if test "x$enable_fortify" = "xyes"; then AC_MSG_CHECKING(for FORTIFY_SOURCE support) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <features.h>]], [[ - int main() { #if !(__GNUC_PREREQ (4, 1) \ || (defined __GNUC_RH_RELEASE__ && __GNUC_PREREQ (4, 0)) \ || (defined __GNUC_RH_RELEASE__ && __GNUC_PREREQ (3, 4) \ @@ -1352,7 +1352,6 @@ if test "x$GCC" = "xyes"; then #error No FORTIFY_SOURCE support #endif return 0; - } ]])], [ AC_MSG_RESULT(yes) DEBUG_CFLAGS="$DEBUG_CFLAGS -Wp,-D_FORTIFY_SOURCE=2" diff --git a/libpurple/protocols/gg/lib/common.c b/libpurple/protocols/gg/lib/common.c --- a/libpurple/protocols/gg/lib/common.c +++ b/libpurple/protocols/gg/lib/common.c @@ -27,9 +27,7 @@ #include "network.h" #include "strman.h" -#ifdef sun -# include <sys/filio.h> -#endif +#include "fileio.h" #include <errno.h> #include <stdarg.h> @@ -209,12 +207,17 @@ char *gg_read_line(int sock, char *buf, for (; length > 1; buf++, length--) { do { - if ((ret = recv(sock, buf, 1, 0)) == -1 && errno != EINTR && errno != EAGAIN) { - gg_debug(GG_DEBUG_MISC, "// gg_read_line() error on read (errno=%d, %s)\n", errno, strerror(errno)); + if ((ret = recv(sock, buf, 1, 0)) == -1 && + errno != EINTR && errno != EAGAIN) + { + gg_debug(GG_DEBUG_MISC, "// gg_read_line() " + "error on read (errno=%d, %s)\n", + errno, strerror(errno)); *buf = 0; return NULL; } else if (ret == 0) { - gg_debug(GG_DEBUG_MISC, "// gg_read_line() eof reached\n"); + gg_debug(GG_DEBUG_MISC, "// gg_read_line() " + "eof reached\n"); *buf = 0; return NULL; } @@ -248,10 +251,12 @@ int gg_connect(void *addr, int port, int struct in_addr *a = addr; struct sockaddr_in myaddr; - gg_debug(GG_DEBUG_FUNCTION, "** gg_connect(%s, %d, %d);\n", inet_ntoa(*a), port, async); + gg_debug(GG_DEBUG_FUNCTION, "** gg_connect(%s, %d, %d);\n", + inet_ntoa(*a), port, async); if ((sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) == -1) { - gg_debug(GG_DEBUG_MISC, "// gg_connect() socket() failed (errno=%d, %s)\n", errno, strerror(errno)); + gg_debug(GG_DEBUG_MISC, "// gg_connect() socket() failed " + "(errno=%d, %s)\n", errno, strerror(errno)); return -1; } @@ -261,7 +266,8 @@ int gg_connect(void *addr, int port, int myaddr.sin_addr.s_addr = gg_local_ip; if (bind(sock, (struct sockaddr *) &myaddr, sizeof(myaddr)) == -1) { - gg_debug(GG_DEBUG_MISC, "// gg_connect() bind() failed (errno=%d, %s)\n", errno, strerror(errno)); + gg_debug(GG_DEBUG_MISC, "// gg_connect() bind() failed " + "(errno=%d, %s)\n", errno, strerror(errno)); errno2 = errno; close(sock); errno = errno2; @@ -269,14 +275,10 @@ int gg_connect(void *addr, int port, int } if (async) { -#ifdef FIONBIO - int one = 1; - - if (ioctl(sock, FIONBIO, &one) == -1) { -#else - if (fcntl(sock, F_SETFL, O_NONBLOCK) == -1) { -#endif - gg_debug(GG_DEBUG_MISC, "// gg_connect() can't set nonblocking (errno=%d, %s)\n", errno, strerror(errno)); + if (!gg_fd_set_nonblocking(sock)) { + gg_debug(GG_DEBUG_MISC, "// gg_connect() can't set " + "nonblocking (errno=%d, %s)\n", + errno, strerror(errno)); errno2 = errno; close(sock); errno = errno2; @@ -291,13 +293,16 @@ int gg_connect(void *addr, int port, int if (connect(sock, (struct sockaddr*) &sin, sizeof(sin)) == -1) { if (errno && (!async || errno != EINPROGRESS)) { - gg_debug(GG_DEBUG_MISC, "// gg_connect() connect() failed (errno=%d, %s)\n", errno, strerror(errno)); + gg_debug(GG_DEBUG_MISC, "// gg_connect() connect() " + "failed (errno=%d, %s)\n", + errno, strerror(errno)); errno2 = errno; close(sock); errno = errno2; return -1; } - gg_debug(GG_DEBUG_MISC, "// gg_connect() connect() in progress\n"); + gg_debug(GG_DEBUG_MISC, + "// gg_connect() connect() in progress\n"); } return sock; @@ -333,7 +338,7 @@ void gg_chomp(char *line) * Zamienia znaki niedrukowalne, spoza ASCII i majÄ ce specjalne znaczenie * dla protokoÅu HTTP na encje postaci \c %XX, gdzie \c XX jest szesnastkowÄ * wartoÅciÄ znaku. - * + * * \param str CiÄ g znaków do zakodowania * * \return Zaalokowany bufor lub \c NULL w przypadku bÅÄdu. @@ -351,17 +356,24 @@ char *gg_urlencode(const char *str) str = ""; for (p = str; *p; p++, size++) { - if (!((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z') || (*p >= '0' && *p <= '9') || *p == ' ') || (*p == '@') || (*p == '.') || (*p == '-')) + if (!((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z') || + (*p >= '0' && *p <= '9') || *p == ' ') || (*p == '@') || + (*p == '.') || (*p == '-')) + { size += 2; + } } if (!(buf = malloc(size + 1))) return NULL; for (p = str, q = buf; *p; p++, q++) { - if ((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z') || (*p >= '0' && *p <= '9') || (*p == '@') || (*p == '.') || (*p == '-')) + if ((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z') || + (*p >= '0' && *p <= '9') || (*p == '@') || + (*p == '.') || (*p == '-')) + { *q = *p; - else { + } else { if (*p == ' ') *q = '+'; else { @@ -565,19 +577,23 @@ char *gg_proxy_auth(void) if (!gg_proxy_enabled || !gg_proxy_username || !gg_proxy_password) return NULL; - if (!(tmp = malloc((tmp_size = strlen(gg_proxy_username) + strlen(gg_proxy_password) + 2)))) + tmp_size = strlen(gg_proxy_username) + strlen(gg_proxy_password) + 2; + tmp = malloc(tmp_size); + if (!tmp) return NULL; snprintf(tmp, tmp_size, "%s:%s", gg_proxy_username, gg_proxy_password); - if (!(enc = gg_base64_encode(tmp))) { + enc = gg_base64_encode(tmp); + if (!enc) { free(tmp); return NULL; } free(tmp); - if (!(out = malloc(strlen(enc) + 40))) { + out = malloc(strlen(enc) + 40); + if (!out) { free(enc); return NULL; } @@ -594,69 +610,69 @@ char *gg_proxy_auth(void) */ static const uint32_t gg_crc32_table[256] = { - 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, - 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, - 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, - 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, - 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, - 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, - 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, - 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, - 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, - 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, - 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, - 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, - 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, - 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, - 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, - 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, - 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, - 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, - 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, - 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, - 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, - 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, - 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, - 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, - 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, - 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, - 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, - 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, - 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, - 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, - 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, - 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, - 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, - 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, - 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, - 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, - 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, - 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, - 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, - 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, - 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, - 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, - 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, - 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, - 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, - 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, - 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, - 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, - 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, - 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, - 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, - 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, - 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, - 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, - 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, - 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, - 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, - 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, - 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, - 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, - 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, - 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, - 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, + 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, + 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,