From d56ae1f600142574d2217578452cc734de19c110 Mon Sep 17 00:00:00 2001 From: Alessandro Ros Date: Wed, 26 Apr 2023 12:30:51 +0200 Subject: [PATCH] rewrite fuzz tests of decoders in order to get deterministic results (#261) --- pkg/formats/rtph264/decoder_test.go | 18 ++++++++++++++--- ...098caec184d581dd6292e => 11dca3ad0def7057} | 1 + ...884383564489d9f873db1b015a693c79fb7c1c1a46 | 2 -- ...d96325b7997ff47d5d29d => 60892a24d67609fc} | 1 + .../fuzz/FuzzDecoder/84ed65595ad05a58} | 2 +- ...2798130aa7e6835b67b01 => 9b4d0ab6bd98d3a9} | 1 + ...6ca6c4e4d0467a50451fd1feb1cae249fdcbf25a5a | 2 -- .../fuzz/FuzzDecoder/ecf7d0b7f06fcc4a} | 2 +- .../fuzz/FuzzDecoder/edbcdbb8d9f1bdac | 3 +++ ...b8ed44a1ba826ca6129d9 => ef62dc47a38f1a39} | 1 + ...147ef4b39f0e467f0257dbf8f8b2f256c235640a6e | 2 -- pkg/formats/rtph265/decoder_test.go | 18 ++++++++++++++--- .../fuzz/FuzzDecoder/25f2b139d5d03b01} | 2 +- ...c32d9e08392bcbab0a81a => 2d69a60004f3edfd} | 1 + ...86d265f55bd57d1746962 => 5cedd25e23c9f9aa} | 1 + .../fuzz/FuzzDecoder/717a02ebf21c41db | 3 +++ .../fuzz/FuzzDecoder/84ed65595ad05a58} | 1 + ...cc780587540caba1589c6a7ce702ff84edca9b3133 | 2 -- ...2bd8e0f306d81382d5698 => 95e634df087d6476} | 1 + .../fuzz/FuzzDecoder/a7fab38f1f1629f8 | 3 +++ ...f0bcfde81c9cd71a403c69f893cebc8378c60af625 | 2 -- ...f83341d58eca4d50fab6eefbe78953581a1a4df198 | 2 -- ...49e22db23bed73deef75b => e807a721f4e89fcb} | 1 + pkg/formats/rtplpcm/decoder_test.go | 14 ++++++------- ...e7bb6724d4ebafe311ed4 => 582528ddfad69eb5} | 0 pkg/formats/rtpmjpeg/decoder_test.go | 20 +++++++++++++++---- .../fuzz/FuzzDecoder/5c3e3cea6fcbf660 | 5 +++++ ...bed143b3403b2d0ffaecdf3298988189c118ee10c1 | 3 --- ...cc2dfb85aa7d862858a49 => 8b8df3a54310aad8} | 2 ++ .../fuzz/FuzzDecoder/acf99ee7fd60497d} | 4 ++-- ...68e12dda0590d7c11c0f890b3816ab6eff536ac9fc | 3 --- ...94dc125f8c57860dd62c4244dd7b4e7512cb22a205 | 3 --- .../fuzz/FuzzDecoder/c582eb998d5b265e | 5 +++++ .../fuzz/FuzzDecoder/f1b261959da64dfa | 5 +++++ ...835482b418adf4885a063409efe36d0d6120af5eb9 | 3 --- pkg/formats/rtpmpeg2audio/decoder_test.go | 6 +++--- .../{2dcc1140d95305bd => 07e32c6158459c72} | 2 +- .../fuzz/FuzzDecoder/364d148c8b01f9af | 3 +++ .../fuzz/FuzzDecoder/5ca224fc27648f98 | 3 --- .../{ce0da9a3a282358d => 6acba488537bfc0a} | 2 +- .../fuzz/FuzzDecoder/84ed65595ad05a58} | 1 + .../{dda10e4cae014fda => 910722de931d45a0} | 2 +- pkg/formats/rtpmpeg4audio/decoder_test.go | 16 +++++++-------- .../fuzz/FuzzDecoder/0133a2a9bd638ceb | 5 +++++ .../fuzz/FuzzDecoder/079a435e5445c35b | 5 +++++ .../fuzz/FuzzDecoder/571808e383aba6a5 | 5 +++++ .../fuzz/FuzzDecoder/592eac8c14ce0985 | 5 ----- .../fuzz/FuzzDecoder/6b33266efc1ae023 | 5 ----- .../fuzz/FuzzDecoder/8f3e197fb87140b2 | 5 +++++ .../{12dc1f3e61a87bba => 9418bac23c1c4f72} | 2 +- .../fuzz/FuzzDecoder/97f31764971cea9c | 5 +++++ .../fuzz/FuzzDecoder/a68704dd42c38106 | 5 +++++ .../fuzz/FuzzDecoder/c00c7308cebe5e4a | 5 ----- .../{2f6d3f58d465483d => c7480ec341b553d6} | 4 ++-- pkg/formats/rtpvp8/decoder_test.go | 20 +++++++++++++++---- ...096dc3ba35696d1649fa4 => 01b49f6ea4a5f782} | 2 ++ .../fuzz/FuzzDecoder/079a435e5445c35b | 5 +++++ .../fuzz/FuzzDecoder/2b9461645a4b90d2 | 5 +++++ ...6c52a228b2ca8d9794363a61529fcad02658ea03e3 | 3 --- pkg/formats/rtpvp9/decoder_test.go | 20 +++++++++++++++---- .../fuzz/FuzzDecoder/41b798362d81811a} | 6 +++--- .../fuzz/FuzzDecoder/5c3924785d154da4} | 2 +- ...20307f2e271491c804e84959ad2d5fdaa2e32b6a0f | 3 --- 63 files changed, 192 insertions(+), 99 deletions(-) rename pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/{048b606517c23baffac96520675af386f92f471f22f098caec184d581dd6292e => 11dca3ad0def7057} (71%) delete mode 100644 pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/17ec193e17dd91d1b2a621884383564489d9f873db1b015a693c79fb7c1c1a46 rename pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/{55cc57e8de6f7821309a6444040480f3aa0128b6b6cd96325b7997ff47d5d29d => 60892a24d67609fc} (71%) rename pkg/formats/{rtpmjpeg/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 => rtph264/testdata/fuzz/FuzzDecoder/84ed65595ad05a58} (70%) rename pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/{f428976a5b2917c009d1f28d7a96e81095be8631f062798130aa7e6835b67b01 => 9b4d0ab6bd98d3a9} (70%) delete mode 100644 pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c30437d5edf1393c2957896ca6c4e4d0467a50451fd1feb1cae249fdcbf25a5a rename pkg/formats/{rtpvp8/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 => rtph264/testdata/fuzz/FuzzDecoder/ecf7d0b7f06fcc4a} (70%) create mode 100644 pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/edbcdbb8d9f1bdac rename pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/{c89423ac94e1743f63fb142431eed08c3b74e51a4e7b8ed44a1ba826ca6129d9 => ef62dc47a38f1a39} (70%) delete mode 100644 pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/fe107a097efccd5098d6b0147ef4b39f0e467f0257dbf8f8b2f256c235640a6e rename pkg/formats/{rtpvp9/testdata/fuzz/FuzzDecoder/ef9d289981397c05db640a6c59c3451a32320b9343d5fefb3e03f72b36377a6c => rtph265/testdata/fuzz/FuzzDecoder/25f2b139d5d03b01} (67%) rename pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/{eb4593a9592045ab0cf0b17a3f9f2754d6898ee465ec32d9e08392bcbab0a81a => 2d69a60004f3edfd} (70%) rename pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/{353ba911ad2dc1916f0bb9eb5e553575e27c9a6662e86d265f55bd57d1746962 => 5cedd25e23c9f9aa} (71%) create mode 100644 pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/717a02ebf21c41db rename pkg/formats/{rtph264/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 => rtph265/testdata/fuzz/FuzzDecoder/84ed65595ad05a58} (69%) delete mode 100644 pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95aa14d7ab02ec8b5c470dcc780587540caba1589c6a7ce702ff84edca9b3133 rename pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/{6e0463cbdc2d559f2823538d2efee4a8b811c3ea02d2bd8e0f306d81382d5698 => 95e634df087d6476} (72%) create mode 100644 pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/a7fab38f1f1629f8 delete mode 100644 pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/cb84a08ac93f5772ee3ba0f0bcfde81c9cd71a403c69f893cebc8378c60af625 delete mode 100644 pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e45ead12fae619dd0807aaf83341d58eca4d50fab6eefbe78953581a1a4df198 rename pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/{c4389a565e8280502fc611cde347896b5d167806b2e49e22db23bed73deef75b => e807a721f4e89fcb} (72%) rename pkg/formats/rtplpcm/testdata/fuzz/FuzzDecoder/{582528ddfad69eb57775199a43e0f9fd5c94bba343ce7bb6724d4ebafe311ed4 => 582528ddfad69eb5} (100%) create mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/5c3e3cea6fcbf660 delete mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/76a6865e7bb36d841a943abed143b3403b2d0ffaecdf3298988189c118ee10c1 rename pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/{c2ffebd2c319dea9e791ab793c970d84bc212c35134cc2dfb85aa7d862858a49 => 8b8df3a54310aad8} (72%) rename pkg/formats/{rtpmpeg4audio/testdata/fuzz/FuzzDecoder/524481b3acf39020 => rtpmjpeg/testdata/fuzz/FuzzDecoder/acf99ee7fd60497d} (100%) delete mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/bbed53e53be4cad7bab7f568e12dda0590d7c11c0f890b3816ab6eff536ac9fc delete mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/be012bfe6e99e126df96e194dc125f8c57860dd62c4244dd7b4e7512cb22a205 create mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c582eb998d5b265e create mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/f1b261959da64dfa delete mode 100644 pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/fe09b7699690e38a634478835482b418adf4885a063409efe36d0d6120af5eb9 rename pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/{2dcc1140d95305bd => 07e32c6158459c72} (100%) create mode 100644 pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/364d148c8b01f9af delete mode 100644 pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/5ca224fc27648f98 rename pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/{ce0da9a3a282358d => 6acba488537bfc0a} (53%) rename pkg/formats/{rtph265/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 => rtpmpeg2audio/testdata/fuzz/FuzzDecoder/84ed65595ad05a58} (69%) rename pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/{dda10e4cae014fda => 910722de931d45a0} (72%) create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/0133a2a9bd638ceb create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/079a435e5445c35b create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/571808e383aba6a5 delete mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/592eac8c14ce0985 delete mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/6b33266efc1ae023 create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/8f3e197fb87140b2 rename pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/{12dc1f3e61a87bba => 9418bac23c1c4f72} (81%) create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/97f31764971cea9c create mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/a68704dd42c38106 delete mode 100644 pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c00c7308cebe5e4a rename pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/{2f6d3f58d465483d => c7480ec341b553d6} (100%) rename pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/{c4c11fb7d7de62a02ee8e7d6962d074d82fa5fdd472096dc3ba35696d1649fa4 => 01b49f6ea4a5f782} (65%) create mode 100644 pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/079a435e5445c35b create mode 100644 pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/2b9461645a4b90d2 delete mode 100644 pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/7a1c68afba07c13a12f3686c52a228b2ca8d9794363a61529fcad02658ea03e3 rename pkg/formats/{rtpmpeg4audio/testdata/fuzz/FuzzDecoder/23e26cf358a800e8 => rtpvp9/testdata/fuzz/FuzzDecoder/41b798362d81811a} (54%) rename pkg/formats/{rtpmpeg4audio/testdata/fuzz/FuzzDecoder/3f92dc5bae9d3239 => rtpvp9/testdata/fuzz/FuzzDecoder/5c3924785d154da4} (73%) delete mode 100644 pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/a562b457d1a04bb296308020307f2e271491c804e84959ad2d5fdaa2e32b6a0f diff --git a/pkg/formats/rtph264/decoder_test.go b/pkg/formats/rtph264/decoder_test.go index e00ca2bf..7212abe3 100644 --- a/pkg/formats/rtph264/decoder_test.go +++ b/pkg/formats/rtph264/decoder_test.go @@ -184,10 +184,22 @@ func TestDecodeUntilMarker(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() + f.Fuzz(func(t *testing.T, a []byte, b []byte) { + d := &Decoder{} + d.Init() + + d.Decode(&rtp.Packet{ + Header: rtp.Header{ + Version: 2, + Marker: false, + PayloadType: 96, + SequenceNumber: 17645, + Timestamp: 2289527317, + SSRC: 0x9dbb7812, + }, + Payload: a, + }) - f.Fuzz(func(t *testing.T, b []byte) { d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/048b606517c23baffac96520675af386f92f471f22f098caec184d581dd6292e b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/11dca3ad0def7057 similarity index 71% rename from pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/048b606517c23baffac96520675af386f92f471f22f098caec184d581dd6292e rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/11dca3ad0def7057 index d4bdeb53..425777d6 100644 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/048b606517c23baffac96520675af386f92f471f22f098caec184d581dd6292e +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/11dca3ad0def7057 @@ -1,2 +1,3 @@ go test fuzz v1 []byte("800") +[]byte("0") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/17ec193e17dd91d1b2a621884383564489d9f873db1b015a693c79fb7c1c1a46 b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/17ec193e17dd91d1b2a621884383564489d9f873db1b015a693c79fb7c1c1a46 deleted file mode 100644 index 527d8eac..00000000 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/17ec193e17dd91d1b2a621884383564489d9f873db1b015a693c79fb7c1c1a46 +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("\x1c\xd4") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/55cc57e8de6f7821309a6444040480f3aa0128b6b6cd96325b7997ff47d5d29d b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/60892a24d67609fc similarity index 71% rename from pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/55cc57e8de6f7821309a6444040480f3aa0128b6b6cd96325b7997ff47d5d29d rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/60892a24d67609fc index 45be281e..f6645a7c 100644 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/55cc57e8de6f7821309a6444040480f3aa0128b6b6cd96325b7997ff47d5d29d +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/60892a24d67609fc @@ -1,2 +1,3 @@ go test fuzz v1 []byte("8") +[]byte("") diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 similarity index 70% rename from pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 index 53d50f6b..b8f15622 100644 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 @@ -1,3 +1,3 @@ go test fuzz v1 []byte("0") -bool(false) +[]byte("") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/f428976a5b2917c009d1f28d7a96e81095be8631f062798130aa7e6835b67b01 b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/9b4d0ab6bd98d3a9 similarity index 70% rename from pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/f428976a5b2917c009d1f28d7a96e81095be8631f062798130aa7e6835b67b01 rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/9b4d0ab6bd98d3a9 index 9756ef63..281e5902 100644 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/f428976a5b2917c009d1f28d7a96e81095be8631f062798130aa7e6835b67b01 +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/9b4d0ab6bd98d3a9 @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("80") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c30437d5edf1393c2957896ca6c4e4d0467a50451fd1feb1cae249fdcbf25a5a b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c30437d5edf1393c2957896ca6c4e4d0467a50451fd1feb1cae249fdcbf25a5a deleted file mode 100644 index 3152792e..00000000 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c30437d5edf1393c2957896ca6c4e4d0467a50451fd1feb1cae249fdcbf25a5a +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("\x1c") diff --git a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ecf7d0b7f06fcc4a similarity index 70% rename from pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ecf7d0b7f06fcc4a index 53d50f6b..f8ac0aa8 100644 --- a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/52b2e47791e6e8c660670149d685c83d5fecefd94c322f710147669ef887e099 +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ecf7d0b7f06fcc4a @@ -1,3 +1,3 @@ go test fuzz v1 []byte("0") -bool(false) +[]byte("<") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/edbcdbb8d9f1bdac b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/edbcdbb8d9f1bdac new file mode 100644 index 00000000..f003f163 --- /dev/null +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/edbcdbb8d9f1bdac @@ -0,0 +1,3 @@ +go test fuzz v1 +[]byte("0") +[]byte("\\0") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c89423ac94e1743f63fb142431eed08c3b74e51a4e7b8ed44a1ba826ca6129d9 b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ef62dc47a38f1a39 similarity index 70% rename from pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c89423ac94e1743f63fb142431eed08c3b74e51a4e7b8ed44a1ba826ca6129d9 rename to pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ef62dc47a38f1a39 index d8912895..c5ee21e7 100644 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/c89423ac94e1743f63fb142431eed08c3b74e51a4e7b8ed44a1ba826ca6129d9 +++ b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/ef62dc47a38f1a39 @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("9") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/fe107a097efccd5098d6b0147ef4b39f0e467f0257dbf8f8b2f256c235640a6e b/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/fe107a097efccd5098d6b0147ef4b39f0e467f0257dbf8f8b2f256c235640a6e deleted file mode 100644 index 66d6d123..00000000 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/fe107a097efccd5098d6b0147ef4b39f0e467f0257dbf8f8b2f256c235640a6e +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("\x1c0") diff --git a/pkg/formats/rtph265/decoder_test.go b/pkg/formats/rtph265/decoder_test.go index 371693b8..07d0bd2e 100644 --- a/pkg/formats/rtph265/decoder_test.go +++ b/pkg/formats/rtph265/decoder_test.go @@ -36,10 +36,22 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() + f.Fuzz(func(t *testing.T, a []byte, b []byte) { + d := &Decoder{} + d.Init() + + d.Decode(&rtp.Packet{ + Header: rtp.Header{ + Version: 2, + Marker: false, + PayloadType: 96, + SequenceNumber: 17645, + Timestamp: 2289527317, + SSRC: 0x9dbb7812, + }, + Payload: a, + }) - f.Fuzz(func(t *testing.T, b []byte) { d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, diff --git a/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/ef9d289981397c05db640a6c59c3451a32320b9343d5fefb3e03f72b36377a6c b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/25f2b139d5d03b01 similarity index 67% rename from pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/ef9d289981397c05db640a6c59c3451a32320b9343d5fefb3e03f72b36377a6c rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/25f2b139d5d03b01 index 0e38cb16..c8452b1a 100644 --- a/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/ef9d289981397c05db640a6c59c3451a32320b9343d5fefb3e03f72b36377a6c +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/25f2b139d5d03b01 @@ -1,3 +1,3 @@ go test fuzz v1 []byte("00") -bool(false) +[]byte("b00") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/eb4593a9592045ab0cf0b17a3f9f2754d6898ee465ec32d9e08392bcbab0a81a b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/2d69a60004f3edfd similarity index 70% rename from pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/eb4593a9592045ab0cf0b17a3f9f2754d6898ee465ec32d9e08392bcbab0a81a rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/2d69a60004f3edfd index 75378806..e368496b 100644 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/eb4593a9592045ab0cf0b17a3f9f2754d6898ee465ec32d9e08392bcbab0a81a +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/2d69a60004f3edfd @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("b0") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/353ba911ad2dc1916f0bb9eb5e553575e27c9a6662e86d265f55bd57d1746962 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/5cedd25e23c9f9aa similarity index 71% rename from pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/353ba911ad2dc1916f0bb9eb5e553575e27c9a6662e86d265f55bd57d1746962 rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/5cedd25e23c9f9aa index 955f0420..77d9c0b5 100644 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/353ba911ad2dc1916f0bb9eb5e553575e27c9a6662e86d265f55bd57d1746962 +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/5cedd25e23c9f9aa @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("a00") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/717a02ebf21c41db b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/717a02ebf21c41db new file mode 100644 index 00000000..e812d194 --- /dev/null +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/717a02ebf21c41db @@ -0,0 +1,3 @@ +go test fuzz v1 +[]byte("0") +[]byte("\xe50") diff --git a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 similarity index 69% rename from pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 index 67322c70..b8f15622 100644 --- a/pkg/formats/rtph264/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95aa14d7ab02ec8b5c470dcc780587540caba1589c6a7ce702ff84edca9b3133 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95aa14d7ab02ec8b5c470dcc780587540caba1589c6a7ce702ff84edca9b3133 deleted file mode 100644 index 6da6ac77..00000000 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95aa14d7ab02ec8b5c470dcc780587540caba1589c6a7ce702ff84edca9b3133 +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("d0") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/6e0463cbdc2d559f2823538d2efee4a8b811c3ea02d2bd8e0f306d81382d5698 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95e634df087d6476 similarity index 72% rename from pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/6e0463cbdc2d559f2823538d2efee4a8b811c3ea02d2bd8e0f306d81382d5698 rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95e634df087d6476 index 640bbd63..c1f15694 100644 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/6e0463cbdc2d559f2823538d2efee4a8b811c3ea02d2bd8e0f306d81382d5698 +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/95e634df087d6476 @@ -1,2 +1,3 @@ go test fuzz v1 []byte("a0") +[]byte("") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/a7fab38f1f1629f8 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/a7fab38f1f1629f8 new file mode 100644 index 00000000..6d2ad8dc --- /dev/null +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/a7fab38f1f1629f8 @@ -0,0 +1,3 @@ +go test fuzz v1 +[]byte("b0\xd2") +[]byte("0") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/cb84a08ac93f5772ee3ba0f0bcfde81c9cd71a403c69f893cebc8378c60af625 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/cb84a08ac93f5772ee3ba0f0bcfde81c9cd71a403c69f893cebc8378c60af625 deleted file mode 100644 index 21e5bfa4..00000000 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/cb84a08ac93f5772ee3ba0f0bcfde81c9cd71a403c69f893cebc8378c60af625 +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("bbbbbbbbbbbbb0") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e45ead12fae619dd0807aaf83341d58eca4d50fab6eefbe78953581a1a4df198 b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e45ead12fae619dd0807aaf83341d58eca4d50fab6eefbe78953581a1a4df198 deleted file mode 100644 index 51709cd9..00000000 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e45ead12fae619dd0807aaf83341d58eca4d50fab6eefbe78953581a1a4df198 +++ /dev/null @@ -1,2 +0,0 @@ -go test fuzz v1 -[]byte("b0\xcd") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/c4389a565e8280502fc611cde347896b5d167806b2e49e22db23bed73deef75b b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e807a721f4e89fcb similarity index 72% rename from pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/c4389a565e8280502fc611cde347896b5d167806b2e49e22db23bed73deef75b rename to pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e807a721f4e89fcb index 81d331a2..f3f4fc22 100644 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/c4389a565e8280502fc611cde347896b5d167806b2e49e22db23bed73deef75b +++ b/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/e807a721f4e89fcb @@ -1,2 +1,3 @@ go test fuzz v1 []byte("a000") +[]byte("0") diff --git a/pkg/formats/rtplpcm/decoder_test.go b/pkg/formats/rtplpcm/decoder_test.go index c1f9106f..8545e9a4 100644 --- a/pkg/formats/rtplpcm/decoder_test.go +++ b/pkg/formats/rtplpcm/decoder_test.go @@ -31,14 +31,14 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{ - BitDepth: 24, - SampleRate: 48000, - ChannelCount: 2, - } - d.Init() - f.Fuzz(func(t *testing.T, b []byte) { + d := &Decoder{ + BitDepth: 24, + SampleRate: 48000, + ChannelCount: 2, + } + d.Init() + d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, diff --git a/pkg/formats/rtplpcm/testdata/fuzz/FuzzDecoder/582528ddfad69eb57775199a43e0f9fd5c94bba343ce7bb6724d4ebafe311ed4 b/pkg/formats/rtplpcm/testdata/fuzz/FuzzDecoder/582528ddfad69eb5 similarity index 100% rename from pkg/formats/rtplpcm/testdata/fuzz/FuzzDecoder/582528ddfad69eb57775199a43e0f9fd5c94bba343ce7bb6724d4ebafe311ed4 rename to pkg/formats/rtplpcm/testdata/fuzz/FuzzDecoder/582528ddfad69eb5 diff --git a/pkg/formats/rtpmjpeg/decoder_test.go b/pkg/formats/rtpmjpeg/decoder_test.go index 4f67372a..a5747895 100644 --- a/pkg/formats/rtpmjpeg/decoder_test.go +++ b/pkg/formats/rtpmjpeg/decoder_test.go @@ -28,14 +28,26 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() + f.Fuzz(func(t *testing.T, a []byte, am bool, b []byte, bm bool) { + d := &Decoder{} + d.Init() - f.Fuzz(func(t *testing.T, b []byte, m bool) { d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, - Marker: m, + Marker: am, + PayloadType: 96, + SequenceNumber: 17645, + Timestamp: 2289527317, + SSRC: 0x9dbb7812, + }, + Payload: a, + }) + + d.Decode(&rtp.Packet{ + Header: rtp.Header{ + Version: 2, + Marker: bm, PayloadType: 96, SequenceNumber: 17645, Timestamp: 2289527317, diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/5c3e3cea6fcbf660 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/5c3e3cea6fcbf660 new file mode 100644 index 00000000..5fc1e0ff --- /dev/null +++ b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/5c3e3cea6fcbf660 @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("0\x00\x00\x00\x01\xff000\x00\x00@000000000000000000000000000000000000000000000000000000000000000000") +bool(true) +[]byte("0000\x01\xff000000000000000000000000000000000000000000000000000000000000000000000000") +bool(true) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/76a6865e7bb36d841a943abed143b3403b2d0ffaecdf3298988189c118ee10c1 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/76a6865e7bb36d841a943abed143b3403b2d0ffaecdf3298988189c118ee10c1 deleted file mode 100644 index bbe3013d..00000000 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/76a6865e7bb36d841a943abed143b3403b2d0ffaecdf3298988189c118ee10c1 +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("0\x00\x00\x00\x01\xff000\x00\x00@0000000000000000000000000000000000000000000000000000000000000000") -bool(true) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c2ffebd2c319dea9e791ab793c970d84bc212c35134cc2dfb85aa7d862858a49 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/8b8df3a54310aad8 similarity index 72% rename from pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c2ffebd2c319dea9e791ab793c970d84bc212c35134cc2dfb85aa7d862858a49 rename to pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/8b8df3a54310aad8 index 59a71b35..c6b6a4ab 100644 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c2ffebd2c319dea9e791ab793c970d84bc212c35134cc2dfb85aa7d862858a49 +++ b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/8b8df3a54310aad8 @@ -1,3 +1,5 @@ go test fuzz v1 +[]byte("0") +bool(false) []byte("0\x00\x00\x00\x01\xff00") bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/524481b3acf39020 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/acf99ee7fd60497d similarity index 100% rename from pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/524481b3acf39020 rename to pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/acf99ee7fd60497d index b45dccaa..8781752d 100644 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/524481b3acf39020 +++ b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/acf99ee7fd60497d @@ -1,5 +1,5 @@ go test fuzz v1 []byte("") -bool(false) -[]byte("") bool(true) +[]byte("") +bool(false) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/bbed53e53be4cad7bab7f568e12dda0590d7c11c0f890b3816ab6eff536ac9fc b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/bbed53e53be4cad7bab7f568e12dda0590d7c11c0f890b3816ab6eff536ac9fc deleted file mode 100644 index 4c74b177..00000000 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/bbed53e53be4cad7bab7f568e12dda0590d7c11c0f890b3816ab6eff536ac9fc +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("0000\x01\xff00000000000000000000000000000000000000000000000000000000000000000000000") -bool(true) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/be012bfe6e99e126df96e194dc125f8c57860dd62c4244dd7b4e7512cb22a205 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/be012bfe6e99e126df96e194dc125f8c57860dd62c4244dd7b4e7512cb22a205 deleted file mode 100644 index ad13be79..00000000 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/be012bfe6e99e126df96e194dc125f8c57860dd62c4244dd7b4e7512cb22a205 +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("0000\x01\xff00") -bool(false) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c582eb998d5b265e b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c582eb998d5b265e new file mode 100644 index 00000000..f94dc550 --- /dev/null +++ b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/c582eb998d5b265e @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("0\x00\x00\x00\x01\xff000\x00\x00\x8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000") +bool(false) +[]byte("0000\x01\xff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000") +bool(false) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/f1b261959da64dfa b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/f1b261959da64dfa new file mode 100644 index 00000000..16b4b31c --- /dev/null +++ b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/f1b261959da64dfa @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("0") +bool(true) +[]byte("0\x00\x00\x00\x01\xff000\x00\x00\x8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000") +bool(true) diff --git a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/fe09b7699690e38a634478835482b418adf4885a063409efe36d0d6120af5eb9 b/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/fe09b7699690e38a634478835482b418adf4885a063409efe36d0d6120af5eb9 deleted file mode 100644 index 0283daf9..00000000 --- a/pkg/formats/rtpmjpeg/testdata/fuzz/FuzzDecoder/fe09b7699690e38a634478835482b418adf4885a063409efe36d0d6120af5eb9 +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("0000\x01\xff00000000000000000000000000000000000000000000000000000000000000000000000") -bool(false) diff --git a/pkg/formats/rtpmpeg2audio/decoder_test.go b/pkg/formats/rtpmpeg2audio/decoder_test.go index 359b15c9..3c259cb3 100644 --- a/pkg/formats/rtpmpeg2audio/decoder_test.go +++ b/pkg/formats/rtpmpeg2audio/decoder_test.go @@ -27,10 +27,10 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() - f.Fuzz(func(t *testing.T, a []byte, b []byte) { + d := &Decoder{} + d.Init() + d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, diff --git a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/2dcc1140d95305bd b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/07e32c6158459c72 similarity index 100% rename from pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/2dcc1140d95305bd rename to pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/07e32c6158459c72 index ccf6b516..5e6789c0 100644 --- a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/2dcc1140d95305bd +++ b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/07e32c6158459c72 @@ -1,3 +1,3 @@ go test fuzz v1 -[]byte("\x00\x00\x00\x000") []byte("0") +[]byte("\x00\x00\x00\x000") diff --git a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/364d148c8b01f9af b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/364d148c8b01f9af new file mode 100644 index 00000000..f5a1069c --- /dev/null +++ b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/364d148c8b01f9af @@ -0,0 +1,3 @@ +go test fuzz v1 +[]byte("\x00\x00\x00\x00\xff\xfd000") +[]byte("\x00\x00000") diff --git a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/5ca224fc27648f98 b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/5ca224fc27648f98 deleted file mode 100644 index 61b76d08..00000000 --- a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/5ca224fc27648f98 +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("\x00\x00\x00\x05\xff\xff\x05000000000000000000000000000000000000000\xcf\x1c\xe9b\x01NUI00000000000000000000000000000000000000000000000000000000") -[]byte("\x00\x00\x00\x05\xff\xff\x0500") diff --git a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/ce0da9a3a282358d b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/6acba488537bfc0a similarity index 53% rename from pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/ce0da9a3a282358d rename to pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/6acba488537bfc0a index 1b4685a0..dba89886 100644 --- a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/ce0da9a3a282358d +++ b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/6acba488537bfc0a @@ -1,3 +1,3 @@ go test fuzz v1 []byte("0") -[]byte("\x00\x00\x00\x00\xff\xfa\x160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\xff\xfa000") +[]byte("\x00\x00\x00\x00\xff\xfb\x15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\xff\xfb000") diff --git a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 similarity index 69% rename from pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 rename to pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 index 67322c70..b8f15622 100644 --- a/pkg/formats/rtph265/testdata/fuzz/FuzzDecoder/caf81e9797b19c76c1fc4dbf537d4d81f389524539f402d13aa01f93a65ac7e9 +++ b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/84ed65595ad05a58 @@ -1,2 +1,3 @@ go test fuzz v1 +[]byte("0") []byte("") diff --git a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/dda10e4cae014fda b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/910722de931d45a0 similarity index 72% rename from pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/dda10e4cae014fda rename to pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/910722de931d45a0 index 1697b101..85cf67ed 100644 --- a/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/dda10e4cae014fda +++ b/pkg/formats/rtpmpeg2audio/testdata/fuzz/FuzzDecoder/910722de931d45a0 @@ -1,3 +1,3 @@ go test fuzz v1 -[]byte("") +[]byte("0") []byte("00000") diff --git a/pkg/formats/rtpmpeg4audio/decoder_test.go b/pkg/formats/rtpmpeg4audio/decoder_test.go index 8d2209c6..e78270a9 100644 --- a/pkg/formats/rtpmpeg4audio/decoder_test.go +++ b/pkg/formats/rtpmpeg4audio/decoder_test.go @@ -70,15 +70,15 @@ func TestDecodeADTS(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{ - SampleRate: 16000, - SizeLength: 13, - IndexLength: 3, - IndexDeltaLength: 3, - } - d.Init() - f.Fuzz(func(t *testing.T, a []byte, am bool, b []byte, bm bool) { + d := &Decoder{ + SampleRate: 16000, + SizeLength: 13, + IndexLength: 3, + IndexDeltaLength: 3, + } + d.Init() + d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/0133a2a9bd638ceb b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/0133a2a9bd638ceb new file mode 100644 index 00000000..3a53c611 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/0133a2a9bd638ceb @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("0") +bool(true) +[]byte("\x00\x1000") +bool(true) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/079a435e5445c35b b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/079a435e5445c35b new file mode 100644 index 00000000..bd06f9a9 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/079a435e5445c35b @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("") +bool(false) +[]byte("") +bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/571808e383aba6a5 b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/571808e383aba6a5 new file mode 100644 index 00000000..1bd3f8e9 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/571808e383aba6a5 @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("\x00\x01\x00\x00") +bool(false) +[]byte("\x00\x0100") +bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/592eac8c14ce0985 b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/592eac8c14ce0985 deleted file mode 100644 index efd27a6e..00000000 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/592eac8c14ce0985 +++ /dev/null @@ -1,5 +0,0 @@ -go test fuzz v1 -[]byte("\x000\x00\x00\xd8\xd8\xd8\xc8\xd8\xd801") -bool(true) -[]byte("\x00\x01\x00\x00") -bool(true) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/6b33266efc1ae023 b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/6b33266efc1ae023 deleted file mode 100644 index b4f0272a..00000000 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/6b33266efc1ae023 +++ /dev/null @@ -1,5 +0,0 @@ -go test fuzz v1 -[]byte("\x00000000000") -bool(false) -[]byte("") -bool(true) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/8f3e197fb87140b2 b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/8f3e197fb87140b2 new file mode 100644 index 00000000..98332dd7 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/8f3e197fb87140b2 @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("\x00\x01\x00\x00") +bool(false) +[]byte("\x00 0000") +bool(true) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/12dc1f3e61a87bba b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/9418bac23c1c4f72 similarity index 81% rename from pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/12dc1f3e61a87bba rename to pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/9418bac23c1c4f72 index 06c1dc08..11e0d20d 100644 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/12dc1f3e61a87bba +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/9418bac23c1c4f72 @@ -2,4 +2,4 @@ go test fuzz v1 []byte("00") bool(false) []byte("") -bool(true) +bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/97f31764971cea9c b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/97f31764971cea9c new file mode 100644 index 00000000..d24e3b07 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/97f31764971cea9c @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("\x00 0000") +bool(false) +[]byte("0") +bool(true) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/a68704dd42c38106 b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/a68704dd42c38106 new file mode 100644 index 00000000..bbf3e197 --- /dev/null +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/a68704dd42c38106 @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("0") +bool(false) +[]byte("\x00\x0100") +bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c00c7308cebe5e4a b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c00c7308cebe5e4a deleted file mode 100644 index 916529c5..00000000 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c00c7308cebe5e4a +++ /dev/null @@ -1,5 +0,0 @@ -go test fuzz v1 -[]byte("\x00\x10\x00\x00") -bool(false) -[]byte("\x00\x1000") -bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/2f6d3f58d465483d b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c7480ec341b553d6 similarity index 100% rename from pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/2f6d3f58d465483d rename to pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c7480ec341b553d6 index d0e26d7a..4f5f30c5 100644 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/2f6d3f58d465483d +++ b/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/c7480ec341b553d6 @@ -1,5 +1,5 @@ go test fuzz v1 -[]byte("\x00\x00") -bool(false) []byte("") +bool(false) +[]byte("\x00\x00") bool(true) diff --git a/pkg/formats/rtpvp8/decoder_test.go b/pkg/formats/rtpvp8/decoder_test.go index 9bb9dbd8..5b7f026a 100644 --- a/pkg/formats/rtpvp8/decoder_test.go +++ b/pkg/formats/rtpvp8/decoder_test.go @@ -27,14 +27,26 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() + f.Fuzz(func(t *testing.T, a []byte, am bool, b []byte, bm bool) { + d := &Decoder{} + d.Init() - f.Fuzz(func(t *testing.T, b []byte, m bool) { d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, - Marker: m, + Marker: am, + PayloadType: 96, + SequenceNumber: 17645, + Timestamp: 2289527317, + SSRC: 0x9dbb7812, + }, + Payload: a, + }) + + d.Decode(&rtp.Packet{ + Header: rtp.Header{ + Version: 2, + Marker: bm, PayloadType: 96, SequenceNumber: 17645, Timestamp: 2289527317, diff --git a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/c4c11fb7d7de62a02ee8e7d6962d074d82fa5fdd472096dc3ba35696d1649fa4 b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/01b49f6ea4a5f782 similarity index 65% rename from pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/c4c11fb7d7de62a02ee8e7d6962d074d82fa5fdd472096dc3ba35696d1649fa4 rename to pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/01b49f6ea4a5f782 index da84ddf8..3c8ee041 100644 --- a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/c4c11fb7d7de62a02ee8e7d6962d074d82fa5fdd472096dc3ba35696d1649fa4 +++ b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/01b49f6ea4a5f782 @@ -1,3 +1,5 @@ go test fuzz v1 +[]byte("") +bool(false) []byte("1000") bool(false) diff --git a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/079a435e5445c35b b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/079a435e5445c35b new file mode 100644 index 00000000..bd06f9a9 --- /dev/null +++ b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/079a435e5445c35b @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("") +bool(false) +[]byte("") +bool(false) diff --git a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/2b9461645a4b90d2 b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/2b9461645a4b90d2 new file mode 100644 index 00000000..d7de7d05 --- /dev/null +++ b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/2b9461645a4b90d2 @@ -0,0 +1,5 @@ +go test fuzz v1 +[]byte("\xf8\x9a\x9f000") +bool(true) +[]byte(" 00000") +bool(false) diff --git a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/7a1c68afba07c13a12f3686c52a228b2ca8d9794363a61529fcad02658ea03e3 b/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/7a1c68afba07c13a12f3686c52a228b2ca8d9794363a61529fcad02658ea03e3 deleted file mode 100644 index 3a967e37..00000000 --- a/pkg/formats/rtpvp8/testdata/fuzz/FuzzDecoder/7a1c68afba07c13a12f3686c52a228b2ca8d9794363a61529fcad02658ea03e3 +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte(" 000") -bool(false) diff --git a/pkg/formats/rtpvp9/decoder_test.go b/pkg/formats/rtpvp9/decoder_test.go index 53414bcf..a8775291 100644 --- a/pkg/formats/rtpvp9/decoder_test.go +++ b/pkg/formats/rtpvp9/decoder_test.go @@ -27,14 +27,26 @@ func TestDecode(t *testing.T) { } func FuzzDecoder(f *testing.F) { - d := &Decoder{} - d.Init() + f.Fuzz(func(t *testing.T, a []byte, am bool, b []byte, bm bool) { + d := &Decoder{} + d.Init() - f.Fuzz(func(t *testing.T, b []byte, m bool) { d.Decode(&rtp.Packet{ Header: rtp.Header{ Version: 2, - Marker: m, + Marker: am, + PayloadType: 96, + SequenceNumber: 17645, + Timestamp: 2289527317, + SSRC: 0x9dbb7812, + }, + Payload: a, + }) + + d.Decode(&rtp.Packet{ + Header: rtp.Header{ + Version: 2, + Marker: bm, PayloadType: 96, SequenceNumber: 17645, Timestamp: 2289527317, diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/23e26cf358a800e8 b/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/41b798362d81811a similarity index 54% rename from pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/23e26cf358a800e8 rename to pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/41b798362d81811a index a0907f15..af2617b1 100644 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/23e26cf358a800e8 +++ b/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/41b798362d81811a @@ -1,5 +1,5 @@ go test fuzz v1 -[]byte("00") -bool(false) -[]byte("\x00\f00") +[]byte("M") bool(true) +[]byte("A") +bool(false) diff --git a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/3f92dc5bae9d3239 b/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/5c3924785d154da4 similarity index 73% rename from pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/3f92dc5bae9d3239 rename to pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/5c3924785d154da4 index 54a3aa3e..832547f1 100644 --- a/pkg/formats/rtpmpeg4audio/testdata/fuzz/FuzzDecoder/3f92dc5bae9d3239 +++ b/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/5c3924785d154da4 @@ -1,5 +1,5 @@ go test fuzz v1 []byte("0") bool(false) -[]byte("\x00\f00") +[]byte("") bool(false) diff --git a/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/a562b457d1a04bb296308020307f2e271491c804e84959ad2d5fdaa2e32b6a0f b/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/a562b457d1a04bb296308020307f2e271491c804e84959ad2d5fdaa2e32b6a0f deleted file mode 100644 index 0d61da40..00000000 --- a/pkg/formats/rtpvp9/testdata/fuzz/FuzzDecoder/a562b457d1a04bb296308020307f2e271491c804e84959ad2d5fdaa2e32b6a0f +++ /dev/null @@ -1,3 +0,0 @@ -go test fuzz v1 -[]byte("") -bool(true)