Date: Sat, 3 Apr 2004 00:47:03 -0500 (EST) From: Brian Fundakowski Feldman <green@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/65110: ports/net/gaim update to gaim-0.76 Message-ID: <200404030547.i335l31Q066033@green.homeunix.org> Resent-Message-ID: <200404030550.i335oJN4018712@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 65110 >Category: ports >Synopsis: ports/net/gaim update to gaim-0.76 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Fri Apr 02 21:50:19 PST 2004 >Closed-Date: >Last-Modified: >Originator: Brian Fundakowski Feldman >Release: FreeBSD 5.2-CURRENT i386 >Organization: FreeBSD >Environment: System: FreeBSD green.homeunix.org 5.2-CURRENT FreeBSD 5.2-CURRENT #60: Thu Mar 18 13:26:39 EST 2004 green@green.homeunix.org:/usr/src/sys/i386/compile/GREEN i386 >Description: Update includes a fix to src/util.c which would seemingly unbreak what appears to be a broken security fix. A few patches have been merged, so the patch files have been deleted. >How-To-Repeat: >Fix: cvs diff: Diffing . Index: Makefile =================================================================== RCS file: /usr2/ncvs/ports/net/gaim/Makefile,v retrieving revision 1.139 diff -u -r1.139 Makefile --- Makefile 27 Feb 2004 20:22:37 -0000 1.139 +++ Makefile 3 Apr 2004 02:33:01 -0000 @@ -5,8 +5,7 @@ # PORTNAME= gaim -PORTVERSION= 0.75 -PORTREVISION= 7 +PORTVERSION= 0.76 CATEGORIES?= net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ${PORTNAME} Index: distinfo =================================================================== RCS file: /usr2/ncvs/ports/net/gaim/distinfo,v retrieving revision 1.81 diff -u -r1.81 distinfo --- distinfo 11 Jan 2004 18:47:29 -0000 1.81 +++ distinfo 3 Apr 2004 02:34:46 -0000 @@ -1 +1,2 @@ -MD5 (gaim-0.75.tar.bz2) = 9935155985c25dfc9b59183de0da3c30 +MD5 (gaim-0.76.tar.bz2) = 832126135930b4a13537d1270088c2dc +SIZE (gaim-0.76.tar.bz2) = 3543882 Index: pkg-plist =================================================================== RCS file: /usr2/ncvs/ports/net/gaim/pkg-plist,v retrieving revision 1.59 diff -u -r1.59 pkg-plist --- pkg-plist 10 Jan 2004 19:19:00 -0000 1.59 +++ pkg-plist 3 Apr 2004 05:37:26 -0000 @@ -55,6 +55,7 @@ share/gnome/pixmaps/gaim/dialogs/gaim_warning.png share/gnome/pixmaps/gaim/icons/away.png share/gnome/pixmaps/gaim/icons/connect.png +share/gnome/pixmaps/gaim/icons/info.png share/gnome/pixmaps/gaim/icons/msgpend.png share/gnome/pixmaps/gaim/icons/msgunread.png share/gnome/pixmaps/gaim/icons/offline.png @@ -255,6 +256,7 @@ share/gnome/pixmaps/gaim/status/default/trepia.png share/gnome/pixmaps/gaim/status/default/wireless.png share/gnome/pixmaps/gaim/status/default/yahoo.png +share/gnome/pixmaps/gaim/status/default/zephyr.png share/gnome/pixmaps/gaim/tb_drag_arrow_down.xpm share/gnome/pixmaps/gaim/tb_drag_arrow_left.xpm share/gnome/pixmaps/gaim/tb_drag_arrow_right.xpm cvs diff: Diffing files Index: files/patch-src::gtkconv.c =================================================================== RCS file: /usr2/ncvs/ports/net/gaim/files/patch-src::gtkconv.c,v retrieving revision 1.1 diff -u -r1.1 patch-src::gtkconv.c --- files/patch-src::gtkconv.c 26 Aug 2003 01:44:47 -0000 1.1 +++ files/patch-src::gtkconv.c 3 Apr 2004 05:30:31 -0000 @@ -1,16 +1,18 @@ ---- src/gtkconv.c.orig Thu Aug 14 07:40:41 2003 -+++ src/gtkconv.c Mon Aug 25 16:34:55 2003 -@@ -1138,11 +1138,27 @@ - GaimConversation *conv; - GaimGtkConversation *gtkconv; +--- src/gtkconv.c.orig Wed Mar 31 10:51:31 2004 ++++ src/gtkconv.c Sat Apr 3 00:30:21 2004 +@@ -1241,6 +1241,8 @@ GaimGtkWindow *gtkwin; + int numconvs; + int curconv; + gboolean im_context_retval = FALSE; + static guint32 last_event_time; - conv = (GaimConversation *)data; - gtkconv = GAIM_GTK_CONVERSATION(conv); - win = gaim_conversation_get_window(conv); - gtkwin = GAIM_GTK_WINDOW(win); + conv = (GaimConversation *)data; + gtkconv = GAIM_GTK_CONVERSATION(conv); +@@ -1248,6 +1250,20 @@ + gtkwin = GAIM_GTK_WINDOW(win); + numconvs = gaim_conv_window_get_conversation_count(win); + curconv = gaim_conversation_get_index(conv); + + /* + * Check if the input method handles this keyevent or we can use it. @@ -26,5 +28,5 @@ + return TRUE; + } - if (event->keyval == GDK_Page_Up) { - g_signal_stop_emission_by_name(G_OBJECT(entry), "key_press_event"); + /* If CTRL was held down... */ + if (event->state & GDK_CONTROL_MASK) { cvs diff: cannot find files/patch-src::protocols::yahoo::yahoo.c cvs diff: cannot find files/patch-src::proxy.c Index: files/patch-src::util.c =================================================================== RCS file: /usr2/ncvs/ports/net/gaim/files/patch-src::util.c,v retrieving revision 1.2 diff -u -r1.2 patch-src::util.c --- files/patch-src::util.c 26 Jan 2004 13:06:02 -0000 1.2 +++ files/patch-src::util.c 3 Apr 2004 05:18:44 -0000 @@ -1,183 +1,105 @@ -*** src/util.c.orig Fri Jan 9 22:04:56 2004 ---- src/util.c Thu Jan 22 08:26:14 2004 -*************** -*** 247,270 **** - /************************************************************************** - * Quoted Printable Functions - **************************************************************************/ -! void -! gaim_quotedp_decode(const char *str, char **ret_str, int *ret_len) - { -! char *p, *n, *new; - -! n = new = g_malloc(strlen (str) + 1); - -! for (p = (char *)str; *p; p++, n++) { - if (*p == '=') { -! sscanf(p + 1, "%2x\n", (int *)n); -! p += 2; -! } -! else if (*p == '_') - *n = ' '; - else - *n = *p; - } -- - *n = '\0'; - - if (ret_len) ---- 247,317 ---- - /************************************************************************** - * Quoted Printable Functions - **************************************************************************/ -! static void hex(const char **p, const char *end, unsigned char *n) - { -! int i, c; - -! for (i = 0, c = 0; i < 2 && *p < end; ++i, ++*p) { -! c <<= 4; -! switch (**p) { -! case '0': break; -! case '1': c += 1; break; -! case '2': c += 2; break; -! case '3': c += 3; break; -! case '4': c += 4; break; -! case '5': c += 5; break; -! case '6': c += 6; break; -! case '7': c += 7; break; -! case '8': c += 8; break; -! case '9': c += 9; break; -! case 'a': c += 10; break; -! case 'b': c += 11; break; -! case 'c': c += 12; break; -! case 'd': c += 13; break; -! case 'e': c += 14; break; -! case 'f': c += 15; break; -! case 'A': c += 10; break; -! case 'B': c += 11; break; -! case 'C': c += 12; break; -! case 'D': c += 13; break; -! case 'E': c += 14; break; -! case 'F': c += 15; break; -! default: -! if (i == 0) { -! *n = **p; -! ++*p; -! return; -! } -! c >>= 4; -! goto done; -! } -! } -! done: -! *n = (c > UCHAR_MAX) ? '?' : c; -! return; -! } - -! void -! gaim_quotedp_decode(const char *str, char **ret_str, int *ret_len) -! { -! const char *p, *end; -! unsigned char *n, *new; -! size_t len; -! -! len = strlen (str); -! n = new = g_malloc(len + 1); -! p = str; -! end = &p[len]; -! while (p < end) { - if (*p == '=') { -! ++p; -! hex(&p, end, n); -! } else if (*p == '_') - *n = ' '; - else - *n = *p; -+ ++n; - } - *n = '\0'; - - if (ret_len) -*************** -*** 1962,1968 **** - char **ret_path) - { - char scan_info[255]; -! char port_str[5]; - int f; - const char *turl; - char host[256], path[256]; ---- 2009,2015 ---- - char **ret_path) - { - char scan_info[255]; -! char port_str[6]; - int f; - const char *turl; - char host[256], path[256]; -*************** -*** 1982,1997 **** - } - - g_snprintf(scan_info, sizeof(scan_info), -! "%%[%s]:%%[%s]/%%[%s]", addr_ctrl, port_ctrl, page_ctrl); - - f = sscanf(url, scan_info, host, port_str, path); - - if (f == 1) - { - g_snprintf(scan_info, sizeof(scan_info), -! "%%[%s]/%%[%s]", - addr_ctrl, page_ctrl); - f = sscanf(url, scan_info, host, path); - g_snprintf(port_str, sizeof(port_str), "80"); - } - ---- 2029,2049 ---- - } - - g_snprintf(scan_info, sizeof(scan_info), -! "%%255[%s]:%%5[%s]/%%255[%s]", addr_ctrl, port_ctrl, page_ctrl); -! addr_ctrl[sizeof(addr_ctrl)-1] = '\0'; -! port_ctrl[sizeof(port_ctrl)-1] = '\0'; -! page_ctrl[sizeof(page_ctrl)-1] = '\0'; - - f = sscanf(url, scan_info, host, port_str, path); - - if (f == 1) - { - g_snprintf(scan_info, sizeof(scan_info), -! "%%255[%s]/%%255[%s]", - addr_ctrl, page_ctrl); - f = sscanf(url, scan_info, host, path); -+ addr_ctrl[sizeof(addr_ctrl)-1] = '\0'; -+ page_ctrl[sizeof(page_ctrl)-1] = '\0'; - g_snprintf(port_str, sizeof(port_str), "80"); - } - -*************** -*** 2081,2089 **** - static size_t - parse_content_len(const char *data, size_t data_len) - { -! size_t content_len = 0; - -! sscanf(data, "Content-Length: %d", (int *)&content_len); - - return content_len; - } ---- 2133,2146 ---- - static size_t - parse_content_len(const char *data, size_t data_len) - { -! int content_len = 0; -! char *tmp; - -! tmp = g_malloc(data_len + 1); -! memcpy(tmp, data, data_len); -! tmp[data_len] = '\0'; -! sscanf(tmp, "Content-Length: %d", &content_len); -! g_free(tmp); - - return content_len; - } +--- src/util.c.orig Wed Mar 31 17:56:09 2004 ++++ src/util.c Sat Apr 3 00:18:30 2004 +@@ -247,26 +247,71 @@ + /************************************************************************** + * Quoted Printable Functions + **************************************************************************/ ++static void hex(const char **p, const char *end, unsigned char *n) ++{ ++ int i, c; ++ ++ for (i = 0, c = 0; i < 2 && *p < end; ++i, ++*p) { ++ c <<= 4; ++ switch (**p) { ++ case '0': break; ++ case '1': c += 1; break; ++ case '2': c += 2; break; ++ case '3': c += 3; break; ++ case '4': c += 4; break; ++ case '5': c += 5; break; ++ case '6': c += 6; break; ++ case '7': c += 7; break; ++ case '8': c += 8; break; ++ case '9': c += 9; break; ++ case 'a': c += 10; break; ++ case 'b': c += 11; break; ++ case 'c': c += 12; break; ++ case 'd': c += 13; break; ++ case 'e': c += 14; break; ++ case 'f': c += 15; break; ++ case 'A': c += 10; break; ++ case 'B': c += 11; break; ++ case 'C': c += 12; break; ++ case 'D': c += 13; break; ++ case 'E': c += 14; break; ++ case 'F': c += 15; break; ++ default: ++ if (i == 0) { ++ *n = **p; ++ ++*p; ++ return; ++ } ++ c >>= 4; ++ goto done; ++ } ++ } ++done: ++ *n = (c > UCHAR_MAX) ? '?' : c; ++ return; ++} ++ + void + gaim_quotedp_decode(const char *str, char **ret_str, int *ret_len) + { +- char *n, *new; +- const char *end, *p; +- int i; +- +- n = new = g_malloc(strlen (str) + 1); +- end = str + strlen(str); ++ const char *p, *end; ++ unsigned char *n, *new; ++ size_t len; ++ ++ len = strlen (str); ++ n = new = g_malloc(len + 1); ++ p = str; ++ end = &p[len]; + +- for (p = str; p < end; p++, n++) { ++ while (p < end) { + if (*p == '=') { +- sscanf(p + 1, "%2x\n", &i); +- *n = i; +- p += 2; ++ ++p; ++ hex(&p, end, n); ++ } else { ++ *n = *p == '_' ? ' ' : *p; ++ ++p; + } +- else if (*p == '_') +- *n = ' '; +- else +- *n = *p; ++ ++n; + } + + *n = '\0'; +@@ -2119,9 +2164,14 @@ + static size_t + parse_content_len(const char *data, size_t data_len) + { +- size_t content_len = 0; ++ int content_len = 0; ++ char *tmp; + +- sscanf(data, "Content-Length: %d", (int *)&content_len); ++ tmp = g_malloc(data_len + 1); ++ memcpy(tmp, data, data_len); ++ tmp[data_len] = '\0'; ++ sscanf(tmp, "Content-Length: %d", &content_len); ++ g_free(tmp); + + return content_len; + } cvs diff: cannot find files/patch-src_plugin.h cvs diff: cannot find files/patch-src_protocols_oscar_ft.c >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404030547.i335l31Q066033>