summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add label for checkTag testTakayuki Matsuoka2021-05-311-0/+1
|
* Add make -C tests checkTag to ci.ymlTakayuki Matsuoka2021-05-311-0/+16
|
* Enable c_standards as per #994Takayuki Matsuoka2021-05-311-8/+8
|
* Enable cxxtest as per #993Takayuki Matsuoka2021-05-311-3/+3
|
* Improve CI scriptTakayuki Matsuoka2021-05-302-316/+561
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ## Added compilers - gcc: 4.[4678], 5, 6, 11 - clang: 3.[56789], 4, 5, 12 ## Known issue - make -C tests test-lz4c32 - Fails with all versions of clang. See #991 for details. - CFLAGS='-O3 -mx32' make -C tests test-lz4c32 - Fails with all versions of clang - Fails with gcc-11 - `make cxxtest` - Disabled for now. Will be enabled after #993. - `make c_standards_c90`, `make c_standards_c11` - Disabled for now. Will be enabled after #994. ## Difference with `.travis.yml` The following tests are not included yet. - name: Compile OSS-Fuzz targets - name: tag build The following tests won't be included due to lmitation of the CI environment. - name: aarch64 real-hw tests - name: PPC64LE real-hw tests - name: IBM s390x real-hw tests Except above, all other features in `.travis.yml` has been included in this change set. The following post describes details.
* Merge pull request #992 from t-mat/fix-clang-warning-1Yann Collet2021-05-301-1/+1
|\ | | | | Fix -Wshorten-64-to-32 warning
| * Fix -Wshorten-64-to-32 warningTakayuki Matsuoka2021-05-301-1/+1
|/ | | | | | | | | | | | | | Fix -Wshorten-64-to-32 warning The following CI test (macOS) reports "-Wshorten-64-to-32" warning make V=1 clean test MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion' ``` blockStreaming_lineByLine.c:68:54: error: implicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'int' [-Werror,-Wshorten-64-to-32] lz4Stream, inpPtr, cmpBuf, inpBytes, cmpBufBytes, 1); ^~~~~~~~~~~ ```
* Merge pull request #989 from lz4/fix_nullub_lz4Yann Collet2021-05-283-34/+57
|\ | | | | Fix NULL ptr arithmetic in lz4.c
| * fix NULL ptr arithmetic at lz4:2299Yann Collet2021-05-281-2/+7
| |
| * fix NULL ptr arithmetic in lz4:1680Yann Collet2021-05-281-3/+6
| | | | | | | | only do arithmetic if offset > 0
| * Merge branch 'dev' into fix_nullub_lz4Yann Collet2021-05-282-29/+503
| |\ | |/ |/|
* | Merge pull request #987 from t-mat/tmp-disable-mesonYann Collet2021-05-281-29/+29
|\ \ | | | | | | Disable Meson + clang build at travis-ci
| * | Disable Meson + clang build at travis-ciTakayuki Matsuoka2021-05-281-29/+29
| | |
* | | Merge pull request #985 from t-mat/add-github-actionsYann Collet2021-05-281-0/+474
|\ \ \ | | | | | | | | Add GitHub Actions script ci.yml
| * | | Temporary ignore make usanTakayuki Matsuoka2021-05-281-1/+13
| | | | | | | | | | | | | | | | We must enable this test when all make usan errors will be resolved properly.
| * | | Add GitHub Actions script ci.ymlTakayuki Matsuoka2021-05-271-0/+462
| | | |
* | | | Merge pull request #986 from lz4/fixub907Yann Collet2021-05-282-59/+66
|\ \ \ \ | |_|/ / |/| | | fix UB of lz4frame:907
| | | * fix UB lz4:988 and lz4:1178Yann Collet2021-05-283-29/+44
| | | | | | | | | | | | | | | | | | | | ensure `dictBase` is only used when there is an actual dictionary content.
| | | * fix NULL ptr arithmetic of lz4:1572Yann Collet2021-05-281-5/+5
| | |/ | |/| | | | | | | was blindly adding an offset (0) to `dictionary` which could be `NULL`.
| * | fix UB of lz4frame:907Yann Collet2021-05-282-59/+66
|/ / | | | | | | | | | | now line 912 by ensuring pointer arithmetic is only performed if there is a reason for an internal buffer to be used.
* | Merge pull request #982 from t-mat/fix-make-usanYann Collet2021-05-271-1/+1
|\ \ | | | | | | Fix 'make usan'
| * | Add CC propagation to 'make usan'Takayuki Matsuoka2021-05-271-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following command doesn't work as intended ``` cd git clone https://github.com/lz4/lz4.git cd lz4 make usan MOREFLAGS='-Wcomma -Werror' ``` ``` Cleaning completed cc: error: unrecognized command line option ‘-Wcomma’; did you mean ‘-Wcomment’? make[3]: *** [<builtin>: ../lib/lz4.o] Error 1 make[2]: *** [Makefile:65: lz4] Error 2 make[1]: *** [Makefile:133: test] Error 2 make: *** [Makefile:158: usan] Error 2 ``` Because the following part of the `Makefile` doesn't propagate `CC`, `CFLAGS` and `LDFLAGS` to child `$(MAKE)` properly. ``` .PHONY: usan usan: CC = clang usan: CFLAGS = -O3 -g -fsanitize=undefined -fno-sanitize-recover=undefined -fsanitize-recover=pointer-overflow usan: LDFLAGS = $(CFLAGS) usan: clean $(MAKE) test FUZZER_TIME="-T30s" NB_LOOPS=-i1 ``` We need explicit propagation for child process ``` - $(MAKE) test FUZZER_TIME="-T30s" NB_LOOPS=-i1 + CC=$(CC) CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) $(MAKE) test FUZZER_TIME="-T30s" NB_LOOPS=-i1 ``` After that, `make usan` works and it shows expected runtime error. ``` $ make usan MOREFLAGS='-Wcomma -Werror' Cleaning completed ../lib/lz4frame.c:907:25: runtime error: applying non-zero offset 65536 to null pointer SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../lib/lz4frame.c:907:25 in ../lib/lz4frame.c:907:58: runtime error: applying zero offset to null pointer SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../lib/lz4frame.c:907:58 in ... ``` Please note that `make usan` is working at travis-ci. Because `.travis.yml` has the following [explicit `compiler:` setting](https://github.com/lz4/lz4/blob/7a966c1511816b53ac93aa2f2a2ff97e036a4a60/.travis.yml#L66). ``` - name: (Trusty) USan test dist: trusty compiler: clang script: - make usan MOREFLAGS=-Wcomma -Werror ```
* | Merge pull request #984 from t-mat/fix-wconversion-warningYann Collet2021-05-271-1/+1
|\ \ | |/ |/| Fix -Wshorten-64-to-32 warning
| * Fix -Wshorten-64-to-32 warningTakayuki Matsuoka2021-05-271-1/+1
|/
* Merge pull request #972 from jasperla/memmove_crashYann Collet2021-04-301-1/+1
|\ | | | | Fix potential memory corruption with negative memmove() size
| * Fix potential memory corruption with negative memmove() sizeJasper Lievisse Adriaanse2021-02-261-1/+1
| |
* | fixed incorrect propagation of default CFLAGSYann Collet2021-04-271-3/+0
| |
* | Merge pull request #973 from klebertarcisio/patch_fixYann Collet2021-03-101-1/+3
|\ \ | |/ |/| Avoiding null pointer dereference
| * fix null pointer dereferenceklebertosantos2021-03-101-1/+3
|/
* Merge pull request #970 from Nimloth/patch-1Yann Collet2021-02-191-1/+1
|\ | | | | Update .cirrus.yml
| * Update .cirrus.ymlNimloth2021-02-191-1/+1
|/ | | current up-to-date stable branch is 12.2
* Merge pull request #964 from sigiesec/fix-ubsan-resetStreamHC_fastYann Collet2021-01-191-1/+5
|\ | | | | Don't trigger UBSan warning in LZ4_resetStreamHC_fast if LZ4_streamHC…
| * Don't trigger UBSan warning in LZ4_resetStreamHC_fast if ↵Simon Giesecke2021-01-071-1/+5
| | | | | | | | LZ4_streamHCPtr->internal_donotuse.end is NULL.
* | Merge pull request #966 from dosaboy/snap-build-1.9.3Yann Collet2021-01-071-1/+1
|\ \ | | | | | | Update snapcraft.yaml to reflect latest build
| * | Update snapcraft.yaml to reflect latest buildEdward Hope-Morley2021-01-071-1/+1
|/ /
* | Merge pull request #965 from ThomasWaldmann/fix-typosYann Collet2021-01-072-2/+2
|\ \ | |/ |/| fix some typos (work by Andrea Gelmini)
| * fix some typos (work by Andrea Gelmini)Thomas Waldmann2021-01-072-2/+2
|/
* Merge pull request #962 from hmaarrfk/patch-1Yann Collet2021-01-051-1/+12
|\ | | | | Add include locations for x64 builds as well
| * Add include locations for x64 builds as wellMark Harfouche2020-12-281-1/+12
|/
* Merge pull request #960 from lz4/Makefile_exportYann Collet2020-12-1712-143/+199
|\ | | | | Makefile correctly export CFLAGS
| * fix minor pedantic warningsYann Collet2020-12-011-7/+9
| | | | | | | | initialization and conversion
| * fix strange printf formatting warningYann Collet2020-12-012-12/+14
| | | | | | | | so now, `%p` _requires_ a `void*` pointer ?
| * fix minor header dateYann Collet2020-12-012-2/+2
| |
| * fix scanbuild testYann Collet2020-12-011-3/+1
| | | | | | | | seems to require explicit environment variables
| * fix CFLAGS unexport issueYann Collet2020-12-015-38/+45
| |
| * Merge branch 'dev' into MakefileYann Collet2020-12-012-7/+3
| |\ | |/ |/| | | remove `LN_S`
* | Merge pull request #959 from lz4/install_lnYann Collet2020-12-011-3/+3
|\ \ | | | | | | install links over existing install
| * | install links over existing installYann Collet2020-11-301-3/+3
|/ / | | | | | | ensures links are created
| * refactor MakefileYann Collet2020-12-014-101/+152
|/ | | | | remove usage of include Makefile.inc in too Makefile as it seems to somehow unexport CFLAGS ...
* updated license & header datesYann Collet2020-11-2535-37/+37
|