Date: Fri, 12 Nov 2004 10:49:56 GMT From: Trejkaz Xaoza <trejkaz@xaoza.net> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/73861: segfault on jabber-yahoo-2.3.2 Message-ID: <200411121049.iACAnuHT016661@www.freebsd.org> Resent-Message-ID: <200411121050.iACAoXqp049691@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 73861 >Category: ports >Synopsis: segfault on jabber-yahoo-2.3.2 >Confidential: no >Severity: critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Nov 12 10:50:33 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Trejkaz Xaoza >Release: unsure (hosting box) >Organization: Individual >Environment: FreeBSD mail.zim.com.au 5.2.1-RELEASE-p9 FreeBSD 5.2.1-RELEASE-p9 #0: Fri Aug 13 01:12:37 GMT 2004 mark@mail.zim.com.au:/usr/obj/usr/src/sys/GENERIC i386 >Description: There is a segfault issue in the current Yahoo Transport which is expected to be fixed in the next version. >How-To-Repeat: The server exhibits the problem by itself, given enough time. It's somehow related to a malformed presence packet from certain clients. >Fix: Patch: --- yahoo.c.orig 2004-07-27 15:00:19.538066636 -0700 +++ yahoo.c 2004-07-27 15:01:11.391272012 -0700 @@ -224 , 6 +224 , 7 @@ GSList *l; int len = 0; + char *fix; l = pkt->hash; while (l) { @@ -234 , 7 +235 , 15 @@ len++; } while (tmp); len += 2; - len += strlen(pair->value); + if (pair->value == NULL) { + + fix = malloc(1); + *fix = 0; + pair->value = fix; + + log_debug(ZONE , " [YAHOO]: Corrected Key Now: %d tValue: %sn " , pair->key , pair->value); + } + len += pair->value == NULL ? 0 : strlen(pair->value); len += 2; l = l->next; } >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200411121049.iACAnuHT016661>