From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Aug 23 23:10:02 2007 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1788516A418 for ; Thu, 23 Aug 2007 23:10:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id E5A0913C46C for ; Thu, 23 Aug 2007 23:10:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.1/8.14.1) with ESMTP id l7NNA19i026020 for ; Thu, 23 Aug 2007 23:10:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.1/8.14.1/Submit) id l7NNA1Un026019; Thu, 23 Aug 2007 23:10:01 GMT (envelope-from gnats) Resent-Date: Thu, 23 Aug 2007 23:10:01 GMT Resent-Message-Id: <200708232310.l7NNA1Un026019@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Marcin Wisnicki Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4FBDF16A417 for ; Thu, 23 Aug 2007 23:09:41 +0000 (UTC) (envelope-from mwisnicki@gmail.com) Received: from hu-out-0506.google.com (hu-out-0506.google.com [72.14.214.226]) by mx1.freebsd.org (Postfix) with ESMTP id D105013C458 for ; Thu, 23 Aug 2007 23:09:40 +0000 (UTC) (envelope-from mwisnicki@gmail.com) Received: by hu-out-0506.google.com with SMTP id 28so232304hub for ; Thu, 23 Aug 2007 16:09:39 -0700 (PDT) Received: by 10.86.74.15 with SMTP id w15mr1741660fga.1187910579148; Thu, 23 Aug 2007 16:09:39 -0700 (PDT) Received: from ghost.pnet.one.pl ( [84.40.242.20]) by mx.google.com with ESMTPS id g8sm9012867muf.2007.08.23.16.09.37 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 23 Aug 2007 16:09:38 -0700 (PDT) Received: by ghost.pnet.one.pl (sSMTP sendmail emulation); Fri, 24 Aug 2007 01:09:35 +0200 Message-Id: <46ce13b2.08b7660a.4c6c.ffffeae7@mx.google.com> Date: Fri, 24 Aug 2007 01:09:35 +0200 From: Marcin Wisnicki Sender: =?UTF-8?B?TWFyY2luIFdpxZtuaWNraQ==?= To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: gnome@FreeBSD.org Subject: ports/115771: [PATCH] sysutils/gnome-volume-manager: inifite loop on startup X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Aug 2007 23:10:02 -0000 >Number: 115771 >Category: ports >Synopsis: [PATCH] sysutils/gnome-volume-manager: inifite loop on startup >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu Aug 23 23:10:01 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Marcin Wisnicki >Release: FreeBSD 6.2-STABLE i386 >Organization: >Environment: System: FreeBSD ghost.pnet.one.pl 6.2-STABLE FreeBSD 6.2-STABLE #8: Tue Aug 7 15:03:32 CEST >Description: Integer underflow will cause "while (!local && --len >= 0)" to be always true if no local entry was found in the loop. I have also changed wtmp to utmp as we are looking for current users. With this patch g-v-m no longer hangs in my Xvnc-based jail. Port maintainer (gnome@FreeBSD.org) is cc'd. Generated with FreeBSD Port Tools 0.77 >How-To-Repeat: >Fix: --- gnome-volume-manager-2.17.0_5.patch begins here --- diff -ruN --exclude=CVS /usr/ports/sysutils/gnome-volume-manager.orig/Makefile /usr/ports/sysutils/gnome-volume-manager/Makefile --- /usr/ports/sysutils/gnome-volume-manager.orig/Makefile 2007-05-28 01:14:14.000000000 +0200 +++ /usr/ports/sysutils/gnome-volume-manager/Makefile 2007-08-24 00:23:44.000000000 +0200 @@ -8,7 +8,7 @@ PORTNAME= gnome-volume-manager PORTVERSION= 2.17.0 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= sysutils gnome MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/${PORTNAME}/${PORTVERSION:R} diff -ruN --exclude=CVS /usr/ports/sysutils/gnome-volume-manager.orig/files/patch-src_manager.c /usr/ports/sysutils/gnome-volume-manager/files/patch-src_manager.c --- /usr/ports/sysutils/gnome-volume-manager.orig/files/patch-src_manager.c 2007-03-25 05:05:54.000000000 +0200 +++ /usr/ports/sysutils/gnome-volume-manager/files/patch-src_manager.c 2007-08-24 00:23:26.000000000 +0200 @@ -205,14 +205,14 @@ endutent (); } +#else -+ if ((fd = open (_PATH_WTMP, O_RDONLY, 0)) < 0 || fstat(fd, &sb) == -1) { ++ if ((fd = open (_PATH_UTMP, O_RDONLY, 0)) < 0 || fstat(fd, &sb) == -1) { + close (fd); + return TRUE; + } + + len = (sb.st_size + sizeof(buf) - 1) / sizeof(buf); + -+ while (!local && --len >= 0) { ++ while (!local && len-- > 0) { + if (lseek(fd, (off_t) (len * sizeof(buf)), L_SET) == -1 || + (bytes = read (fd, buf, sizeof(buf))) == -1) { + close (fd); --- gnome-volume-manager-2.17.0_5.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: