zstd-ruby 1.5.2.0 → 1.5.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/README.md +55 -2
  4. data/Rakefile +8 -2
  5. data/ext/zstdruby/{zstdruby.h → common.h} +2 -0
  6. data/ext/zstdruby/main.c +14 -0
  7. data/ext/zstdruby/streaming_compress.c +185 -0
  8. data/ext/zstdruby/streaming_compress.h +5 -0
  9. data/ext/zstdruby/streaming_decompress.c +125 -0
  10. data/ext/zstdruby/zstdruby.c +4 -6
  11. data/lib/zstd-ruby/version.rb +1 -1
  12. data/zstd-ruby.gemspec +1 -1
  13. metadata +7 -36
  14. data/.github/dependabot.yml +0 -8
  15. data/.github/workflows/ruby.yml +0 -35
  16. data/ext/zstdruby/libzstd/.gitignore +0 -3
  17. data/ext/zstdruby/libzstd/BUCK +0 -232
  18. data/ext/zstdruby/libzstd/Makefile +0 -357
  19. data/ext/zstdruby/libzstd/README.md +0 -217
  20. data/ext/zstdruby/libzstd/deprecated/zbuff.h +0 -214
  21. data/ext/zstdruby/libzstd/deprecated/zbuff_common.c +0 -26
  22. data/ext/zstdruby/libzstd/deprecated/zbuff_compress.c +0 -167
  23. data/ext/zstdruby/libzstd/deprecated/zbuff_decompress.c +0 -75
  24. data/ext/zstdruby/libzstd/dll/example/Makefile +0 -48
  25. data/ext/zstdruby/libzstd/dll/example/README.md +0 -63
  26. data/ext/zstdruby/libzstd/dll/example/build_package.bat +0 -20
  27. data/ext/zstdruby/libzstd/dll/example/fullbench-dll.sln +0 -25
  28. data/ext/zstdruby/libzstd/dll/example/fullbench-dll.vcxproj +0 -181
  29. data/ext/zstdruby/libzstd/legacy/zstd_legacy.h +0 -415
  30. data/ext/zstdruby/libzstd/legacy/zstd_v01.c +0 -2158
  31. data/ext/zstdruby/libzstd/legacy/zstd_v01.h +0 -94
  32. data/ext/zstdruby/libzstd/legacy/zstd_v02.c +0 -3518
  33. data/ext/zstdruby/libzstd/legacy/zstd_v02.h +0 -93
  34. data/ext/zstdruby/libzstd/legacy/zstd_v03.c +0 -3160
  35. data/ext/zstdruby/libzstd/legacy/zstd_v03.h +0 -93
  36. data/ext/zstdruby/libzstd/legacy/zstd_v04.c +0 -3647
  37. data/ext/zstdruby/libzstd/legacy/zstd_v04.h +0 -142
  38. data/ext/zstdruby/libzstd/legacy/zstd_v05.c +0 -4050
  39. data/ext/zstdruby/libzstd/legacy/zstd_v05.h +0 -162
  40. data/ext/zstdruby/libzstd/legacy/zstd_v06.c +0 -4154
  41. data/ext/zstdruby/libzstd/legacy/zstd_v06.h +0 -172
  42. data/ext/zstdruby/libzstd/legacy/zstd_v07.c +0 -4541
  43. data/ext/zstdruby/libzstd/legacy/zstd_v07.h +0 -187
  44. data/ext/zstdruby/libzstd/libzstd.mk +0 -203
  45. data/ext/zstdruby/libzstd/libzstd.pc.in +0 -16
  46. data/ext/zstdruby/libzstd/module.modulemap +0 -25
