extlz4 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -4
  3. data/bin/extlz4 +1 -1
  4. data/contrib/lz4/NEWS +36 -0
  5. data/contrib/lz4/README.md +11 -12
  6. data/contrib/lz4/build/README.md +55 -0
  7. data/contrib/lz4/build/VS2010/datagen/datagen.vcxproj +169 -0
  8. data/contrib/lz4/build/VS2010/frametest/frametest.vcxproj +176 -0
  9. data/contrib/lz4/build/VS2010/fullbench-dll/fullbench-dll.vcxproj +180 -0
  10. data/contrib/lz4/build/VS2010/fullbench/fullbench.vcxproj +176 -0
  11. data/contrib/lz4/build/VS2010/fuzzer/fuzzer.vcxproj +173 -0
  12. data/contrib/lz4/build/VS2010/liblz4-dll/liblz4-dll.rc +51 -0
  13. data/contrib/lz4/build/VS2010/liblz4-dll/liblz4-dll.vcxproj +179 -0
  14. data/contrib/lz4/build/VS2010/liblz4/liblz4.vcxproj +175 -0
  15. data/contrib/lz4/build/VS2010/lz4.sln +98 -0
  16. data/contrib/lz4/build/VS2010/lz4/lz4.rc +51 -0
  17. data/contrib/lz4/build/VS2010/lz4/lz4.vcxproj +189 -0
  18. data/contrib/lz4/build/VS2017/datagen/datagen.vcxproj +173 -0
  19. data/contrib/lz4/build/VS2017/frametest/frametest.vcxproj +180 -0
  20. data/contrib/lz4/build/VS2017/fullbench-dll/fullbench-dll.vcxproj +184 -0
  21. data/contrib/lz4/build/VS2017/fullbench/fullbench.vcxproj +180 -0
  22. data/contrib/lz4/build/VS2017/fuzzer/fuzzer.vcxproj +177 -0
  23. data/contrib/lz4/build/VS2017/liblz4-dll/liblz4-dll.rc +51 -0
  24. data/contrib/lz4/build/VS2017/liblz4-dll/liblz4-dll.vcxproj +183 -0
  25. data/contrib/lz4/build/VS2017/liblz4/liblz4.vcxproj +179 -0
  26. data/contrib/lz4/build/VS2017/lz4.sln +103 -0
  27. data/contrib/lz4/build/VS2017/lz4/lz4.rc +51 -0
  28. data/contrib/lz4/build/VS2017/lz4/lz4.vcxproj +164 -0
  29. data/contrib/lz4/build/cmake/CMakeLists.txt +235 -0
  30. data/contrib/lz4/lib/README.md +27 -10
  31. data/contrib/lz4/lib/lz4.c +327 -230
  32. data/contrib/lz4/lib/lz4.h +80 -70
  33. data/contrib/lz4/lib/lz4frame.c +93 -54
  34. data/contrib/lz4/lib/lz4frame.h +22 -14
  35. data/contrib/lz4/lib/lz4hc.c +192 -115
  36. data/contrib/lz4/lib/lz4hc.h +15 -40
  37. data/contrib/lz4/ossfuzz/Makefile +12 -8
  38. data/contrib/lz4/ossfuzz/compress_frame_fuzzer.c +11 -5
  39. data/contrib/lz4/ossfuzz/compress_fuzzer.c +9 -2
  40. data/contrib/lz4/ossfuzz/compress_hc_fuzzer.c +10 -3
  41. data/contrib/lz4/ossfuzz/decompress_frame_fuzzer.c +11 -3
  42. data/contrib/lz4/ossfuzz/decompress_fuzzer.c +6 -2
  43. data/contrib/lz4/ossfuzz/fuzz_data_producer.c +77 -0
  44. data/contrib/lz4/ossfuzz/fuzz_data_producer.h +36 -0
  45. data/contrib/lz4/ossfuzz/round_trip_frame_fuzzer.c +8 -4
  46. data/contrib/lz4/ossfuzz/round_trip_fuzzer.c +9 -2
  47. data/contrib/lz4/ossfuzz/round_trip_hc_fuzzer.c +7 -2
  48. data/contrib/lz4/ossfuzz/travisoss.sh +6 -1
  49. data/contrib/lz4/tmp +0 -0
  50. data/contrib/lz4/tmpsparse +0 -0
  51. data/ext/extlz4.c +2 -0
  52. data/ext/extlz4.h +5 -0
  53. data/ext/hashargs.c +1 -1
  54. data/ext/hashargs.h +1 -1
  55. data/gemstub.rb +3 -14
  56. data/lib/extlz4.rb +0 -2
  57. data/lib/extlz4/oldstream.rb +1 -1
  58. metadata +40 -25
  59. data/lib/extlz4/version.rb +0 -3
