Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
16c4899
Update README.md
amiremohamadi Feb 16, 2019
8e02c0f
Merge pull request #37 from amiremohamadi/master
sebastiandev Feb 18, 2019
3d4caaf
Add memory size when initializing with stream (#38)
thomas-ha Mar 20, 2019
7916d33
Add continuous integration: Travis and appveyor (#23)
Lecrapouille Mar 20, 2019
81bb33b
Fix memory leaks (#25)
Lecrapouille Mar 20, 2019
f7f3f63
Update README.md
sebastiandev Mar 20, 2019
481b770
update latest minizip
sebastiandev Mar 20, 2019
e748fbc
Fix Travis-CI
Lecrapouille Apr 11, 2019
e9f1505
Update version to 1.0.1
Lecrapouille Apr 11, 2019
01b3566
Updated CMake to use more modern target export format (#41)
uberferg May 6, 2019
3b0ca4e
update cmake to fix compiling as a subdirectory (#43)
mez May 16, 2019
6a0d1d6
Ticket #45: Passworded encryption failed because CRC generation did n…
Aug 21, 2019
11b1ac4
Ticket #48: Require C++ 11, export all symbols on Windows and define …
Aug 21, 2019
1f1fdf9
Ticket #45: Passworded encryption failed because CRC generation did n…
Lecrapouille Aug 22, 2019
9193565
Fix folder separators #32
Lecrapouille Apr 11, 2019
2710609
Windows won't zip directories #36
Lecrapouille Apr 11, 2019
064e047
Update minizip
Lecrapouille Apr 11, 2019
a1889e4
Ticket #48: Require C++ 11, export all symbols on Windows and define …
Lecrapouille Aug 23, 2019
f5268ae
Allow to add timestamp for archive streams.
prowinsk Nov 12, 2019
3d1ef50
Pass correct password parameter.
prowinsk Nov 12, 2019
b8ee47e
Merge pull request #51 from prowinsk/Add_timestamp_to_archive_stream
Lecrapouille Nov 21, 2019
596b3a0
Add new flag to save file prefix (#52)
oficsu Nov 21, 2019
77f9ae4
Fix #53 unzipper.extractEntry returnin an error on nominal case
Lecrapouille Jan 24, 2020
1e95b5b
Install pkg-config file, force installing shared lib and rename stati…
Lecrapouille Jan 24, 2020
067ceaa
Ticket #57: Set minimum required CMake version to 3.0
Lecrapouille Jul 7, 2020
34050f0
Ticket #57: Use newer namespacing-style
Lecrapouille Jul 7, 2020
474d4ab
Ticket #56: Manage negative tellg
Lecrapouille Jul 7, 2020
c14d0f2
Uniformize indentation and brackets, delete trailing whitespaces
Lecrapouille Jul 7, 2020
d86ae60
Add more inclusive windows enviroment (#65)
Togtja Aug 21, 2020
e83e25a
Fix Cmake include dir (#67)
Togtja Aug 24, 2020
47902f2
Add use of find ZLIB instead of custom CMake (#68)
Togtja Aug 24, 2020
9c8caeb
CI: Fix keyring until appveyor updates its installation
Lecrapouille Aug 29, 2020
5f05775
Fix erroneous command in README.md
Lecrapouille Sep 1, 2020
72c9c45
Add linking for Cmake in readme (#71)
Togtja Sep 4, 2020
5b29846
Ticket #60: Do not use std::exception(const char*) since not C++ stan…
Lecrapouille Sep 1, 2020
bf80051
Cleaning WIN32 defines
Lecrapouille Aug 31, 2020
226b359
Support for msys2 / mingw-w64 (#73)
GiuseppeCesarano Sep 18, 2020
c146a6b
Appveyor fix (#76)
GiuseppeCesarano Sep 18, 2020
8f799a0
Add Appveyor baners dev and master
Lecrapouille Sep 18, 2020
8cb0f00
Add cpp version for MSVC (#77)
Togtja Oct 5, 2020
33e67be
Correction for windows and minizip (#81)
bram-nijenkamp Oct 19, 2020
63272e0
Fix extract silently fails #83
Lecrapouille Feb 10, 2021
df76bf8
Update README
Lecrapouille Feb 10, 2021
910a2fb
Fix Can't provide password to unzipper with vector input #86
Lecrapouille Feb 10, 2021
8c70143
Add and apply .clang-format from dev-modernize
Lecrapouille Feb 10, 2021
4452c95
Delete trailling whitespaces
Lecrapouille Feb 12, 2021
92bd0c0
Add more compilation flags and fix compilation warnings
Lecrapouille Feb 12, 2021
d6e3b46
Remove ability to accidentally create empty zip #75
Lecrapouille Feb 12, 2021
f8b0df8
First attempt to give doxygen comments on the API
Lecrapouille Feb 12, 2021
d326739
CI: update Ubuntu
Lecrapouille Feb 12, 2021
acc0054
Fix valgrind false errors
Lecrapouille Feb 13, 2021
fd7415b
Update README
Lecrapouille Feb 13, 2021
5a183f2
Update minizip now refering to another git repo
Lecrapouille Feb 13, 2021
5f32cac
Use AES as default #59 #87
Lecrapouille Feb 13, 2021
66e9440
Update minizip submodule fixing CRC32 #87
Lecrapouille Feb 13, 2021
ecc60f4
Update to version 1.0.2
Lecrapouille Feb 13, 2021
155e173
Add name change for UNIX only (#66)
Togtja Feb 16, 2021
201627b
Update submodule minizip
Lecrapouille May 1, 2021
3ccd666
Try fixing Travis-CI for OSX
Lecrapouille May 10, 2021
3b11670
Fix compile issue on Linux due to unix not always being set (#95)
Togtja May 10, 2021
ad6f6c2
Submodule zlib (#93)
Togtja May 10, 2021
6531cea
Add timestamp struct (#97)
Togtja May 11, 2021
593c507
Add support for static zlib on MSVS (#98)
prophetl33t May 16, 2021
2be8cec
Fix exit after directory unzip issue (#100)
gaborgsomogyi Jul 16, 2021
b7a6a95
Fix CMake find_package not finding zipper when installed (#99)
jnhyatt Jul 16, 2021
8ca2b89
Fix directory creation when end with separator (#101)
gaborgsomogyi Jul 18, 2021
1d579cd
ZLIB platform fix (#104)
gaborgsomogyi Sep 4, 2021
52acc8f
Workaround on #104
Lecrapouille Sep 5, 2021
6dd2209
Update Zipper flags (#89, #103)
Lecrapouille Sep 4, 2021
fcfd2a0
Use zlib version dev branch + some security pull requests (#105, #33)
Lecrapouille Sep 5, 2021
9956824
Prevent zip slip attacks (#33)
Lecrapouille Sep 7, 2021
8806c6e
Update README
Lecrapouille Sep 7, 2021
be62b97
Update Zlib
Lecrapouille Sep 7, 2021
4080724
Move defs.h includes for easier unit testing
Lecrapouille Sep 7, 2021
2a77d9b
Remove unused -DLINUX
Lecrapouille Sep 7, 2021
ab5a70c
Make changeFileDate() available for MINGW and implement dummy functio…
Lecrapouille Sep 7, 2021
289f564
Byebye appveyvor welcome github actions
Lecrapouille Sep 7, 2021
95078ca
Preparing tests with gtest
Lecrapouille Sep 8, 2021
bb10f91
Revert "Preparing tests with gtest"
Lecrapouille Sep 9, 2021
e20fc3f
Revert "Prevent zip slip attacks (#33)"
Lecrapouille Sep 9, 2021
10bb289
Update to version version 1.04
Lecrapouille Sep 9, 2021
e29de4b
update: inform users about ZipSlip vulnerability in README (#108)
aviadhahami Oct 14, 2021
adf66e8
Fix build error on windows (#109)
bensanmorris Dec 29, 2021
0f823e9
Rename GitHub action and do tests on other operating systems
Lecrapouille Mar 1, 2022
37c0723
[FIX]Fix handle leak (#111)
yeajay0001 Mar 1, 2022
ceb70f0
Remove obsolete bagdes
Lecrapouille Mar 1, 2022
281b300
update ld cache after install (#116)
patcmorneau Aug 26, 2022
13435c3
added more cmake documentation
patcmorneau Aug 31, 2022
50ec4dd
!!! THIS BRANCH IS NO LONGER MAINTAINED !!!
Lecrapouille Sep 11, 2022
87b14a4
!!! PROJECT HAS CHANGED OF REPO !!! #119
Lecrapouille Sep 14, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 79 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: Non regression tests for Zipper
on:
workflow_dispatch:
branches:
- main
- dev
push:
branches:
- main
- dev
pull_request:
branches:
- main
- dev

jobs:
non_regression_msys:
name: Non regression on Msys2
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@v2.4.0
with:
submodules: true
- name: msys2
uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: git mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake mingw-w64-x86_64-zlib mingw-w64-x86_64-ninja
- name: CI-Build
run: |
cmake -B build -GNinja -DCMAKE_CXX_COMPILER=g++ .
cd build
cmake --build .
echo 'Running non regression tests on Msys2'
./Zipper-test

non_regression_linux:
name: Non regression on Linux
runs-on: linux-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: true
- name: Installing packages
run: |
sudo apt-get update
sudo apt-get install -y ninja
- name: CI-Build
run: |
cmake -B build -GNinja -DCMAKE_CXX_COMPILER=g++ .
cd build
cmake --build .
echo 'Running non regression tests on Linux'
./Zipper-test

non_regression_macos:
name: Non regression on MacOS X
runs-on: macos-latest
steps:
- name: Checkou
uses: actions/checkout@v2
with:
submodules: true
- name: Installing packages
run: |
brew install ninja
- name: CI-Build
run: |
cmake -B build -GNinja -DCMAKE_CXX_COMPILER=g++ .
cd build
cmake --build .
echo 'Running non regression tests on MacOS X'
./Zipper-test
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## Doxygen generated doc
doc/

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

Expand Down Expand Up @@ -59,6 +62,9 @@ ipch/
*.vsp
*.vspx

# Visual Studio Code IDE
.vscode

# Guidance Automation Toolkit
*.gpState

Expand Down Expand Up @@ -161,4 +167,4 @@ test/*.zip

*.txt.user

build/
build/
8 changes: 7 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
[submodule "minizip"]
path = minizip
url = https://github.com/sebastiandev/minizip
url = https://github.com/Lecrapouille/minizip.git
branch = master

[submodule "zlib"]
path = zlib
url = https://github.com/Lecrapouille/zlib
branch = develop-fixes
3 changes: 3 additions & 0 deletions .integration/travis-deploy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

echo "TODO if deploying is needed"
3 changes: 3 additions & 0 deletions .integration/travis-install-linux.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

apt-get update && apt-get install -y cmake git g++ clang zlib1g-dev valgrind
15 changes: 15 additions & 0 deletions .integration/travis-install-osx.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/bash

function brew_install
{
# (brew outdated "$1" || brew install "$1") || (echo "Error installing $1"; return 1)
(brew install "$1") || (echo "Error installing $1"; return 1)
}

#brew update
#brew upgrade
#brew_install valgrind
#brew link --force valgrind

brew tap LouisBrunner/valgrind
brew install --HEAD LouisBrunner/valgrind/valgrind
11 changes: 11 additions & 0 deletions .integration/travis-launch_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/bash

# Compile
mkdir -p build
cd build || exit 1
cmake .. || exit 1
make -j4 || exit 1
cd ..

# Unit test
(cd build && valgrind --track-origins=yes ./Zipper-test) || exit 1
37 changes: 37 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
sudo: required
dist: bionic
language: cpp

compiler:
- gcc
- clang

services:
- docker

os:
- linux
- osx

matrix:
exclude: # On OSX g++ is a symlink to clang++ by default
- os: osx
compiler: gcc

before_install:
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker pull ubuntu:18.04 ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker run -e CXX="$CXX" --name travis-ci -v $TRAVIS_BUILD_DIR:/zipper -td ubuntu:18.04 /bin/bash ; fi

install:
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker exec -ti travis-ci bash -c "cd zipper && ./.integration/travis-install-linux.sh" ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./.integration/travis-install-osx.sh ; fi

script:
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then docker exec -ti travis-ci bash -c "cd zipper && ./.integration/travis-launch_tests.sh" ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./.integration/travis-launch_tests.sh ; fi

after_success:
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$CXX" == "g++" ]]; then docker exec -ti travis-ci bash -c "cd zipper && ./.integration/travis-deploy.sh" ; fi

after_script:
- docker stop travis-ci
Loading