@@ -1,415 +0,0 @@
1
- /*
2
- * Copyright (c) Yann Collet, Facebook, Inc.
3
- * All rights reserved.
4
- *
5
- * This source code is licensed under both the BSD-style license (found in the
6
- * LICENSE file in the root directory of this source tree) and the GPLv2 (found
7
- * in the COPYING file in the root directory of this source tree).
8
- * You may select, at your option, one of the above-listed licenses.
9
- */
10
-
11
- #ifndef ZSTD_LEGACY_H
12
- #define ZSTD_LEGACY_H
13
-
14
- #if defined (__cplusplus)
15
- extern "C" {
16
- #endif
17
-
18
- /* *************************************
19
- * Includes
20
- ***************************************/
21
- #include "../common/mem.h" /* MEM_STATIC */
22
- #include "../common/error_private.h" /* ERROR */
23
- #include "../common/zstd_internal.h" /* ZSTD_inBuffer, ZSTD_outBuffer, ZSTD_frameSizeInfo */
24
-
25
- #if !defined (ZSTD_LEGACY_SUPPORT) || (ZSTD_LEGACY_SUPPORT == 0)
26
- # undef ZSTD_LEGACY_SUPPORT
27
- # define ZSTD_LEGACY_SUPPORT 8
28
- #endif
29
-
30
- #if (ZSTD_LEGACY_SUPPORT <= 1)
31
- # include "zstd_v01.h"
32
- #endif
33
- #if (ZSTD_LEGACY_SUPPORT <= 2)
34
- # include "zstd_v02.h"
35
- #endif
36
- #if (ZSTD_LEGACY_SUPPORT <= 3)
37
- # include "zstd_v03.h"
38
- #endif
39
- #if (ZSTD_LEGACY_SUPPORT <= 4)
40
- # include "zstd_v04.h"
41
- #endif
42
- #if (ZSTD_LEGACY_SUPPORT <= 5)
43
- # include "zstd_v05.h"
44
- #endif
45
- #if (ZSTD_LEGACY_SUPPORT <= 6)
46
- # include "zstd_v06.h"
47
- #endif
48
- #if (ZSTD_LEGACY_SUPPORT <= 7)
49
- # include "zstd_v07.h"
50
- #endif
51
-
52
- /** ZSTD_isLegacy() :
53
- @return : > 0 if supported by legacy decoder. 0 otherwise.
54
- return value is the version.
55
- */
56
- MEM_STATIC unsigned ZSTD_isLegacy(const void* src, size_t srcSize)
57
- {
58
- U32 magicNumberLE;
59
- if (srcSize<4) return 0;
60
- magicNumberLE = MEM_readLE32(src);
61
- switch(magicNumberLE)
62
- {
63
- #if (ZSTD_LEGACY_SUPPORT <= 1)
64
- case ZSTDv01_magicNumberLE:return 1;
65
- #endif
66
- #if (ZSTD_LEGACY_SUPPORT <= 2)
67
- case ZSTDv02_magicNumber : return 2;
68
- #endif
69
- #if (ZSTD_LEGACY_SUPPORT <= 3)
70
- case ZSTDv03_magicNumber : return 3;
71
- #endif
72
- #if (ZSTD_LEGACY_SUPPORT <= 4)
73
- case ZSTDv04_magicNumber : return 4;
74
- #endif
75
- #if (ZSTD_LEGACY_SUPPORT <= 5)
76
- case ZSTDv05_MAGICNUMBER : return 5;
77
- #endif
78
- #if (ZSTD_LEGACY_SUPPORT <= 6)
79
- case ZSTDv06_MAGICNUMBER : return 6;
80
- #endif
81
- #if (ZSTD_LEGACY_SUPPORT <= 7)
82
- case ZSTDv07_MAGICNUMBER : return 7;
83
- #endif
84
- default : return 0;
85
- }
86
- }
87
-
88
-
89
- MEM_STATIC unsigned long long ZSTD_getDecompressedSize_legacy(const void* src, size_t srcSize)
90
- {
91
- U32 const version = ZSTD_isLegacy(src, srcSize);
92
- if (version < 5) return 0; /* no decompressed size in frame header, or not a legacy format */
93
- #if (ZSTD_LEGACY_SUPPORT <= 5)
94
- if (version==5) {
95
- ZSTDv05_parameters fParams;
96
- size_t const frResult = ZSTDv05_getFrameParams(&fParams, src, srcSize);
97
- if (frResult != 0) return 0;
98
- return fParams.srcSize;
99
- }
100
- #endif
101
- #if (ZSTD_LEGACY_SUPPORT <= 6)
102
- if (version==6) {
103
- ZSTDv06_frameParams fParams;
104
- size_t const frResult = ZSTDv06_getFrameParams(&fParams, src, srcSize);
105
- if (frResult != 0) return 0;
106
- return fParams.frameContentSize;
107
- }
108
- #endif
109
- #if (ZSTD_LEGACY_SUPPORT <= 7)
110
- if (version==7) {
111
- ZSTDv07_frameParams fParams;
112
- size_t const frResult = ZSTDv07_getFrameParams(&fParams, src, srcSize);
113
- if (frResult != 0) return 0;
114
- return fParams.frameContentSize;
115
- }
116
- #endif
117
- return 0; /* should not be possible */
118
- }
119
-
120
-
121
- MEM_STATIC size_t ZSTD_decompressLegacy(
122
- void* dst, size_t dstCapacity,
123
- const void* src, size_t compressedSize,
124
- const void* dict,size_t dictSize)
125
- {
126
- U32 const version = ZSTD_isLegacy(src, compressedSize);
127
- (void)dst; (void)dstCapacity; (void)dict; (void)dictSize; /* unused when ZSTD_LEGACY_SUPPORT >= 8 */
128
- switch(version)
129
- {
130
- #if (ZSTD_LEGACY_SUPPORT <= 1)
131
- case 1 :
132
- return ZSTDv01_decompress(dst, dstCapacity, src, compressedSize);
133
- #endif
134
- #if (ZSTD_LEGACY_SUPPORT <= 2)
135
- case 2 :
136
- return ZSTDv02_decompress(dst, dstCapacity, src, compressedSize);
137
- #endif
138
- #if (ZSTD_LEGACY_SUPPORT <= 3)
139
- case 3 :
140
- return ZSTDv03_decompress(dst, dstCapacity, src, compressedSize);
141
- #endif
142
- #if (ZSTD_LEGACY_SUPPORT <= 4)
143
- case 4 :
144
- return ZSTDv04_decompress(dst, dstCapacity, src, compressedSize);
145
- #endif
146
- #if (ZSTD_LEGACY_SUPPORT <= 5)
147
- case 5 :
148
- { size_t result;
149
- ZSTDv05_DCtx* const zd = ZSTDv05_createDCtx();
150
- if (zd==NULL) return ERROR(memory_allocation);
151
- result = ZSTDv05_decompress_usingDict(zd, dst, dstCapacity, src, compressedSize, dict, dictSize);
152
- ZSTDv05_freeDCtx(zd);
153
- return result;
154
- }
155
- #endif
156
- #if (ZSTD_LEGACY_SUPPORT <= 6)
157
- case 6 :
158
- { size_t result;
159
- ZSTDv06_DCtx* const zd = ZSTDv06_createDCtx();
160
- if (zd==NULL) return ERROR(memory_allocation);
161
- result = ZSTDv06_decompress_usingDict(zd, dst, dstCapacity, src, compressedSize, dict, dictSize);
162
- ZSTDv06_freeDCtx(zd);
163
- return result;
164
- }
165
- #endif
166
- #if (ZSTD_LEGACY_SUPPORT <= 7)
167
- case 7 :
168
- { size_t result;
169
- ZSTDv07_DCtx* const zd = ZSTDv07_createDCtx();
170
- if (zd==NULL) return ERROR(memory_allocation);
171
- result = ZSTDv07_decompress_usingDict(zd, dst, dstCapacity, src, compressedSize, dict, dictSize);
172
- ZSTDv07_freeDCtx(zd);
173
- return result;
174
- }
175
- #endif
176
- default :
177
- return ERROR(prefix_unknown);
178
- }
179
- }
180
-
181
- MEM_STATIC ZSTD_frameSizeInfo ZSTD_findFrameSizeInfoLegacy(const void *src, size_t srcSize)
182
- {
183
- ZSTD_frameSizeInfo frameSizeInfo;
184
- U32 const version = ZSTD_isLegacy(src, srcSize);
185
- switch(version)
186
- {
187
- #if (ZSTD_LEGACY_SUPPORT <= 1)
188
- case 1 :
189
- ZSTDv01_findFrameSizeInfoLegacy(src, srcSize,
190
- &frameSizeInfo.compressedSize,
191
- &frameSizeInfo.decompressedBound);
192
- break;
193
- #endif
194
- #if (ZSTD_LEGACY_SUPPORT <= 2)
195
- case 2 :
196
- ZSTDv02_findFrameSizeInfoLegacy(src, srcSize,
197
- &frameSizeInfo.compressedSize,
198
- &frameSizeInfo.decompressedBound);
199
- break;
200
- #endif
201
- #if (ZSTD_LEGACY_SUPPORT <= 3)
202
- case 3 :
203
- ZSTDv03_findFrameSizeInfoLegacy(src, srcSize,
204
- &frameSizeInfo.compressedSize,
205
- &frameSizeInfo.decompressedBound);
206
- break;
207
- #endif
208
- #if (ZSTD_LEGACY_SUPPORT <= 4)
209
- case 4 :
210
- ZSTDv04_findFrameSizeInfoLegacy(src, srcSize,
211
- &frameSizeInfo.compressedSize,
212
- &frameSizeInfo.decompressedBound);
213
- break;
214
- #endif
215
- #if (ZSTD_LEGACY_SUPPORT <= 5)
216
- case 5 :
217
- ZSTDv05_findFrameSizeInfoLegacy(src, srcSize,
218
- &frameSizeInfo.compressedSize,
219
- &frameSizeInfo.decompressedBound);
220
- break;
221
- #endif
222
- #if (ZSTD_LEGACY_SUPPORT <= 6)
223
- case 6 :
224
- ZSTDv06_findFrameSizeInfoLegacy(src, srcSize,
225
- &frameSizeInfo.compressedSize,
226
- &frameSizeInfo.decompressedBound);
227
- break;
228
- #endif
229
- #if (ZSTD_LEGACY_SUPPORT <= 7)
230
- case 7 :
231
- ZSTDv07_findFrameSizeInfoLegacy(src, srcSize,
232
- &frameSizeInfo.compressedSize,
233
- &frameSizeInfo.decompressedBound);
234
- break;
235
- #endif
236
- default :
237
- frameSizeInfo.compressedSize = ERROR(prefix_unknown);
238
- frameSizeInfo.decompressedBound = ZSTD_CONTENTSIZE_ERROR;
239
- break;
240
- }
241
- if (!ZSTD_isError(frameSizeInfo.compressedSize) && frameSizeInfo.compressedSize > srcSize) {
242
- frameSizeInfo.compressedSize = ERROR(srcSize_wrong);
243
- frameSizeInfo.decompressedBound = ZSTD_CONTENTSIZE_ERROR;
244
- }
245
- return frameSizeInfo;
246
- }
247
-
248
- MEM_STATIC size_t ZSTD_findFrameCompressedSizeLegacy(const void *src, size_t srcSize)
249
- {
250
- ZSTD_frameSizeInfo frameSizeInfo = ZSTD_findFrameSizeInfoLegacy(src, srcSize);
251
- return frameSizeInfo.compressedSize;
252
- }
253
-
254
- MEM_STATIC size_t ZSTD_freeLegacyStreamContext(void* legacyContext, U32 version)
255
- {
256
- switch(version)
257
- {
258
- default :
259
- case 1 :
260
- case 2 :
261
- case 3 :
262
- (void)legacyContext;
263
- return ERROR(version_unsupported);
264
- #if (ZSTD_LEGACY_SUPPORT <= 4)
265
- case 4 : return ZBUFFv04_freeDCtx((ZBUFFv04_DCtx*)legacyContext);
266
- #endif
267
- #if (ZSTD_LEGACY_SUPPORT <= 5)
268
- case 5 : return ZBUFFv05_freeDCtx((ZBUFFv05_DCtx*)legacyContext);
269
- #endif
270
- #if (ZSTD_LEGACY_SUPPORT <= 6)
271
- case 6 : return ZBUFFv06_freeDCtx((ZBUFFv06_DCtx*)legacyContext);
272
- #endif
273
- #if (ZSTD_LEGACY_SUPPORT <= 7)
274
- case 7 : return ZBUFFv07_freeDCtx((ZBUFFv07_DCtx*)legacyContext);
275
- #endif
276
- }
277
- }
278
-
279
-
280
- MEM_STATIC size_t ZSTD_initLegacyStream(void** legacyContext, U32 prevVersion, U32 newVersion,
281
- const void* dict, size_t dictSize)
282
- {
283
- DEBUGLOG(5, "ZSTD_initLegacyStream for v0.%u", newVersion);
284
- if (prevVersion != newVersion) ZSTD_freeLegacyStreamContext(*legacyContext, prevVersion);
285
- switch(newVersion)
286
- {
287
- default :
288
- case 1 :
289
- case 2 :
290
- case 3 :
291
- (void)dict; (void)dictSize;
292
- return 0;
293
- #if (ZSTD_LEGACY_SUPPORT <= 4)
294
- case 4 :
295
- {
296
- ZBUFFv04_DCtx* dctx = (prevVersion != newVersion) ? ZBUFFv04_createDCtx() : (ZBUFFv04_DCtx*)*legacyContext;
297
- if (dctx==NULL) return ERROR(memory_allocation);
298
- ZBUFFv04_decompressInit(dctx);
299
- ZBUFFv04_decompressWithDictionary(dctx, dict, dictSize);
300
- *legacyContext = dctx;
301
- return 0;
302
- }
303
- #endif
304
- #if (ZSTD_LEGACY_SUPPORT <= 5)
305
- case 5 :
306
- {
307
- ZBUFFv05_DCtx* dctx = (prevVersion != newVersion) ? ZBUFFv05_createDCtx() : (ZBUFFv05_DCtx*)*legacyContext;
308
- if (dctx==NULL) return ERROR(memory_allocation);
309
- ZBUFFv05_decompressInitDictionary(dctx, dict, dictSize);
310
- *legacyContext = dctx;
311
- return 0;
312
- }
313
- #endif
314
- #if (ZSTD_LEGACY_SUPPORT <= 6)
315
- case 6 :
316
- {
317
- ZBUFFv06_DCtx* dctx = (prevVersion != newVersion) ? ZBUFFv06_createDCtx() : (ZBUFFv06_DCtx*)*legacyContext;
318
- if (dctx==NULL) return ERROR(memory_allocation);
319
- ZBUFFv06_decompressInitDictionary(dctx, dict, dictSize);
320
- *legacyContext = dctx;
321
- return 0;
322
- }
323
- #endif
324
- #if (ZSTD_LEGACY_SUPPORT <= 7)
325
- case 7 :
326
- {
327
- ZBUFFv07_DCtx* dctx = (prevVersion != newVersion) ? ZBUFFv07_createDCtx() : (ZBUFFv07_DCtx*)*legacyContext;
328
- if (dctx==NULL) return ERROR(memory_allocation);
329
- ZBUFFv07_decompressInitDictionary(dctx, dict, dictSize);
330
- *legacyContext = dctx;
331
- return 0;
332
- }
333
- #endif
334
- }
335
- }
336
-
337
-
338
-
339
- MEM_STATIC size_t ZSTD_decompressLegacyStream(void* legacyContext, U32 version,
340
- ZSTD_outBuffer* output, ZSTD_inBuffer* input)
341
- {
342
- DEBUGLOG(5, "ZSTD_decompressLegacyStream for v0.%u", version);
343
- switch(version)
344
- {
345
- default :
346
- case 1 :
347
- case 2 :
348
- case 3 :
349
- (void)legacyContext; (void)output; (void)input;
350
- return ERROR(version_unsupported);
351
- #if (ZSTD_LEGACY_SUPPORT <= 4)
352
- case 4 :
353
- {
354
- ZBUFFv04_DCtx* dctx = (ZBUFFv04_DCtx*) legacyContext;
355
- const void* src = (const char*)input->src + input->pos;
356
- size_t readSize = input->size - input->pos;
357
- void* dst = (char*)output->dst + output->pos;
358
- size_t decodedSize = output->size - output->pos;
359
- size_t const hintSize = ZBUFFv04_decompressContinue(dctx, dst, &decodedSize, src, &readSize);
360
- output->pos += decodedSize;
361
- input->pos += readSize;
362
- return hintSize;
363
- }
364
- #endif
365
- #if (ZSTD_LEGACY_SUPPORT <= 5)
366
- case 5 :
367
- {
368
- ZBUFFv05_DCtx* dctx = (ZBUFFv05_DCtx*) legacyContext;
369
- const void* src = (const char*)input->src + input->pos;
370
- size_t readSize = input->size - input->pos;
371
- void* dst = (char*)output->dst + output->pos;
372
- size_t decodedSize = output->size - output->pos;
373
- size_t const hintSize = ZBUFFv05_decompressContinue(dctx, dst, &decodedSize, src, &readSize);
374
- output->pos += decodedSize;
375
- input->pos += readSize;
376
- return hintSize;
377
- }
378
- #endif
379
- #if (ZSTD_LEGACY_SUPPORT <= 6)
380
- case 6 :
381
- {
382
- ZBUFFv06_DCtx* dctx = (ZBUFFv06_DCtx*) legacyContext;
383
- const void* src = (const char*)input->src + input->pos;
384
- size_t readSize = input->size - input->pos;
385
- void* dst = (char*)output->dst + output->pos;
386
- size_t decodedSize = output->size - output->pos;
387
- size_t const hintSize = ZBUFFv06_decompressContinue(dctx, dst, &decodedSize, src, &readSize);
388
- output->pos += decodedSize;
389
- input->pos += readSize;
390
- return hintSize;
391
- }
392
- #endif
393
- #if (ZSTD_LEGACY_SUPPORT <= 7)
394
- case 7 :
395
- {
396
- ZBUFFv07_DCtx* dctx = (ZBUFFv07_DCtx*) legacyContext;
397
- const void* src = (const char*)input->src + input->pos;
398
- size_t readSize = input->size - input->pos;
399
- void* dst = (char*)output->dst + output->pos;
400
- size_t decodedSize = output->size - output->pos;
401
- size_t const hintSize = ZBUFFv07_decompressContinue(dctx, dst, &decodedSize, src, &readSize);
402
- output->pos += decodedSize;
403
- input->pos += readSize;
404
- return hintSize;
405
- }
406
- #endif
407
- }
408
- }
409
-
410
-
411
- #if defined (__cplusplus)
412
- }
413
- #endif
414
-
415
- #endif /* ZSTD_LEGACY_H */