@@ -9,16 +9,20 @@
9
9
  #include <string.h>
10
10
 
11
11
  #include "fuzz_helpers.h"
12
+ #include "fuzz_data_producer.h"
12
13
  #include "lz4.h"
13
14
  #include "lz4hc.h"
14
15
 
15
16
  int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
16
17
  {
17
- uint32_t seed = FUZZ_seed(&data, &size);
18
+ FUZZ_dataProducer_t *producer = FUZZ_dataProducer_create(data, size);
19
+ int const level = FUZZ_dataProducer_range32(producer,
20
+ LZ4HC_CLEVEL_MIN, LZ4HC_CLEVEL_MAX);
21
+ size = FUZZ_dataProducer_remainingBytes(producer);
22
+
18
23
  size_t const dstCapacity = LZ4_compressBound(size);
19
24
  char* const dst = (char*)malloc(dstCapacity);
20
25
  char* const rt = (char*)malloc(size);
21
- int const level = FUZZ_rand32(&seed, LZ4HC_CLEVEL_MIN, LZ4HC_CLEVEL_MAX);
22
26
 
23
27
  FUZZ_ASSERT(dst);
24
28
  FUZZ_ASSERT(rt);
@@ -34,6 +38,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
34
38
 
35
39
  free(dst);
36
40
  free(rt);
41
+ FUZZ_dataProducer_free(producer);
37
42
 
38
43
  return 0;
39
44
  }
@@ -12,7 +12,12 @@ then
12
12
  fi
13
13
 
14
14
  # Modify the oss-fuzz Dockerfile so that we're checking out the current branch on travis.
15
- sed -i "s@https://github.com/lz4/lz4.git@-b $TRAVIS_BRANCH https://github.com/lz4/lz4.git@" /tmp/ossfuzz/projects/lz4/Dockerfile
15
+ if [ "x${TRAVIS_PULL_REQUEST}" = "xfalse" ]
16
+ then
17
+ sed -i "s@https://github.com/lz4/lz4.git@-b ${TRAVIS_BRANCH} https://github.com/lz4/lz4.git@" /tmp/ossfuzz/projects/lz4/Dockerfile
18
+ else
19
+ sed -i "s@https://github.com/lz4/lz4.git@-b ${TRAVIS_PULL_REQUEST_BRANCH} https://github.com/${TRAVIS_PULL_REQUEST_SLUG}.git@" /tmp/ossfuzz/projects/lz4/Dockerfile
20
+ fi
16
21
 
17
22
  # Try and build the fuzzers
18
23
  pushd /tmp/ossfuzz
data/contrib/lz4/tmp ADDED
Binary file
Binary file
data/ext/extlz4.c CHANGED
@@ -40,6 +40,8 @@ VALUE extlz4_mLZ4;
40
40
  RBEXT_API void
41
41
  Init_extlz4(void)
