X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Message-Id: <201002022340.o12NeQU8029172@delorie.com> X-Authenticated: #27081556 X-Provags-ID: V01U2FsdGVkX1+YOHAxHaeYYNLajL9J1x4EPEbbA7jJLcTxj+6d88 HR8hRsyHhcS2ED From: Juan Manuel Guerrero To: djgpp-announce AT delorie DOT com Subject: ANNOUNCE: DJGPP port of GNU gzip-1.4 uploaded. Date: Tue, 2 Feb 2010 23:27:49 +0100 Content-Disposition: inline X-Y-GMX-Trusted: 0 X-FuHaFi: 0.5 This is a port of GNU Gzip 1.4 to MSDOS/DJGPP. gzip (GNU zip) is a compression utility designed to be a replacement for 'compress'. Its main advantages over compress are much better compression and freedom from patented algorithms. DJGPP specific changes. ======================= This port is based on the previous ports gzip13N[bds].zip. This means, that all the DJGPP specific funtionality introduced with those ports will also be available in this new port. No new DJGPP specific functionality has been added. This is a recompilation of all new features introduced with previous ports and also available in this port: - Gzip now fully supports long file names on those platforms where DJGPP can access them. This means, for example, that compressing `foo.tar' on Windows 9X will produce `foo.tar.gz', not `foo.tgz'. For backward compatibility, Gzip knows about butchered DOS-style extensions of compressed files even when long file names are supported. For example, if you have `foo.tgz' and you type "gunzip foo.tar", Gzip will find the file even on Windows 9X. Short variants of compressed extensions are checked *after* the long ones, so Gzip will try to find `foo.tar.gz' before `foo.tgz'. Long file name support is checked for each file submitted to Gzip, so it will treat each one of them in accordance with the properties of the file system where that file resides. In other words, you can compress files that reside on DOS and Windows file systems within a single Gzip command. - Gzip will no longer appear to hang when its input comes from the console device. Previous ports would hang when the user typed "gzip -f [Enter]". This port allows you to either interrupt the program with Ctrl-C (if you typed that command by mistake), or type in the input and end it with a ^Z (if you really mean to compress the text you type from the keyboard). This is done by avoiding to switch the console device to binary mode, so any console reads are now done in text mode. - The default compressed file extension is now `.gz', not `z'. This is so that compressed file names on Windows 9X would have the usual `.gz' extension, but it also means that `foo.cc' will now be compressed into `foo.cgz' when long file names are not supported. Use the -N option to `gunzip' to restore the original name, if the original file name had more than one character in the extension. - When restoring original file names, `gunzip' now converts all characters that are not allowed in DOS/Windows file names to similar but valid characters, and changes the file name if it is reserved by a DOS device driver (like `aux.text' or `prn.tar') by prepending an underscore to it. - In previous ports, uncompressing files with certain names on Windows 9X when numeric tails are disabled would trigger false warnings about file name truncation. This is now fixed. - Truncation of long file names on plain DOS is somewhat smarter now: `gunzip' treats several additional characters (like `-' and `_') as part delimiters. - Shell scripts `zmore', `zgrep' and others now work on DOS and Windows, and are distributed with the binary distribution, as are all the man pages supplied with the official GNU sources. - Shell script `zdiff' does not work on DOS and Windows, because it uses subshells to invoke gzip and to generate the error code (return value) of the command. Unfortunatly this does not work with the port of bash. All the changes done to the original distribution are documented in the diffs file and located together with all the files needed to configure the package (config.bat, config.sed, config.site, etc.) in the /djgpp subdir. There exist a makefile called makefile.dj located in the /msdos subdir. This is part of the original FSF gzip-1.2.4 source distribution. I have never inspected nor used this file, so I will not be able answer questions if you decide to use it. This port as well as all the other gzip13N[bsd].zip ports use the usual configuration files located in the /djgpp directory to create the configure script, Makefile and config.h. This is an verbatim extract of the NEWS file: ------------------------------------------------------------------------------- * Noteworthy changes in release 1.4 (2010-01-20) [stable] ** Bug fixes gzip -d could segfault and/or clobber the stack, possibly leading to arbitrary code execution. This affects x86_64 but not 32-bit systems. This fixes CVE-2010-0001. For more details, see http://bugzilla.redhat.com/554418 gzip -d would fail with a CRC error for some valid inputs. So far, the only valid input known to exhibit this failure was compressed "from FAT filesystem (MS-DOS, OS/2, NT)". In addition, to trigger the failure, your memcpy implementation must copy in the "reverse" order. * Noteworthy changes in release 1.3.14 (2009-10-30) [beta] ** Bug fixes gzip no longer fails when there is exactly one trailing NUL byte gzip has always accepted trailing NUL bytes. Note the plural. zdiff would exit with status 2 (indicating an error) rather than 1 to indicate differences when both inputs were compressed and different. zdiff would fail to print differences in two compressed inputs zgrep -f - didn't work ------------------------------------------------------------------------------- The port consists of the usual three packages that can be downloaded from ftp.delorie.com and mirrors as (timestamp 2010-02-02): Gzip 1.4 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gzip14b.zip Gzip 1.4 dvi, html, ps and pdf format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gzip14d.zip Gzip 1.4 source: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/gzip14s.zip For the convenience of the WinXP users the binaries has been produced a second time using the djdev204 beta library. This package is available at ftp.delorie.com and mirrors as (timestamp 2010-02-02): Gzip 1.4 binary, info and man format documentation: ftp://ftp.delorie.com/pub/djgpp/beta/v2gnu/gzip14b.zip Send gzip specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . If you are not sure if the failure is really a gzip failure or a djgpp specific failure, report it here and *not* to . Enjoy. Guerrero, Juan Manuel