
Tragbares Zip-Datei-Extraktionsprogramm mit breiter Betriebssystemunterstützung, Entschlüsselung und Sicherheitskorrekturen für Path-Traversal- und Symlink-Schwachstellen.
Dies ist die README-Datei für die öffentliche Veröffentlichung vom 22. Mai 2004 des portablen UnZip-Programms zur Extraktion von Zip-Dateien (und verwandten Dienstprogrammen) der Info-ZIP-Gruppe.
unzip551.zip portables UnZip, Version 5.51, Quellcode-Verteilung unzip551.tar.Z dasselbe wie oben, aber im komprimierten tar-Format unzip551.tar.gz dasselbe wie oben, aber im gzip-komprimierten tar-Format
BEVOR SIE FRAGEN: UnZip, sein Begleitprogramm Zip und verwandte Dienstprogramme sowie Support-Dateien sind an vielen Orten zu finden; lesen Sie die Datei "WHERE" für weitere Details. Um die Autoren mit Vorschlägen, Fehlerberichten oder Korrekturen zu kontaktieren, lesen Sie diese Datei (README) weiter und, falls es sich um eine Quellcode-Verteilung handelt, die Datei "ZipPorts" im Verzeichnis proginfo. Ebenfalls in Quellcode-Verteilungen: Lesen Sie "BUGS" für eine Liste bekannter Fehler, Nicht-Fehler und möglicher zukünftiger Fehler; INSTALL für Anweisungen zum Erstellen von UnZip; und "Contents" für eine kommentierte Auflistung aller verteilten Dateien.
UnZip ist ein Extraktionsprogramm für Archive, die im .zip-Format komprimiert sind (auch "Zip-Dateien" genannt). Obwohl es sowohl mit PKWAREs PKZIP- und PKUNZIP-Programmen für MS-DOS als auch mit Info-ZIPs eigenem Zip-Programm hochgradig kompatibel ist, waren unsere Hauptziele Portabilität und Nicht-MSDOS-Funktionalität.
Diese Version von UnZip wurde auf eine beeindruckende Vielfalt an Hardware portiert – von Mikros bis zu Supercomputern – und Betriebssystemen: Unix (viele Varianten), VMS, OS/2 (einschließlich DLL-Version), Windows NT und Windows 95 (einschließlich DLL-Version), Windows CE (GUI-Version), Windows 3.x (einschließlich DLL-Version), MS-DOS, AmigaDOS, Atari TOS, Acorn RISC OS, BeOS, Macintosh (GUI-Version), SMS/QDOS, MVS, VM/CMS, FlexOS, Tandem NSK, Human68k (größtenteils), AOS/VS (teilweise) und TOPS-20 (teilweise). Zu den Funktionen von UnZip, die in PKUNZIP nicht vorhanden sind, gehören Quellcode; standardmäßige Extraktion von Verzeichnisbäumen (mit einem Schalter, um dies zu deaktivieren, statt umgekehrt); systemspezifische erweiterte Dateiattribute; und natürlich die Fähigkeit, unter den meisten Ihrer bevorzugten Betriebssysteme zu laufen. Außerdem ist es kostenlos. :-)
Bei Quellcode-Verteilungen finden Sie im Haupt-Contents-File eine Liste der enthaltenen Dateien, und lesen Sie INSTALL für Anweisungen zum Kompilieren (einschließlich OS-spezifischer Kommentare). Die Contents-Dateien der einzelnen Betriebssysteme (z. B. vms/Contents) können neben der Erklärung, welche Dateien welche sind, auch wichtige Kompilierungsinformationen enthalten. Lesen Sie diese daher unbedingt. Einige der Ports haben eigene spezielle README-Dateien, also achten Sie auch darauf.
Siehe unzip.1 oder unzip.txt zur Verwendung (oder die entsprechenden Dokumentationen für UnZipSFX, ZipInfo, fUnZip und ZipGrep). Für VMS kann unzip_def.rnh oder unzip_cli.help zu unzip.hlp kompiliert und als normaler VMS-Hilfeeintrag installiert werden; siehe vms/descrip.mms.
Die Wartungsversion 5.51 fügt einen CE-Port für die Kommandozeile hinzu, der für die Stapelverarbeitung vorgesehen ist. Mit der Integration dieses Ports wurde der pUnZip-Port überarbeitet und „revitalisiert". Die wichtigsten Änderungen für die breite Öffentlichkeit sind eine Reihe von Fehlerbehebungen, die sich hauptsächlich auf Sicherheitsprobleme beziehen:
Die wichtigste Neuerung in der Version 5.5 ist die Unterstützung von PKWAREs neuem Deflate64(tm)-Algorithmus, der erstmals in PKZIP 4.0 (veröffentlicht November 2000) auftauchte. Wie üblich wurden auch einige andere Fehlerbehebungen und Bereinigungen integriert:
Die Wartungsversion 5.42 behebt weitere Fehler und bereinigt die Weiterverteilungsbedingungen:
Die Wartungsversion 5.41 fügt einen weiteren neuen Port hinzu und behebt einige Fehler.
Die Version 5.4 fügt erneut neue Ports hinzu. Weitere wichtige Punkte sind Änderungen am Auflistungsformat, neue ergänzende Funktionen und mehrere Fehlerbehebungen (insbesondere in Bezug auf die Zeitstempelbehandlung...):
Die Version 5.32 fügt zwei neue Ports und eine Behebung für mindestens einen relativ schwerwiegenden Fehler hinzu:
Die Version 5.31 enthielt nichts als kleine Fehlerbehebungen und Tippfehlerkorrekturen, mit Ausnahme einiger kleiner Leistungsverbesserungen.
Die Version 5.3 fügte noch mehr Ports und weitere plattformübergreifende Portabilitätsfunktionen hinzu:
Was (immer noch!) nicht hinzugefügt wurde, ist die Unterstützung für Mehrteil-Archive (auch bekannt als „Disketten-Spanning") und eine einheitliche und leistungsfähigere DLL-Schnittstelle. Dies sind die beiden höchsten Prioritäten für die 6.x-Veröffentlichungen. Die Arbeit an ersterem wird mit ziemlicher Sicherheit bereits begonnen haben, wenn Sie dies lesen. Diesmal meinen wir es ernst! Aber klar doch. :-)
Obwohl die DLLs immer noch grundsätzlich ein Chaos sind, haben die Windows-DLLs (16- und 32-Bit) jetzt etwas Dokumentation und eine kleine Beispielanwendung. Beachten Sie, dass sie jetzt mit C/C++, Visual BASIC und Delphi kompatibel sein sollten. Seltsamere Sprachen (FoxBase usw.) sind wahrscheinlich nicht kompatibel.
Schließlich ist zu beachten, dass die Unterstützung für Unshrinking jetzt standardmäßig AUSGESCHALTET ist, obwohl der Quellcode noch verfügbar ist (wie bei Unreducing). Dies geschah aus rechtlichen Gründen, nicht aus technischen, und nein, wir sind darüber nicht glücklicher als Sie. :-( Siehe die Datei COPYING für Details.
Die Info-ZIP-Website ist unter http://www.info-zip.org/pub/infozip/ und enthält die aktuellsten Informationen zu kommenden Veröffentlichungen, Links zu Binärdateien und häufig auftretenden Problemen. (Siehe http://www.info-zip.org/pub/infozip/FAQ.html für Letzteres.) Dateien können auch per ftp://ftp.info-zip.org/pub/infozip/ abgerufen werden. Dank an LEO (München, Deutschland) für das Hosting unserer primären Site.
Wenn Sie eine Frage zur Weiterverteilung von Info-ZIP-Software haben, sei es wie sie ist, als Verpackung für ein kommerzielles Produkt oder als integraler Bestandteil eines kommerziellen Produkts, lesen Sie bitte den Abschnitt „Häufig gestellte Fragen" (FAQ) der beiliegenden Datei COPYING.
Da C-Compiler auf einigen Plattformen selten sind und die Autoren nur direkten Zugriff auf eine Teilmenge der unterstützten Systeme haben, möchten andere vielleicht sofort ausführbare Programme für neue Systeme bereitstellen. Im Allgemeinen gibt es damit kein Problem; wir verlangen nur, dass solche Verteilungen diese README-Datei, die Datei WHERE, die Datei COPYING (enthält Copyright-/Weiterverteilungsinformationen) und die entsprechenden Dokumentationsdateien (unzip.txt und/oder unzip.1 für UnZip usw.) enthalten. Wenn das lokale System eine Möglichkeit bietet, selbstextrahierende Archive zu erstellen, in denen sowohl die ausführbaren Dateien als auch die Textdateien zusammen gespeichert werden können, ist das am besten (insbesondere sollte nach Möglichkeit UnZipSFX verwendet werden, auch wenn es ein paar Kilobyte größer ist als die Alternativen); andernfalls empfehlen wir eine reine UnZip-Ausführbare und eine separate Zip-Datei, die die restlichen Text- und Binärdateien enthält. Wenn eine andere Archivierungsmethode auf dem Zielsystem üblich ist (z. B. Zoo oder LHa), kann diese ebenfalls verwendet werden.
Alle Fehlerberichte und Patches (bitte nur Kontext-Diffs!) sollten an [email protected] gesendet werden, die E-Mail-Adresse der Info-ZIP-Autoren. (Beachten Sie, dass einige wenige Systeme erfordern, dass der Zip-Bugs-Teil wie gezeigt großgeschrieben wird; die meisten Systeme funktionieren jedoch auch mit Kleinschreibung "zip-bugs") SENDEN SIE UNS NIEMALS GROSSE BINÄRDATEIEN. Wenn Sie uns ein Problemarchiv senden müssen, das zufällig groß ist (> 20K), kontaktieren Sie uns bitte zuerst für Anweisungen.
„Dumme Fragen", die in der Dokumentation nicht ausreichend beantwortet werden, sollten ebenfalls an Zip-Bugs gerichtet werden, und nicht an ein globales Forum wie Usenet. (Stellen Sie jedoch bitte sicher, dass Ihre Frage nicht bereits in der Dokumentation beantwortet wird – es wurde viel Mühe darauf verwendet, sie klar und vollständig zu halten.)
Vorschläge für neue Funktionen können auf der Mailingliste [email protected] diskutiert werden, einer Mailingliste für Info-ZIP-Betatester und Interessierte; Sie müssen sich jedoch zuerst anmelden (siehe unten). Wir versprechen nicht, auf alle Vorschläge oder sogar alle Patches zu reagieren, aber wenn es sich um etwas handelt, das offensichtlich nützlich ist, ist das direkte Senden der erforderlichen Patches an Zip-Bugs (gemäß den Anweisungen in der Datei ZipPorts) wahrscheinlich erfolgreicher, als uns darum zu bitten – die Autoren haben immer lächerlich wenig Zeit. (Bitte senden Sie KEINE Patches oder codierten Zip-Dateien an die Info-ZIP-Liste. Bitte lesen Sie die ZipPorts-Datei, bevor Sie einen großen Patch senden. Es ist schwierig, diesen Punkt zu überbetonen...)
Wenn Sie einen Port in Erwägung ziehen, sollten Sie nicht nur die ZipPorts-Datei lesen, sondern auch VOR BEGINN bei Zip-Bugs nachfragen, da der Code ständig im Hintergrund aktualisiert wird. (Zum Beispiel wurden VxWorks-, VMOS- und Netware-Ports einst als in Entwicklung befindlich gemeldet, obwohl wir noch keine aktuellen Patches gesehen haben.) Wir werden die neuesten Quellen für Sie organisieren. Die Alternative ist die Möglichkeit, dass Ihre harte Arbeit in einem Unterverzeichnis verstaut und größtenteils ignoriert wird, oder vollständig ignoriert, wenn jemand anderes den Port bereits gemacht hat (und Sie wären überrascht, wie oft das schon passiert ist).
Wenn Sie auf dem Laufenden bleiben möchten über unsere UnZip- (und das begleitende Zip-Dienstprogramm-)Entwicklung, sich den Betatestern anschließen, Ihre eigenen Gedanken und Beiträge einbringen oder einfach nur mitlesen möchten, können Sie einer unserer Mailinglisten beitreten. Es gibt eine reine Ankündigungsliste (Info-ZIP-announce) und eine allgemeine Diskussions-/Testliste (Info-ZIP). Sie müssen Abonnent sein, um Beiträge zu verfassen, und Sie können sich über die Links auf unserer Seite mit häufig gestellten Fragen anmelden:
http://www.info-zip.org/pub/infozip/FAQ.html#lists
(Bitte beachten Sie, dass die Listen ab Ende Mai 2004 aufgrund eines Umzugs zu einer neuen Site vorübergehend nicht verfügbar sind; wir hoffen, sie bald wieder herzustellen. In der Zwischenzeit...) Nutzen Sie gerne unsere Webseite zur Fehlermeldung für Fehlerberichte und um Fragen zu stellen, die nicht auf der FAQ-Seite oben beantwortet werden:
http://www.info-zip.org/zip-bug.html
Es gibt auch eine geschlossene Mailingliste für interne Diskussionen unseres Kernteams. Diese Liste wird jetzt geheim gehalten, um zu verhindern, dass wir mit Spam-Nachrichten überschwemmt werden.
-- Greg Roelofs (manchmal bekannt als Cave Newt), Hauptentwickler von UnZip, mit Inspiration von David Kirschbaum, war Autor dieses Textes.
-- Christian Spieler (Kurzform: SPC), derzeitiger UnZip-Wartungskoordinator, hat die letzten Änderungen vorgenommen.