From owner-freebsd-ports-bugs@FreeBSD.ORG Fri Mar 17 10:10:16 2006 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 53F9516A420 for ; Fri, 17 Mar 2006 10:10:16 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B6E343D48 for ; Fri, 17 Mar 2006 10:10:15 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k2HAAFOV054230 for ; Fri, 17 Mar 2006 10:10:15 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k2HAAFvI054229; Fri, 17 Mar 2006 10:10:15 GMT (envelope-from gnats) Resent-Date: Fri, 17 Mar 2006 10:10:15 GMT Resent-Message-Id: <200603171010.k2HAAFvI054229@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, "Alex Samorukov" Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 265C816A400 for ; Fri, 17 Mar 2006 10:00:42 +0000 (UTC) (envelope-from samm@os2.kiev.ua) Received: from el.volia.net (el.volia.net [82.144.192.38]) by mx1.FreeBSD.org (Postfix) with ESMTP id B5DA043D46 for ; Fri, 17 Mar 2006 10:00:41 +0000 (GMT) (envelope-from samm@os2.kiev.ua) Received: from ip.85.202.203.234.dyn.sub-4.broadband.voliacable.com ([85.202.203.234] helo=samm.local) by el.volia.net with esmtp (Exim 4.43 (FreeBSD)) id 1FKBl8-00074f-Dt; Fri, 17 Mar 2006 12:00:39 +0200 Message-Id: <1142589640.39970@samm.local> Date: Fri, 17 Mar 2006 12:00:40 +0200 From: "Alex Samorukov" To: "FreeBSD gnats submit" X-Send-Pr-Version: gtk-send-pr 0.4.6 Cc: samm@os2.kiev.ua Subject: ports/94600: Port archivers/libunrar critical error 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: Fri, 17 Mar 2006 10:10:16 -0000 >Number: 94600 >Category: ports >Synopsis: Port archivers/libunrar critical error >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Fri Mar 17 10:10:15 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Alex Samorukov >Release: FreeBSD 6.0-RELEASE i386 >Organization: Shevchenko Didkovskiy and Partners >Environment: System: FreeBSD 6.0-RELEASE #1: Wed Feb 8 23:30:22 EET 2006 root@samm.local:/usr/obj/usr/src/sys/SAMMKRNL >Description: libunrar library have critical error which can cause hanging with 100% cpu load. Error was found and fixed by McMCC. >How-To-Repeat: 1) Compile security/clamav with LIBUNRAR support 2) download file http://mcmcc.bat.ru/clamav/hz.rar 3) Check file hz.rar using clamdscan clamd will hanf with 100% cpu load. >Fix: diff -u -r --new-file libunrar.ori/Makefile libunrar/Makefile --- libunrar.ori/Makefile Fri Mar 17 11:50:39 2006 +++ libunrar/Makefile Fri Mar 17 11:54:33 2006 @@ -7,6 +7,7 @@ PORTNAME= libunrar PORTVERSION= 3.54 +PORTREVISION= 1 CATEGORIES= archivers MASTER_SITES= http://files2.rarlab.com/rar/ \ http://files3.rarlab.com/rar/ \ diff -u -r --new-file libunrar.ori/files/patch-dll.cpp libunrar/files/patch-dll.cpp --- libunrar.ori/files/patch-dll.cpp Thu Jan 1 03:00:00 1970 +++ libunrar/files/patch-dll.cpp Thu Mar 16 20:20:16 2006 @@ -0,0 +1,16 @@ +diff -ruN unrar.orig/dll.cpp unrar/dll.cpp +--- dll.cpp.orig 2005-08-03 20:34:30.000000000 +0400 ++++ dll.cpp 2006-01-11 12:13:33.000000000 +0300 +@@ -271,8 +271,10 @@ + strcpy(Data->Cmd.Command,Operation==RAR_EXTRACT ? "X":"T"); + Data->Cmd.Test=Operation!=RAR_EXTRACT; + bool Repeat=false; +- Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat); +- ++ ++ if(Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat) == false) ++ return (ERAR_UNKNOWN); ++ + while (Data->Arc.ReadHeader()!=0 && Data->Arc.GetHeaderType()==NEWSUB_HEAD) + { + Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat); >Release-Note: >Audit-Trail: >Unformatted: