From owner-cvs-all@FreeBSD.ORG Tue Jan 15 22:13:40 2008 Return-Path: Delivered-To: cvs-all@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C84BE16A417; Tue, 15 Jan 2008 22:13:40 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (tim.des.no [194.63.250.121]) by mx1.freebsd.org (Postfix) with ESMTP id 7487A13C45D; Tue, 15 Jan 2008 22:13:40 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (localhost [127.0.0.1]) by spam.des.no (Postfix) with ESMTP id B0583209C; Tue, 15 Jan 2008 23:13:27 +0100 (CET) X-Spam-Tests: AWL X-Spam-Learn: disabled X-Spam-Score: -0.2/3.0 X-Spam-Checker-Version: SpamAssassin 3.2.3 (2007-08-08) on tim.des.no Received: from ds4.des.no (des.no [80.203.243.180]) by smtp.des.no (Postfix) with ESMTP id 943F12089; Tue, 15 Jan 2008 23:13:27 +0100 (CET) Received: by ds4.des.no (Postfix, from userid 1001) id 675568449D; Tue, 15 Jan 2008 23:13:27 +0100 (CET) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Kris Kennaway References: <200801080800.m08806jI012963@repoman.freebsd.org> <478A8FFE.8080602@freebsd.org> <478A95F2.1070709@FreeBSD.org> <478AA9E4.2010807@kientzle.com> <478ABC4B.8080601@FreeBSD.org> <20080114181154.GA2286@dragon.NUXI.org> <478BC55B.2060202@FreeBSD.org> <20080114223239.GC56062@VARK.MIT.EDU> <478BE651.1020901@FreeBSD.org> Date: Tue, 15 Jan 2008 23:13:27 +0100 In-Reply-To: <478BE651.1020901@FreeBSD.org> (Kris Kennaway's message of "Mon\, 14 Jan 2008 23\:46\:41 +0100") Message-ID: <86y7aqbuuw.fsf@ds4.des.no> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.1 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: Tim Kientzle , src-committers@FreeBSD.ORG, cvs-src@FreeBSD.ORG, cvs-all@FreeBSD.ORG, Tim Kientzle , obrien@FreeBSD.ORG Subject: Re: cvs commit: src/usr.bin/unzip Makefile unzip.1 unzip.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jan 2008 22:13:40 -0000 Kris Kennaway writes: > No, you'd have to duplicate the do-extract code (or add a special > variable for those 4 ports). I'd much rather wait to see what Tim and > Dag-Erling can come up with. Take it easy everyone, no special-casing will be necessary as I fully intend to add support for them to libarchive. The four files I've identified are: /usr/ports/distfiles/XMMS-AfterStep.zip /usr/ports/distfiles/mathfonts-4.1/MathFonts_TrueType_41.exe /usr/ports/distfiles/q2-3.20-x86-full.exe /usr/ports/distfiles/wordsall.zip Two of them are self-extracting. There is no easy way to figure out how much to skip. I wrote a PE decoder which located the correct section, but the zip file is preceded by decoder-specific data which I couldn't decode. The correct starting position can be obtained from the central directory, which is at the end of the file, which means libarchive needs full seek support. I am working on that, but it requires a few changes in the API between the libarchive core and the support modules, which is a published API, so I need to discuss this with Tim (who until recently was away on vacation). AFAICT, the other two files simply have a dummy local header ("PK00") at the beginning, which requires a trivial modification to the existing zip support code to handle. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@des.no