42
42
  {
43
+ RB_EXT_RACTOR_SAFE(true);
44
+
43
45
  extlz4_mLZ4 = rb_define_module("LZ4");
44
46
 
45
47
  /*
data/ext/extlz4.h CHANGED
@@ -6,6 +6,7 @@
6
6
  #include <stdarg.h>
7
7
  #include <stdlib.h>
8
8
  #include <errno.h>
9
+ #include <stdbool.h>
9
10
 
10
11
  #ifndef RB_OBJ_FROZEN
11
12
  # define RB_OBJ_FROZEN OBJ_FROZEN
@@ -17,6 +18,10 @@ extern VALUE extlz4_eError; /* class LZ4::Error < ::RuntimeError */
17
18
  extern void extlz4_init_blockapi(void);
18
19
  extern void extlz4_init_frameapi(void);
19
20
 
21
+ #ifndef RB_EXT_RACTOR_SAFE
22
+ # define RB_EXT_RACTOR_SAFE(FEATURE) ((void)(FEATURE))
23
+ #endif
24
+
20
25
  #define AUX_FUNCALL(RECV, METHOD, ...) \
21
26
  ({ \
22
27
  VALUE args__[] = { __VA_ARGS__ }; \
data/ext/hashargs.c CHANGED
@@ -6,7 +6,7 @@
6
6
  * To the extent possible under law, dearblue has waived all copyright
7
7
  * and related or neighboring rights to this work.
8
8
  *
9
- * dearblue <dearblue@users.noreply.github.com>
9
+ * dearblue <dearblue@users.osdn.me>
10
10
  */
11
11
 
12
12
  #include "hashargs.h"
data/ext/hashargs.h CHANGED
@@ -6,7 +6,7 @@
6
6
  * To the extent possible under law, dearblue has waived all copyright
7
7
  * and related or neighboring rights to this work.
8
8
  *
9
- * dearblue <dearblue@users.noreply.github.com>
9
+ * dearblue <dearblue@users.osdn.me>
10
10
  */
11
11
 
12
12
  #ifndef RBX_HASHARGS_H
data/gemstub.rb CHANGED
@@ -2,17 +2,6 @@ unless ver = File.read("README.md").scan(/^\s*[\*\-]\s*version:{1,2}\s*(.+)/i).f
2
2
  raise "バージョン情報が README.md に見つかりません"
3
3
  end
4
4
 
5
- verfile = "lib/extlz4/version.rb"
6
- LIB << verfile
7
-
8
- file verfile => "README.md" do |*args|
9
- File.binwrite args[0].name, <<-VERSION_FILE
10
- module LZ4
11
- VERSION = "#{ver}"
12
- end
13
- VERSION_FILE
14
- end
15
-
16
5
 
17
6
  unmatch = %r(\bcontrib/lz4/(?:Makefile|appveyor\.yml|contrib|doc|examples|lib/Makefile|lib/dll|programs|tests|visual)(?:$|/))
18
7
 
@@ -33,8 +22,8 @@ EOS
33
22
  s.homepage = "https://github.com/dearblue/ruby-extlz4"
34
23
  s.license = "BSD-2-Clause"
35
24
  s.author = "dearblue"
36
- s.email = "dearblue@users.noreply.github.com"
25
+ s.email = "dearblue@users.osdn.me"
37
26
 
38
- s.add_development_dependency "rake", "~> 1.12", ">= 1.12.3"
39
- s.add_development_dependency "test-unit", "~> 3.2", ">= 3.2.7"
27
+ s.add_development_dependency "rake", "~> 0"
28
+ s.add_development_dependency "test-unit", "~> 3.3"
40
29
  end
data/lib/extlz4.rb CHANGED
@@ -10,8 +10,6 @@ rescue LoadError
10
10
  require File.join(ver, soname)
11
11
  end
12
12
 
13
- require_relative "extlz4/version"
14
-
15
13
  #
16
14
  # LZ4 data and streaming data processor.
17
15
  #
@@ -5,7 +5,7 @@
5
5
  # To the extent possible under law, dearblue has waived all copyright
6
6
  # and related or neighboring rights to this work.
7
7
  #
8
- # dearblue <dearblue@users.noreply.github.com>
8
+ # dearblue <dearblue@users.osdn.me>
9
9
  #
10
10
 
11
11
  require_relative "../extlz4"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: extlz4
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - dearblue
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-07 00:00:00.000000000 Z
11
+ date: 2021-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -16,44 +16,32 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.12'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 1.12.3
19
+ version: '0'
23
20
  type: :development
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '1.12'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 1.12.3
26
+ version: '0'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: test-unit
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: '3.2'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 3.2.7
33
+ version: '3.3'
43
34
  type: :development
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
37
  requirements:
47
38
  - - "~>"
48
39
  - !ruby/object:Gem::Version
49
- version: '3.2'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 3.2.7
40
+ version: '3.3'
53
41
  description: 'unofficial ruby bindings for LZ4 <https://github.com/lz4/lz4>.
54
42
 
55
43
  '
56
- email: dearblue@users.noreply.github.com
44
+ email: dearblue@users.osdn.me
57
45
  executables:
58
46
  - extlz4
59
47
  extensions:
@@ -64,6 +52,7 @@ extra_rdoc_files:
64
52
  - README.md
65
53
  - contrib/lz4/LICENSE
66
54
  - contrib/lz4/README.md
55
+ - contrib/lz4/build/README.md
67
56
  - contrib/lz4/lib/LICENSE
68
57
  - contrib/lz4/lib/README.md
69
58
  - ext/blockapi.c
@@ -77,7 +66,6 @@ extra_rdoc_files:
77
66
  - lib/extlz4/compat.rb
78
67
  - lib/extlz4/fix-0.1bug.rb
79
68
  - lib/extlz4/oldstream.rb
80
- - lib/extlz4/version.rb
81
69
  files:
82
70
  - HISTORY.ja.md
83
71
  - LICENSE
@@ -89,6 +77,30 @@ files:
89
77
  - contrib/lz4/Makefile.inc
90
78
  - contrib/lz4/NEWS
91
79
  - contrib/lz4/README.md
80
+ - contrib/lz4/build/README.md
81
+ - contrib/lz4/build/VS2010/datagen/datagen.vcxproj
82
+ - contrib/lz4/build/VS2010/frametest/frametest.vcxproj
83
+ - contrib/lz4/build/VS2010/fullbench-dll/fullbench-dll.vcxproj
84
+ - contrib/lz4/build/VS2010/fullbench/fullbench.vcxproj
85
+ - contrib/lz4/build/VS2010/fuzzer/fuzzer.vcxproj
86
+ - contrib/lz4/build/VS2010/liblz4-dll/liblz4-dll.rc
87
+ - contrib/lz4/build/VS2010/liblz4-dll/liblz4-dll.vcxproj
88
+ - contrib/lz4/build/VS2010/liblz4/liblz4.vcxproj
89
+ - contrib/lz4/build/VS2010/lz4.sln
90
+ - contrib/lz4/build/VS2010/lz4/lz4.rc
91
+ - contrib/lz4/build/VS2010/lz4/lz4.vcxproj
92
+ - contrib/lz4/build/VS2017/datagen/datagen.vcxproj
93
+ - contrib/lz4/build/VS2017/frametest/frametest.vcxproj
94
+ - contrib/lz4/build/VS2017/fullbench-dll/fullbench-dll.vcxproj
95
+ - contrib/lz4/build/VS2017/fullbench/fullbench.vcxproj
96
+ - contrib/lz4/build/VS2017/fuzzer/fuzzer.vcxproj
97
+ - contrib/lz4/build/VS2017/liblz4-dll/liblz4-dll.rc
98
+ - contrib/lz4/build/VS2017/liblz4-dll/liblz4-dll.vcxproj
99
+ - contrib/lz4/build/VS2017/liblz4/liblz4.vcxproj
100
+ - contrib/lz4/build/VS2017/lz4.sln
101
+ - contrib/lz4/build/VS2017/lz4/lz4.rc
102
+ - contrib/lz4/build/VS2017/lz4/lz4.vcxproj
103
+ - contrib/lz4/build/cmake/CMakeLists.txt
92
104
  - contrib/lz4/lib/LICENSE
93
105
  - contrib/lz4/lib/README.md
94
106
  - contrib/lz4/lib/liblz4-dll.rc.in
@@ -109,6 +121,8 @@ files:
109
121
  - contrib/lz4/ossfuzz/decompress_frame_fuzzer.c
110
122
  - contrib/lz4/ossfuzz/decompress_fuzzer.c
111
123
  - contrib/lz4/ossfuzz/fuzz.h
124
+ - contrib/lz4/ossfuzz/fuzz_data_producer.c
125
+ - contrib/lz4/ossfuzz/fuzz_data_producer.h
112
126
  - contrib/lz4/ossfuzz/fuzz_helpers.h
113
127
  - contrib/lz4/ossfuzz/lz4_helpers.c
114
128
  - contrib/lz4/ossfuzz/lz4_helpers.h
@@ -119,6 +133,8 @@ files:
119
133
  - contrib/lz4/ossfuzz/round_trip_stream_fuzzer.c
120
134
  - contrib/lz4/ossfuzz/standaloneengine.c
121
135
  - contrib/lz4/ossfuzz/travisoss.sh
136
+ - contrib/lz4/tmp
137
+ - contrib/lz4/tmpsparse
122
138
  - examples/frameapi.rb
123
139
  - ext/blockapi.c
124
140
  - ext/depend
@@ -134,7 +150,6 @@ files:
134
150
  - lib/extlz4/compat.rb
135
151
  - lib/extlz4/fix-0.1bug.rb
136
152
  - lib/extlz4/oldstream.rb
137
- - lib/extlz4/version.rb
138
153
  - test/common.rb
139
154
  - test/test_blockapi.rb
140
155
  - test/test_frameapi.rb
@@ -142,7 +157,7 @@ homepage: https://github.com/dearblue/ruby-extlz4
142
157
  licenses:
143
158
  - BSD-2-Clause
144
159
  metadata: {}
145
- post_install_message:
160
+ post_install_message:
146
161
  rdoc_options:
147
162
  - "--charset"
148
163
  - UTF-8
@@ -161,8 +176,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
161
176
  - !ruby/object:Gem::Version
162
177
  version: '0'
163
178
  requirements: []
164
- rubygems_version: 3.0.6
165
- signing_key:
179
+ rubygems_version: 3.2.14
180
+ signing_key:
166
181
  specification_version: 4
167
182
  summary: ruby bindings for LZ4
168
183
  test_files: []
@@ -1,3 +0,0 @@
1
- module LZ4
2
- VERSION = "0.3.1"
3
- end