@@ -263,7 +263,7 @@ private static void testFramed(FuzzedDataProvider data) {
263263 }
264264
265265 private static void testCrc32C (FuzzedDataProvider data ) {
266- switch (data .consumeInt (0 , 3 )) {
266+ switch (data .consumeInt (0 , 2 )) {
267267 case 0 :
268268 runFuzz (() -> {
269269 byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
@@ -304,28 +304,6 @@ private static void testCrc32C(FuzzedDataProvider data) {
304304 }
305305 });
306306 break ;
307- case 3 :
308- runFuzz (() -> {
309- byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
310- PureJavaCrc32C crc = new PureJavaCrc32C ();
311- crc .update (input , 0 , input .length );
312- long value = crc .getValue ();
313- byte [] serialized = new byte [12 ];
314- serialized [0 ] = (byte ) (value >>> 56 );
315- serialized [1 ] = (byte ) (value >>> 48 );
316- serialized [2 ] = (byte ) (value >>> 40 );
317- serialized [3 ] = (byte ) (value >>> 32 );
318- serialized [4 ] = (byte ) (value >>> 24 );
319- serialized [5 ] = (byte ) (value >>> 16 );
320- serialized [6 ] = (byte ) (value >>> 8 );
321- serialized [7 ] = (byte ) value ;
322- crc .reset ();
323- crc .update (serialized , 0 , 8 );
324- if (crc .getValue () != value ) {
325- throw new IllegalStateException ("CRC32C serialization roundtrip failed" );
326- }
327- });
328- break ;
329307 }
330308 }
331309
@@ -496,7 +474,7 @@ private static void testHadoopStream(FuzzedDataProvider data) {
496474 }
497475
498476 private static void testByteBuffer (FuzzedDataProvider data ) {
499- switch (data .consumeInt (0 , 3 )) {
477+ switch (data .consumeInt (0 , 1 )) {
500478 case 0 :
501479 runFuzz (() -> {
502480 byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
@@ -522,28 +500,6 @@ private static void testByteBuffer(FuzzedDataProvider data) {
522500 });
523501 break ;
524502 case 1 :
525- runFuzz (() -> {
526- byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
527- ByteBuffer src = ByteBuffer .wrap (input );
528- ByteBuffer dst = ByteBuffer .allocate (Snappy .maxCompressedLength (input .length ));
529- int compressed = Snappy .compress (src , dst );
530-
531- dst .limit (compressed );
532- dst .position (0 );
533- ByteBuffer uncompressedBuf = ByteBuffer .allocate (input .length );
534- int uncompressed = Snappy .uncompress (dst , uncompressedBuf );
535-
536- uncompressedBuf .limit (uncompressed );
537- uncompressedBuf .position (0 );
538- byte [] result = new byte [uncompressed ];
539- uncompressedBuf .get (result );
540-
541- if (!Arrays .equals (input , result )) {
542- throw new IllegalStateException ("Heap ByteBuffer compress failed" );
543- }
544- });
545- break ;
546- case 2 :
547503 runFuzz (() -> {
548504 byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
549505 ByteBuffer src = ByteBuffer .allocateDirect (input .length );
@@ -557,20 +513,6 @@ private static void testByteBuffer(FuzzedDataProvider data) {
557513 }
558514 });
559515 break ;
560- case 3 :
561- runFuzz (() -> {
562- byte [] input = data .consumeBytes (data .consumeInt (0 , 4096 ));
563- if (input .length > 0 ) {
564- ByteBuffer src = ByteBuffer .wrap (input );
565- ByteBuffer dst = ByteBuffer .allocate (Snappy .maxCompressedLength (input .length ));
566- try {
567- Snappy .compress (src , dst );
568- } catch (Exception e ) {
569- // Expected for invalid input during fuzzing
570- }
571- }
572- });
573- break ;
574516 }
575517 }
576518}
0 commit comments