zlib - bibliothèque de compression/décompression
SYNTAXE
[voir zlib.h pour la description complète]
DESCRIPTION
La bibliothèque zlib est une bibliothèque de compression de données à usage général. Le code est thread-safe, à condition que les fonctions de la bibliothèque standard utilisées le soient également, telles que les routines d'allocation de mémoire. Elle fournit des fonctions de compression et de décompression en mémoire, y compris des vérifications d'intégrité des données décompressées. Cette version de la bibliothèque ne prend en charge qu'une seule méthode de compression (deflation), mais d'autres algorithmes peuvent être ajoutés ultérieurement avec la même interface de flux.
La compression peut être effectuée en une seule étape si les tampons sont suffisamment grands, ou peut être effectuée par des appels répétés à la fonction de compression. Dans ce dernier cas, l'application doit fournir plus de données d'entrée et/ou consommer la sortie (en fournissant plus d'espace de sortie) avant chaque appel.
La bibliothèque prend également en charge la lecture et l'écriture de fichiers au format gzip(1) (.gz) avec une interface similaire à celle de stdio.
La bibliothèque n'installe aucun gestionnaire de signaux. Le décodeur vérifie la cohérence des données compressées, de sorte que la bibliothèque ne doit jamais planter, même en cas de données d'entrée corrompues.
Toutes les fonctions de la bibliothèque de compression sont documentées dans le fichier zlib.h. La distribution source inclut des exemples d'utilisation de la bibliothèque dans les fichiers test/example.c et test/minigzip.c, ainsi que d'autres exemples dans le répertoire examples/.
Les modifications apportées à cette version sont documentées dans le fichier ChangeLog qui accompagne la source.
zlib est intégré à de nombreux langages et systèmes d'exploitation, notamment Java, Python, .NET, PHP, Perl, Ruby, Swift et Go.
Un package expérimental pour lire et écrire des fichiers au format .zip, écrit sur zlib par Gilles Vollant (_), est disponible à l'adresse suivante :
http://www.winimage.com/zLibDll/minizip.html et également dans le répertoire contrib/minizip de la distribution source principale de zlib.
VOIR AUSSI
Le site web de zlib est disponible à l'adresse suivante :
http://zlib.net/
Le format de données utilisé par la bibliothèque zlib est décrit par les RFC (Request for Comments) 1950 à 1952 dans les fichiers suivants :
http://tools.ietf.org/html/rfc1950 (pour le format d'en-tête et de fin de zlib)
http://tools.ietf.org/html/rfc1951 (pour le format de données compressées deflate)
http://tools.ietf.org/html/rfc1952 (pour le format d'en-tête et de fin gzip)
Mark Nelson a écrit un article sur zlib pour le numéro de janvier 1997 du Dr. Dobb's Journal ; une copie de l'article est disponible à l'adresse suivante :
http://marknelson.us/1997/01/01/zlib-engine/
SIGNALER LES PROBLÈMES
Avant de signaler un problème, veuillez consulter le site web de zlib pour vérifier que vous disposez de la dernière version de zlib ; sinon, obtenez la dernière version et voyez si le problème persiste. Veuillez lire la FAQ de zlib à l'adresse suivante :
http://zlib.net/zlib_faq.html
avant de demander de l'aide. Envoyez vos questions et/ou commentaires à _, ou (pour la version DLL Windows) à Gilles Vollant (_).
AUTEURS ET LICENCE
Version 1.3.1
Copyright (C) 1995-2024 Jean-loup Gailly et Mark Adler
Ce logiciel est fourni « tel quel », sans aucune garantie expresse ou implicite. En aucun cas, les auteurs ne seront tenus responsables des dommages résultant de l’utilisation de ce logiciel.
Il est accordé à quiconque la permission d’utiliser ce logiciel à toutes fins, y compris à des fins commerciales, et de le modifier et de le redistribuer librement, sous réserve des restrictions suivantes :
L’origine de ce logiciel ne doit pas être déformée ; vous ne devez pas prétendre avoir écrit le
logiciel original. Si vous utilisez ce logiciel dans un produit, un remerciement dans la documentation du produit serait apprécié, mais n’est pas obligatoire.
Les versions source modifiées doivent être clairement identifiées comme telles et ne doivent pas être présentées comme étant le logiciel original.
Cet avis ne peut être supprimé ou modifié d’une distribution source.
Jean-loup Gailly Mark Adler _ _
Le format deflate utilisé par zlib a été défini par Phil Katz. Les spécifications deflate et zlib ont été rédigées par L. Peter Deutsch. Merci à toutes les personnes qui ont signalé des problèmes et suggéré diverses améliorations dans zlib ; ils sont trop nombreux pour être cités ici.
Page de manuel UNIX par R. P. C. Rodgers, U.S. National Library of Medicine (_).