Menu

Tree [963f78] master /
 History

HTTPS access


File Date Author Commit
 .github 13 hours ago Dirk Stolle Dirk Stolle [240aad] ci: add script to run tests for InstallShield a...
 archive 18 hours ago Dirk Stolle Dirk Stolle [6f5466] add workaround for different stat struct member...
 ci 2022-12-05 Dirk Stolle Dirk Stolle [3530bd] update project and CMake files
 cmake 1 day ago Dirk Stolle Dirk Stolle [aa018e] use CMake's own module to find libarchive
 common 1 day ago Dirk Stolle Dirk Stolle [dfddd4] code style improvements
 encoding 2025-06-02 Dirk Stolle Dirk Stolle [b0b5cc] use canonical upper-case names for charsets in ...
 filesystem 2 days ago Dirk Stolle Dirk Stolle [8dda7a] standard conformance adjustments
 hash 1 day ago Dirk Stolle Dirk Stolle [dfddd4] code style improvements
 os 2016-08-05 Thoronador Thoronador [261185] rename library + adjust name in copyright notice
 procfs 17 hours ago Dirk Stolle Dirk Stolle [65ff88] add Windows implementation for procfs::getProce...
 tests 13 hours ago Dirk Stolle Dirk Stolle [963f78] add .gitattributes to avoid end-of-line convers...
 zlib 2023-01-26 Dirk Stolle Dirk Stolle [0a87f1] modernize documentation + code style in zlib co...
 .gitignore 2012-05-26 Thoronador Thoronador [7adb49] added .gitignore file for cpp directory
 .gitlab-ci.yml 2025-06-10 Dirk Stolle Dirk Stolle [984471] ci: add required package for GitLab pipeline jobs
 CMakeLists.txt 2025-06-05 Dirk Stolle Dirk Stolle [fd7697] adjust CMake files to get rid of deprecation wa...
 CONTRIBUTING.md 2021-04-15 Dirk Stolle Dirk Stolle [79bd9e] add contribution guidelines
 LICENSE 2021-11-17 Dirk Stolle Dirk Stolle [e3ff88] rename license file to LICENSE
 readme.md 2024-05-29 Dirk Stolle Dirk Stolle [eba550] update readme files
 readme.txt 2024-05-29 Dirk Stolle Dirk Stolle [eba550] update readme files

Read Me

libstriezel

This is the libstriezel repository (formerly known as libthoro).
It contains code that is shared (or potentially shared) between multiple
projects by striezel (hence the name). All code is in C++, some classes use
low-level C libraries, but encapsulate them. Let's shove the dirt under the
carpet, right where it belongs.

Build status

GitLab pipeline status
GitHub Actions status

License

Most code is licensed under the GNU General Public License v3 as published by
the Free Software Foundation. A few individual files might use other
non-copyleft licenses, e.g. the MIT/X11 license. These files will have an
appropriate notice attached. However, any of those licenses should be
compatible with the GPL v3.

Contents

Here is a short overview over the contents of the various directories. If you
want details about the classes, just look into the source code. Most of it is
documented well enough to understand it from the documentation alone.

  • archive/7z/ - classes to read 7-Zip archives
  • archive/ar/ - classes to read Ar archives
  • archive/cab/ - classes to read Microsoft Cabinet archives
  • archive/gzip/ - classes to uncompress GZIP files
  • archive/iso9660/ - classes to read ISO 9660 disk images
  • archive/rar/ - classes to read Roschal archives (limited support only,
    due to the proprietary format of those archives)
  • archive/tar/ - classes to read tape archives (*.tar)
  • archive/xz/ - classes to read XZ archives
  • archive/zip/ - classes to read ZIP archives
  • ci/ - contains script(s) for continuous integration
  • cmake/ - files for the CMake build systems
  • common/ - code to do some "common" tasks
  • common/graphics/ - functions + classes to read various image formats
    (e.g. bitmap, JPEG, PNG, binary PPM) and prepare them for use as OpenGL
    textures
  • common/gui/ - incomplete GUI attempt based on GLUT
  • encoding/ - functions to convert strings between different encodings
  • filesystem/ - filesystem-related functions for directories and files
  • hash/ - classes that implement several hash algorithms from the "Secure
    Hash Algorithm" standard as described in FIPS PUB 180-1 and FIPS PUB 180-2;
    namely SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512
  • iso9660/ - classes to read ISO 9660 disk images
  • os/ - class to detect the operating system (main focus on Linux)
  • procfs/ - functions that use the /proc file system from Linux
  • tests/ - test cases for various classes (but unfortunately not all
    classes are covered yet)
  • zlib/ - wrappers for compression and decompression with zlib
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.