From d2e23c69f42f151b254232aa445c94e65c28134c Mon Sep 17 00:00:00 2001 From: Nico Grunbaum Date: Tue, 23 Jan 2024 18:38:23 +0000 Subject: [PATCH] Bug 1875184 - vendor webrtc-sdp 0.3.11;r=mjf,supply-chain-reviewers Differential Revision: https://phabricator.services.mozilla.com/D198894 --- Cargo.lock | 4 +- supply-chain/audits.toml | 5 + .../rust/webrtc-sdp/.cargo-checksum.json | 2 +- third_party/rust/webrtc-sdp/CHANGELOG.md | 2 + third_party/rust/webrtc-sdp/Cargo.lock | 104 ++++++++---------- third_party/rust/webrtc-sdp/Cargo.toml | 2 +- third_party/rust/webrtc-sdp/README.md | 2 +- .../rust/webrtc-sdp/examples/file_parser.rs | 4 +- .../rust/webrtc-sdp/src/attribute_type.rs | 81 ++++++-------- third_party/rust/webrtc-sdp/src/error.rs | 85 ++++++-------- .../rust/webrtc-sdp/src/error_tests.rs | 26 ++--- third_party/rust/webrtc-sdp/src/lib.rs | 37 +++---- third_party/rust/webrtc-sdp/src/media_type.rs | 25 ++--- third_party/rust/webrtc-sdp/src/network.rs | 4 +- .../rust/webrtc-sdp/tests/parse_sdp_tests.rs | 28 ++--- 15 files changed, 175 insertions(+), 236 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index eab6f5001809..e5add78b7795 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6386,9 +6386,9 @@ dependencies = [ [[package]] name = "webrtc-sdp" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b27cfe685c697666a76932399d55026bf2a5a205d91d277fd16346f0c65a7c06" +checksum = "c7351fba122c7f6566779efdef49d2213e842f69fa1c654eef1fd9301f425064" dependencies = [ "log", "url", diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml index 181f22184c7c..3b8104ea2890 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml @@ -4286,6 +4286,11 @@ who = "Byron Campen " criteria = "safe-to-deploy" delta = "0.3.9 -> 0.3.10" +[[audits.webrtc-sdp]] +who = "Nicolas Grunbaum " +criteria = "safe-to-deploy" +delta = "0.3.10 -> 0.3.11" + [[audits.weedle2]] who = "Travis Long " criteria = "safe-to-deploy" diff --git a/third_party/rust/webrtc-sdp/.cargo-checksum.json b/third_party/rust/webrtc-sdp/.cargo-checksum.json index 0005bd3a1c06..778f77c392e5 100644 --- a/third_party/rust/webrtc-sdp/.cargo-checksum.json +++ b/third_party/rust/webrtc-sdp/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CHANGELOG.md":"4b89972551b4ab0e2f356b4c60793afb32ef2ef2fc0b0c1a06be1ad7b74a221f","CODE_OF_CONDUCT.md":"ab482a6e8d9ed00cc77e0f90d823210e3368201ed98d9fda36033fd19aff24c4","Cargo.lock":"621902f08130478e91113d7b7366b2a77e52a0ad8191efcc9561b70ff6fe3f3a","Cargo.toml":"03cb289103f9e2f24cb66907894a882c7c4a3dab6b961742133b7a255b2910ce","LICENSE":"1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5","README.md":"f7c94b31d9678c38fcd88e071b59b767ed73b3f1262b84bd957e2fc85bc5b1a1","examples/file_parser.rs":"3d7a4da7fb25db7260b394db7fd6bcdf5540f9e2b2bfc5d7ad12077b3871c910","examples/sdps/02.sdp":"bda3c63d42091eb8dc6cda46e1ed252020b76bbc78563a36244d49a95ff11d00","examples/sdps/03.sdp":"a18aa7be19dd911779dafce2c92b3ed21084598ecb9eb45c0d665f1925030547","examples/sdps/04.sdp":"a8139befd817711e301a16db7f12e24410add1fa39c8a8de77ae25cdd4baab5e","examples/sdps/05.sdp":"445febdc16afeed4bf36c4b30e1952b8915078248c6bb6f9d4eb6e16c75f7065","examples/sdps/06.sdp":"49fb363dfab70340b3906015e1f4fb8d5058267995dd4e344b0e021429da58de","examples/sdps/07.sdp":"03d2a6847d9a405eeaaec2d7011e81aa73b63b33d22a4f7371dff7e9c82ba096","examples/sdps/08.sdp":"bcab5d8b258e3bcdcd21a3299e51b26e6563d549b74f612780d2e3be8a0495c5","examples/sdps/09.sdp":"c771c5aa3efc4acb4b47f488fb9ceaedd6f94f706fd92c704e98fa26d3f37e29","examples/sdps/10.sdp":"deb23d5578a20df6e16ffbda193a4ba97df7131ce95eac3677b4d2fc74e50003","examples/sdps/11.sdp":"7e14a6d290a659b715f32a5257cb0035126c9bb9c7e1dac26f757bf36c93dc09","examples/sdps/12.sdp":"8ad9b018ba1c62865520d65869b568f6750f4ff93deca238f6c04dd468562dc9","examples/sdps/13.sdp":"d396c398247c253fcf5ed087fd5a3334ce2f8c66efd93638d2e8884dc318eac1","examples/sdps/14.sdp":"b714a4216e8d44bc71b9430d49229b61dd9e6a5b3fbda15ed8c0c76843154c9e","examples/sdps/15.sdp":"c96e468a51db1e205898867dcc95af0bd544676eceb4d930c24cdd4c8e8ce152","examples/sdps/16.sdp":"034c556ef8d0c9972c7b8f37e8b419f343e3ac993794e2f20c946a8ebd1cb781","examples/sdps/17.sdp":"b35628e255798817539420528950b05dd2369920d5c00a0279de25679056363b","examples/sdps/18.sdp":"d60f4530b98f6ab9fa68a4e1c7d899220f43e3596f5ed82b008d867d27d464c6","examples/sdps/19.sdp":"2929f883bc54cfd52d8a41e6dbe4ab46a307611ea6f974d22f6f81e2a6e861cc","examples/sdps/20.sdp":"f087414d44f4edc0238ce429a7fd9ee764180a11758c80dcb3f18ff596411144","examples/sdps/21.sdp":"50ee7dad5aa101cc6460d6136a173b894f8ec3b2304eb6b89739d794c2593858","examples/sdps/22.sdp":"60ba3631584333b07c9ba482b2681dfd5f47961485bd9869c0ce399ac78a28c0","examples/sdps/23.sdp":"e19f374de91927c54019b41681ab9116a781b3434151bbb9b1e333ba5ba15305","examples/sdps/24.sdp":"cf410817c7ac2c61c94b02ae24696da54c5439d182b919f0804aefa985b7dec6","examples/sdps/25.sdp":"0aba5390d78b948477f4116a3665f3b0214f1c7c8cb7d7308563ff7b66b3320c","examples/sdps/26.sdp":"02edf268aec6562db717d2e7e090eccccc336f37232cbd0c9848dc396cd1f68d","examples/sdps/27.sdp":"1950a83ff7311d75eaee8fc6a88f54034540add4a413b8c97daad258bc11510a","examples/sdps/28.sdp":"0bd3d1dad72087f90d67996d71a190c56701e8866f248406db8e183c6deee4cd","examples/sdps/29.sdp":"60a71fab3f0facef4e045f78eabb1ff4f1150393427f6720e1228e010edc2f26","examples/sdps/30.sdp":"52fb5119e4a18026b9fe0e10732e621dd13ace847e68ab51687cb633761eeabc","examples/sdps/31.sdp":"6080176767fc4188903b08f98a6fdbca2478fb923b79f31bb741d91e8cc1c4a5","examples/sdps/32.sdp":"b764977a4be5d3808260eaf93c2ec7c6aba7e4589996dd514e9d3bd8d3d02975","examples/sdps/33.sdp":"bd6367ad1abe795576c58c34be6bf5d2073db3343c0edb02a88cf314176fdc51","examples/sdps/34.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/35.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/36.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/37.sdp":"64623a06b325f6219b645c2cf3072703443104ac68c8f02aeb1ac68107f13ab8","examples/sdps/38.sdp":"f59fd5295eebd62acb79708f5258ac4e92082f5725f50348ba31675c2bd9c3a9","examples/sdps/39.sdp":"e3ea9870d76f6257d27d1222f7b74a247a6556d5361479c64d2db11b5c6e2b8d","examples/sdps/40.sdp":"e3ea9870d76f6257d27d1222f7b74a247a6556d5361479c64d2db11b5c6e2b8d","examples/sdps/41.sdp":"186e94e19a6bd802dd787a1a251c39d903aa86dda4f22bb6bb7aeb7678587141","examples/sdps/extract.sh":"fa9daf98313f57ff7717841da9a5f2bf3e30394baded7c42023173b53a09e6d8","src/address.rs":"03e0fa68654f6b3c741d2dd6fee0c0607c888a86db4fcc4407527ade75cc5cd6","src/address_tests.rs":"341ab6d0ca557f44afee38b3ac0686376380c514791f515a3bb47a626b570146","src/anonymizer.rs":"8a1a7a4760739fd8a485c6fa239904f1e220a2b4d82560a236366f14f7cd09fa","src/anonymizer_tests.rs":"83010f8cc3eca078cb0ff56330e7209e4ea252cb1af1a08b6586114f313af048","src/attribute_type.rs":"160272378433218ace2781e46c2eb43cbff20a44aff053d4be37da5b2ba7c218","src/attribute_type_tests.rs":"2de570936176084ec2dd459372093b824332287edce7ad244ee84d0d94acb0de","src/error.rs":"01dfaa6459756d30e040fd26be9c5ca60c8d64d77d1c084b2fcb453980702037","src/error_tests.rs":"04dd5c50f6476e18183ef670ac84cf9232c154c824b5bf7a22a451030c0755c8","src/lib.rs":"0166c8f32f342f249c047e87d5c8729cba3aef80c52679edf72108bb2f93dc99","src/lib_tests.rs":"84529660be0e7fa0a27ed0d0fb296e8a781c1213bfb9dfa6308c207c66a5be6c","src/media_type.rs":"2cf2cf972b997ac93cf0f0fa80697aceebadf3a8b5025114f48437d9668b3770","src/media_type_tests.rs":"b5924469c5637521042e86941871f5d297b35dda5909652c61b2954e8217bb06","src/network.rs":"d2b4874dbecdf730c0570faa154fe2838301e56580984a6b24b132506e3a24b7","src/network_tests.rs":"305d6ac7a7e95e81f96541a6e83fdfa2ba9ca00398803946ecbc2cae24719a2c","tests/parse_sdp_tests.rs":"da02804779b199887a69d9fb47096ce28a38c84230cc8536c8a71c3b29b9b9b3"},"package":"b27cfe685c697666a76932399d55026bf2a5a205d91d277fd16346f0c65a7c06"} \ No newline at end of file +{"files":{"CHANGELOG.md":"43327b4e426dcfc45fc4b5a6c3090064661033fbed4de24ba3fd15de414173fd","CODE_OF_CONDUCT.md":"ab482a6e8d9ed00cc77e0f90d823210e3368201ed98d9fda36033fd19aff24c4","Cargo.lock":"d7c87b5013450b940f537afc5d7cd8397aa93932228f26a4dc07df9d2553e9b3","Cargo.toml":"77e912d6089d0e49dbe83634246d0708040c49b57955aed943b712c728257001","LICENSE":"1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5","README.md":"7d0c31ab88fb4b9eff849652f89b14940a83b836f10f11750957d73842fe25f6","examples/file_parser.rs":"f95b331d331feb3859a5092d4ed70389711c9f461359d23303aea6a4f8ca5ff6","examples/sdps/02.sdp":"bda3c63d42091eb8dc6cda46e1ed252020b76bbc78563a36244d49a95ff11d00","examples/sdps/03.sdp":"a18aa7be19dd911779dafce2c92b3ed21084598ecb9eb45c0d665f1925030547","examples/sdps/04.sdp":"a8139befd817711e301a16db7f12e24410add1fa39c8a8de77ae25cdd4baab5e","examples/sdps/05.sdp":"445febdc16afeed4bf36c4b30e1952b8915078248c6bb6f9d4eb6e16c75f7065","examples/sdps/06.sdp":"49fb363dfab70340b3906015e1f4fb8d5058267995dd4e344b0e021429da58de","examples/sdps/07.sdp":"03d2a6847d9a405eeaaec2d7011e81aa73b63b33d22a4f7371dff7e9c82ba096","examples/sdps/08.sdp":"bcab5d8b258e3bcdcd21a3299e51b26e6563d549b74f612780d2e3be8a0495c5","examples/sdps/09.sdp":"c771c5aa3efc4acb4b47f488fb9ceaedd6f94f706fd92c704e98fa26d3f37e29","examples/sdps/10.sdp":"deb23d5578a20df6e16ffbda193a4ba97df7131ce95eac3677b4d2fc74e50003","examples/sdps/11.sdp":"7e14a6d290a659b715f32a5257cb0035126c9bb9c7e1dac26f757bf36c93dc09","examples/sdps/12.sdp":"8ad9b018ba1c62865520d65869b568f6750f4ff93deca238f6c04dd468562dc9","examples/sdps/13.sdp":"d396c398247c253fcf5ed087fd5a3334ce2f8c66efd93638d2e8884dc318eac1","examples/sdps/14.sdp":"b714a4216e8d44bc71b9430d49229b61dd9e6a5b3fbda15ed8c0c76843154c9e","examples/sdps/15.sdp":"c96e468a51db1e205898867dcc95af0bd544676eceb4d930c24cdd4c8e8ce152","examples/sdps/16.sdp":"034c556ef8d0c9972c7b8f37e8b419f343e3ac993794e2f20c946a8ebd1cb781","examples/sdps/17.sdp":"b35628e255798817539420528950b05dd2369920d5c00a0279de25679056363b","examples/sdps/18.sdp":"d60f4530b98f6ab9fa68a4e1c7d899220f43e3596f5ed82b008d867d27d464c6","examples/sdps/19.sdp":"2929f883bc54cfd52d8a41e6dbe4ab46a307611ea6f974d22f6f81e2a6e861cc","examples/sdps/20.sdp":"f087414d44f4edc0238ce429a7fd9ee764180a11758c80dcb3f18ff596411144","examples/sdps/21.sdp":"50ee7dad5aa101cc6460d6136a173b894f8ec3b2304eb6b89739d794c2593858","examples/sdps/22.sdp":"60ba3631584333b07c9ba482b2681dfd5f47961485bd9869c0ce399ac78a28c0","examples/sdps/23.sdp":"e19f374de91927c54019b41681ab9116a781b3434151bbb9b1e333ba5ba15305","examples/sdps/24.sdp":"cf410817c7ac2c61c94b02ae24696da54c5439d182b919f0804aefa985b7dec6","examples/sdps/25.sdp":"0aba5390d78b948477f4116a3665f3b0214f1c7c8cb7d7308563ff7b66b3320c","examples/sdps/26.sdp":"02edf268aec6562db717d2e7e090eccccc336f37232cbd0c9848dc396cd1f68d","examples/sdps/27.sdp":"1950a83ff7311d75eaee8fc6a88f54034540add4a413b8c97daad258bc11510a","examples/sdps/28.sdp":"0bd3d1dad72087f90d67996d71a190c56701e8866f248406db8e183c6deee4cd","examples/sdps/29.sdp":"60a71fab3f0facef4e045f78eabb1ff4f1150393427f6720e1228e010edc2f26","examples/sdps/30.sdp":"52fb5119e4a18026b9fe0e10732e621dd13ace847e68ab51687cb633761eeabc","examples/sdps/31.sdp":"6080176767fc4188903b08f98a6fdbca2478fb923b79f31bb741d91e8cc1c4a5","examples/sdps/32.sdp":"b764977a4be5d3808260eaf93c2ec7c6aba7e4589996dd514e9d3bd8d3d02975","examples/sdps/33.sdp":"bd6367ad1abe795576c58c34be6bf5d2073db3343c0edb02a88cf314176fdc51","examples/sdps/34.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/35.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/36.sdp":"4dc1bbfdf292f2303ff3e6f26ee9db87164e57464d077e8e94c3c11490d4f839","examples/sdps/37.sdp":"64623a06b325f6219b645c2cf3072703443104ac68c8f02aeb1ac68107f13ab8","examples/sdps/38.sdp":"f59fd5295eebd62acb79708f5258ac4e92082f5725f50348ba31675c2bd9c3a9","examples/sdps/39.sdp":"e3ea9870d76f6257d27d1222f7b74a247a6556d5361479c64d2db11b5c6e2b8d","examples/sdps/40.sdp":"e3ea9870d76f6257d27d1222f7b74a247a6556d5361479c64d2db11b5c6e2b8d","examples/sdps/41.sdp":"186e94e19a6bd802dd787a1a251c39d903aa86dda4f22bb6bb7aeb7678587141","examples/sdps/extract.sh":"fa9daf98313f57ff7717841da9a5f2bf3e30394baded7c42023173b53a09e6d8","src/address.rs":"03e0fa68654f6b3c741d2dd6fee0c0607c888a86db4fcc4407527ade75cc5cd6","src/address_tests.rs":"341ab6d0ca557f44afee38b3ac0686376380c514791f515a3bb47a626b570146","src/anonymizer.rs":"8a1a7a4760739fd8a485c6fa239904f1e220a2b4d82560a236366f14f7cd09fa","src/anonymizer_tests.rs":"83010f8cc3eca078cb0ff56330e7209e4ea252cb1af1a08b6586114f313af048","src/attribute_type.rs":"911b861ce4d472ff8d141b179d1e11b33ef8a4bd25d3d68324f6705002c8a268","src/attribute_type_tests.rs":"2de570936176084ec2dd459372093b824332287edce7ad244ee84d0d94acb0de","src/error.rs":"e5126288a412c1c4af8682ab1524e9136e5d1dfe5fc769a13b0b5bd6b1f3c3b0","src/error_tests.rs":"3b2e62656d7e4ef0a6510308141c5eb5aaf0d2153c867e632bc4eeb4df81b9e0","src/lib.rs":"4ff763fcf29f822ae0ac6ace347b46958630055fd9c438dc43be05cc0d520fac","src/lib_tests.rs":"84529660be0e7fa0a27ed0d0fb296e8a781c1213bfb9dfa6308c207c66a5be6c","src/media_type.rs":"05130ef272827282033894b1e3d2c6784be8dcde42c74c397d0fb76fd8e2c40c","src/media_type_tests.rs":"b5924469c5637521042e86941871f5d297b35dda5909652c61b2954e8217bb06","src/network.rs":"2a4e31da138f3b167af00690b625be25355ed705197b57b0dc3832db118f0926","src/network_tests.rs":"305d6ac7a7e95e81f96541a6e83fdfa2ba9ca00398803946ecbc2cae24719a2c","tests/parse_sdp_tests.rs":"3996ee888e238bd4dff1271ed120644bb22ac9b7d14510257c35417223e562d3"},"package":"c7351fba122c7f6566779efdef49d2213e842f69fa1c654eef1fd9301f425064"} \ No newline at end of file diff --git a/third_party/rust/webrtc-sdp/CHANGELOG.md b/third_party/rust/webrtc-sdp/CHANGELOG.md index dd0ace9fb945..42a0cc5dc1a4 100644 --- a/third_party/rust/webrtc-sdp/CHANGELOG.md +++ b/third_party/rust/webrtc-sdp/CHANGELOG.md @@ -1,4 +1,6 @@ # Changelog +## [0.3.11] - 2024-01-17 +- Permit a wider set of payload type numbers ## [0.3.10] - 2023-01-05 - Permit inconsistent simulcast directions ## [0.3.9] - 2022-01-12 diff --git a/third_party/rust/webrtc-sdp/Cargo.lock b/third_party/rust/webrtc-sdp/Cargo.lock index e7ab67d5ab16..f133c1f3fe34 100644 --- a/third_party/rust/webrtc-sdp/Cargo.lock +++ b/third_party/rust/webrtc-sdp/Cargo.lock @@ -2,95 +2,78 @@ # It is not intended for manual editing. version = 3 -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - [[package]] name = "form_urlencoded" -version = "1.0.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ - "matches", "percent-encoding", ] [[package]] name = "idna" -version = "0.2.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ - "matches", "unicode-bidi", "unicode-normalization", ] [[package]] name = "itoa" -version = "1.0.1" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "log" -version = "0.4.14" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "matches" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" [[package]] name = "percent-encoding" -version = "2.1.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "proc-macro2" -version = "1.0.36" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ - "unicode-xid", + "unicode-ident", ] [[package]] name = "quote" -version = "1.0.14" +version = "1.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d" +checksum = "5fe8a65d69dd0808184ebb5f836ab526bb259db23c657efa38711b1072ee47f0" dependencies = [ "proc-macro2", ] [[package]] name = "ryu" -version = "1.0.9" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "serde" -version = "1.0.133" +version = "1.0.173" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a" +checksum = "e91f70896d6720bc714a4a57d22fc91f1db634680e65c8efe13323f1fa38d53f" [[package]] name = "serde_derive" -version = "1.0.133" +version = "1.0.173" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537" +checksum = "a6250dde8342e0232232be9ca3db7aa40aceb5a3e5dd9bddbc00d99a007cde49" dependencies = [ "proc-macro2", "quote", @@ -99,9 +82,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.74" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142" +checksum = "d03b412469450d4404fe8499a268edd7f8b79fecb074b0d812ad64ca21f4031b" dependencies = [ "itoa", "ryu", @@ -110,66 +93,65 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.85" +version = "2.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7" +checksum = "45c3457aacde3c65315de5031ec191ce46604304d2446e803d71ade03308d970" dependencies = [ "proc-macro2", "quote", - "unicode-xid", + "unicode-ident", ] [[package]] name = "tinyvec" -version = "1.5.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" dependencies = [ "tinyvec_macros", ] [[package]] name = "tinyvec_macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "unicode-bidi" -version = "0.3.7" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" + +[[package]] +name = "unicode-ident" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" [[package]] name = "unicode-normalization" -version = "0.1.19" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" dependencies = [ "tinyvec", ] -[[package]] -name = "unicode-xid" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" - [[package]] name = "url" -version = "2.2.2" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" +checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" dependencies = [ "form_urlencoded", "idna", - "matches", "percent-encoding", ] [[package]] name = "webrtc-sdp" -version = "0.3.10" +version = "0.3.11" dependencies = [ "log", "serde", diff --git a/third_party/rust/webrtc-sdp/Cargo.toml b/third_party/rust/webrtc-sdp/Cargo.toml index 133b6e6c11ee..a84ed53bb571 100644 --- a/third_party/rust/webrtc-sdp/Cargo.toml +++ b/third_party/rust/webrtc-sdp/Cargo.toml @@ -11,7 +11,7 @@ [package] name = "webrtc-sdp" -version = "0.3.10" +version = "0.3.11" authors = [ "Nicolas Grunbaum ", "Nils Ohlmeier ", diff --git a/third_party/rust/webrtc-sdp/README.md b/third_party/rust/webrtc-sdp/README.md index e3cf04f0c168..6c679ed3e2cd 100644 --- a/third_party/rust/webrtc-sdp/README.md +++ b/third_party/rust/webrtc-sdp/README.md @@ -10,7 +10,7 @@ A SDP parser written in Rust specifically aimed to handle WebRTC SDP offers and ## Dependecies -* Rust >= 1.45.0 +* Rust >= 1.60.0 * log module * serde module * serde-derive module diff --git a/third_party/rust/webrtc-sdp/examples/file_parser.rs b/third_party/rust/webrtc-sdp/examples/file_parser.rs index 48851f35f100..5997e8a77008 100644 --- a/third_party/rust/webrtc-sdp/examples/file_parser.rs +++ b/third_party/rust/webrtc-sdp/examples/file_parser.rs @@ -25,7 +25,7 @@ fn main() { let path = Path::new(filename.as_str()); let display = path.display(); - let mut file = match File::open(&path) { + let mut file = match File::open(path) { Err(why) => panic!("Failed to open {}: {}", display, why), Ok(file) => file, }; @@ -61,7 +61,7 @@ fn main() { let res = webrtc_sdp::parse_sdp(&s, true); match res { Err(why) => panic!("Failed to parse SDP with error: {}", why), - Ok(sdp) => println!("Parsed SDP structure:\n{:#?}", sdp), + Ok(sdp) => println!("Parsed SDP structure:\n{sdp:#?}"), } if expect_failure { diff --git a/third_party/rust/webrtc-sdp/src/attribute_type.rs b/third_party/rust/webrtc-sdp/src/attribute_type.rs index 9ae3d3e99a69..7c667698b5f3 100644 --- a/third_party/rust/webrtc-sdp/src/attribute_type.rs +++ b/third_party/rust/webrtc-sdp/src/attribute_type.rs @@ -221,7 +221,7 @@ impl fmt::Display for SdpAttributeCandidate { unknown = self .unknown_extensions .iter() - .map(|&(ref name, ref value)| format!(" {} {}", name, value)) + .map(|(name, value)| format!(" {name} {value}")) .collect::() ) } @@ -308,9 +308,9 @@ pub enum SdpAttributeDtlsMessage { impl fmt::Display for SdpAttributeDtlsMessage { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - match *self { - SdpAttributeDtlsMessage::Client(ref msg) => format!("client {}", msg), - SdpAttributeDtlsMessage::Server(ref msg) => format!("server {}", msg), + match self { + SdpAttributeDtlsMessage::Client(msg) => format!("client {msg}"), + SdpAttributeDtlsMessage::Server(msg) => format!("server {msg}"), } .fmt(f) } @@ -622,7 +622,7 @@ impl fmt::Display for SdpAttributeFmtpParameters { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { if let Some(ref rtx) = self.rtx { // rtx - return write!(f, "{}", rtx); + return write!(f, "{rtx}"); } if !self.dtmf_tones.is_empty() { // telephone-event @@ -713,8 +713,7 @@ impl SdpAttributeFingerprintHashType { "sha-384" => Ok(Self::Sha384), "sha-512" => Ok(Self::Sha512), unknown => Err(SdpParserInternalError::Unsupported(format!( - "fingerprint contains an unsupported hash algorithm '{}'", - unknown + "fingerprint contains an unsupported hash algorithm '{unknown}'" ))), } } @@ -786,8 +785,7 @@ impl TryFrom<(SdpAttributeFingerprintHashType, Vec)> for SdpAttributeFingerp fingerprint, }), (a, b) => Err(SdpParserInternalError::Generic(format!( - "Hash algoritm expects {} fingerprint bytes not {}", - a, b + "Hash algoritm expects {a} fingerprint bytes not {b}", ))), } } @@ -802,7 +800,7 @@ impl fmt::Display for SdpAttributeFingerprint { fp = self .fingerprint .iter() - .map(|byte| format!("{:02X}", byte)) + .map(|byte| format!("{byte:02X}")) .collect::>() .join(":") ) @@ -846,11 +844,11 @@ impl fmt::Display for SdpAttributeImageAttrXyRange { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { SdpAttributeImageAttrXyRange::Range(ref min, ref max, ref step_opt) => { - write!(f, "[{}:", min)?; + write!(f, "[{min}:")?; if step_opt.is_some() { write!(f, "{}:", step_opt.unwrap())?; } - write!(f, "{}]", max) + write!(f, "{max}]") } SdpAttributeImageAttrXyRange::DiscreteValues(ref values) => { write!(f, "{}", imageattr_discrete_value_list_to_string(values)) @@ -868,9 +866,9 @@ pub enum SdpAttributeImageAttrSRange { impl fmt::Display for SdpAttributeImageAttrSRange { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - match *self { - SdpAttributeImageAttrSRange::Range(ref min, ref max) => write!(f, "[{}-{}]", min, max), - SdpAttributeImageAttrSRange::DiscreteValues(ref values) => { + match self { + SdpAttributeImageAttrSRange::Range(min, max) => write!(f, "[{min}-{max}]"), + SdpAttributeImageAttrSRange::DiscreteValues(values) => { write!(f, "{}", imageattr_discrete_value_list_to_string(values)) } } @@ -1110,7 +1108,7 @@ impl fmt::Display for SdpAttributeRid { .as_str() { "" => "".to_string(), - x => format!(" {}", x), + x => format!(" {x}"), } ) } @@ -1195,7 +1193,7 @@ impl SdpAttributeSsrc { } fn set_attribute(&mut self, a: &str) { - if a.find(':') == None { + if a.find(':').is_none() { self.attribute = Some(a.to_string()); } else { let v: Vec<&str> = a.splitn(2, ':').collect(); @@ -1415,8 +1413,7 @@ impl FromStr for SdpAttribute { | "ice-mismatch" | "inactive" | "recvonly" | "rtcp-mux" | "rtcp-mux-only" | "rtcp-rsize" | "sendonly" | "sendrecv" => { return Err(SdpParserInternalError::Generic(format!( - "{} attribute is not allowed to have a value", - name + "{name} attribute is not allowed to have a value", ))); } _ => (), @@ -1466,8 +1463,7 @@ impl FromStr for SdpAttribute { "simulcast" => parse_simulcast(val), "ssrc" => parse_ssrc(val), _ => Err(SdpParserInternalError::Unsupported(format!( - "Unknown attribute type {}", - name + "Unknown attribute type {name}", ))), } } @@ -1710,8 +1706,7 @@ fn parse_single_direction(to_parse: &str) -> Result Ok(SdpSingleDirection::Send), "recv" => Ok(SdpSingleDirection::Recv), x => Err(SdpParserInternalError::Generic(format!( - "Unknown direction description found: '{:}'", - x + "Unknown direction description found: '{x:}'" ))), } } @@ -1736,8 +1731,7 @@ fn parse_ssrc_group(to_parse: &str) -> Result SdpSsrcGroupSemantic::Sim, unknown => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown ssrc semantic '{:?}' found", - unknown + "Unknown ssrc semantic '{unknown:?}' found" ))); } }, @@ -1773,8 +1767,7 @@ fn parse_sctp_port(to_parse: &str) -> Result 65535 { return Err(SdpParserInternalError::Generic(format!( - "Sctpport port {} can only be a bit 16bit number", - port + "Sctpport port {port} can only be a bit 16bit number" ))); } Ok(SdpAttribute::SctpPort(port)) @@ -1948,8 +1941,7 @@ fn parse_dtls_message(to_parse: &str) -> Result SdpAttributeDtlsMessage::Server(tokens[1].to_string()), e => { return Err(SdpParserInternalError::Generic(format!( - "dtls-message has unknown role token '{}'", - e + "dtls-message has unknown role token '{e}'" ))); } })) @@ -1991,7 +1983,7 @@ fn parse_extmap(to_parse: &str) -> Result } let id: u16; let mut direction: Option = None; - if tokens[0].find('/') == None { + if tokens[0].find('/').is_none() { id = tokens[0].parse::()?; } else { let id_dir: Vec<&str> = tokens[0].splitn(2, '/').collect(); @@ -2121,8 +2113,7 @@ fn parse_fmtp(to_parse: &str) -> Result { 0 => Ok(false), 1 => Ok(true), _ => Err(SdpParserInternalError::Generic(format!( - "The fmtp parameter '{:}' must be 0 or 1", - param_name + "The fmtp parameter '{param_name:}' must be 0 or 1" ))), } }; @@ -2300,8 +2291,7 @@ fn parse_group(to_parse: &str) -> Result { "BUNDLE" => SdpAttributeGroupSemantic::Bundle, unknown => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown group semantic '{:?}' found", - unknown + "Unknown group semantic '{unknown:?}' found", ))); } }, @@ -3052,8 +3042,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result "transport-cc" => SdpAttributeRtcpFbType::TransCc, _ => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown rtcpfb feedback type: {:?}", - x + "Unknown rtcpfb feedback type: {x:?}" ))); } }, @@ -3071,8 +3060,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result "rpsi" | "app" => (*x).to_string(), _ => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown rtcpfb ack parameter: {:?}", - x + "Unknown rtcpfb ack parameter: {x:?}" ))); } }, @@ -3087,8 +3075,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result "fir" | "tmmbr" | "tstr" | "vbcm" => (*x).to_string(), _ => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown rtcpfb ccm parameter: {:?}", - x + "Unknown rtcpfb ccm parameter: {x:?}" ))); } }, @@ -3099,8 +3086,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result "sli" | "pli" | "rpsi" | "app" => (*x).to_string(), _ => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown rtcpfb nack parameter: {:?}", - x + "Unknown rtcpfb nack parameter: {x:?}" ))); } }, @@ -3111,8 +3097,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result _ if x.parse::().is_ok() => (*x).to_string(), _ => { return Err(SdpParserInternalError::Generic(format!( - "Unknown rtcpfb trr-int parameter: {:?}", - x + "Unknown rtcpfb trr-int parameter: {x:?}" ))); } }, @@ -3125,8 +3110,7 @@ fn parse_rtcp_fb(to_parse: &str) -> Result SdpAttributeRtcpFbType::Remb | SdpAttributeRtcpFbType::TransCc => match tokens.get(2) { Some(x) => { return Err(SdpParserInternalError::Unsupported(format!( - "Unknown rtcpfb {} parameter: {:?}", - feedback_type, x + "Unknown rtcpfb {feedback_type} parameter: {x:?}" ))); } None => "".to_string(), @@ -3213,8 +3197,7 @@ fn parse_simulcast_version_list( descriptor_versionlist_pair.next().unwrap(), )), descriptor => Err(SdpParserInternalError::Generic(format!( - "Simulcast attribute has unknown list descriptor '{:?}'", - descriptor + "Simulcast attribute has unknown list descriptor '{descriptor:?}'" ))), } } else { @@ -3249,7 +3232,7 @@ fn parse_simulcast_version_list( // ; rid-id defined in [I-D.ietf-mmusic-rid] fn parse_simulcast(to_parse: &str) -> Result { // TODO: Bug 1225877: Stop accepting all kinds of whitespace here, and only accept SP - let mut tokens = to_parse.trim().split_whitespace(); + let mut tokens = to_parse.split_whitespace(); let first_direction = match tokens.next() { Some(x) => parse_single_direction(x)?, None => { diff --git a/third_party/rust/webrtc-sdp/src/error.rs b/third_party/rust/webrtc-sdp/src/error.rs index bf2e7d56fc71..c1cbc49a72f5 100644 --- a/third_party/rust/webrtc-sdp/src/error.rs +++ b/third_party/rust/webrtc-sdp/src/error.rs @@ -36,27 +36,25 @@ impl fmt::Display for SdpParserInternalError { match *self { SdpParserInternalError::UnknownAddressType(ref unknown) => write!( f, - "{}: {}", - INTERNAL_ERROR_MESSAGE_UNKNOWN_ADDRESS_TYPE, unknown + "{INTERNAL_ERROR_MESSAGE_UNKNOWN_ADDRESS_TYPE}: {unknown}" ), SdpParserInternalError::AddressTypeMismatch { found, expected } => write!( f, - "{}: {}, {}", - INTERNAL_ERROR_MESSAGE_ADDRESS_TYPE_MISMATCH, found, expected + "{INTERNAL_ERROR_MESSAGE_ADDRESS_TYPE_MISMATCH}: {found}, {expected}" ), - SdpParserInternalError::Generic(ref message) => write!(f, "Parsing error: {}", message), + SdpParserInternalError::Generic(ref message) => write!(f, "Parsing error: {message}"), SdpParserInternalError::Unsupported(ref message) => { - write!(f, "Unsupported parsing error: {}", message) + write!(f, "Unsupported parsing error: {message}") } SdpParserInternalError::Integer(ref error) => { - write!(f, "Integer parsing error: {}", error) + write!(f, "Integer parsing error: {error}") } - SdpParserInternalError::Float(ref error) => write!(f, "Float parsing error: {}", error), + SdpParserInternalError::Float(ref error) => write!(f, "Float parsing error: {error}"), SdpParserInternalError::Domain(ref error) => { - write!(f, "Domain name parsing error: {}", error) + write!(f, "Domain name parsing error: {error}") } SdpParserInternalError::IpAddress(ref error) => { - write!(f, "IP address parsing error: {}", error) + write!(f, "IP address parsing error: {error}") } } } @@ -101,33 +99,25 @@ impl Serialize for SdpParserError { { let mut state = serializer.serialize_struct( "error", - match *self { + match self { SdpParserError::Sequence { .. } => 3, _ => 4, }, )?; - match *self { - SdpParserError::Line { - ref error, - ref line, - .. - } => { + match self { + SdpParserError::Line { error, line, .. } => { state.serialize_field("type", "Line")?; - state.serialize_field("message", &format!("{}", error))?; - state.serialize_field("line", &line)? + state.serialize_field("message", &format!("{error}"))?; + state.serialize_field("line", line)? } - SdpParserError::Unsupported { - ref error, - ref line, - .. - } => { + SdpParserError::Unsupported { error, line, .. } => { state.serialize_field("type", "Unsupported")?; - state.serialize_field("message", &format!("{}", error))?; - state.serialize_field("line", &line)? + state.serialize_field("message", &format!("{error}"))?; + state.serialize_field("line", line)? } - SdpParserError::Sequence { ref message, .. } => { + SdpParserError::Sequence { message, .. } => { state.serialize_field("type", "Sequence")?; - state.serialize_field("message", &message)?; + state.serialize_field("message", message)?; } }; state.serialize_field( @@ -144,38 +134,31 @@ impl Serialize for SdpParserError { impl fmt::Display for SdpParserError { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - match *self { + match self { SdpParserError::Line { - ref error, - ref line, - ref line_number, - } => write!( - f, - "Line error: {} in line({}): {}", - error, line_number, line - ), + error, + line, + line_number, + } => write!(f, "Line error: {error} in line({line_number}): {line}"), SdpParserError::Unsupported { - ref error, - ref line, - ref line_number, - } => write!( - f, - "Unsupported: {} in line({}): {}", - error, line_number, line - ), + error, + line, + line_number, + } => write!(f, "Unsupported: {error} in line({line_number}): {line}",), SdpParserError::Sequence { - ref message, - ref line_number, - } => write!(f, "Sequence error in line({}): {}", line_number, message), + message, + line_number, + } => write!(f, "Sequence error in line({line_number}): {message}"), } } } impl Error for SdpParserError { fn source(&self) -> Option<&(dyn error::Error + 'static)> { - match *self { - SdpParserError::Line { ref error, .. } - | SdpParserError::Unsupported { ref error, .. } => Some(error), + match self { + SdpParserError::Line { error, .. } | SdpParserError::Unsupported { error, .. } => { + Some(error) + } // Can't tell much more about our internal errors _ => None, } diff --git a/third_party/rust/webrtc-sdp/src/error_tests.rs b/third_party/rust/webrtc-sdp/src/error_tests.rs index 0d63d73f9eeb..49f88f044da1 100644 --- a/third_party/rust/webrtc-sdp/src/error_tests.rs +++ b/third_party/rust/webrtc-sdp/src/error_tests.rs @@ -9,7 +9,7 @@ use std::str::FromStr; fn test_sdp_parser_internal_error_unknown_address_type() { let error = SdpParserInternalError::UnknownAddressType("foo".to_string()); assert_eq!( - format!("{}", error), + format!("{error}"), format!("{}: {}", INTERNAL_ERROR_MESSAGE_UNKNOWN_ADDRESS_TYPE, "foo") ); assert!(error.source().is_none()); @@ -21,7 +21,7 @@ fn test_sdp_parser_internal_error_address_type_mismatch() { expected: AddressType::IpV6, }; assert_eq!( - format!("{}", error), + format!("{error}"), format!( "{}: {}, {}", INTERNAL_ERROR_MESSAGE_ADDRESS_TYPE_MISMATCH, @@ -35,7 +35,7 @@ fn test_sdp_parser_internal_error_address_type_mismatch() { #[test] fn test_sdp_parser_internal_error_generic() { let generic = SdpParserInternalError::Generic("generic message".to_string()); - assert_eq!(format!("{}", generic), "Parsing error: generic message"); + assert_eq!(format!("{generic}"), "Parsing error: generic message"); assert!(generic.source().is_none()); } @@ -44,7 +44,7 @@ fn test_sdp_parser_internal_error_unsupported() { let unsupported = SdpParserInternalError::Unsupported("unsupported internal message".to_string()); assert_eq!( - format!("{}", unsupported), + format!("{unsupported}"), "Unsupported parsing error: unsupported internal message" ); assert!(unsupported.source().is_none()); @@ -57,10 +57,10 @@ fn test_sdp_parser_internal_error_integer() { assert!(integer.is_err()); let int_err = SdpParserInternalError::Integer(integer.err().unwrap()); assert_eq!( - format!("{}", int_err), + format!("{int_err}"), "Integer parsing error: invalid digit found in string" ); - assert!(!int_err.source().is_none()); + assert!(int_err.source().is_some()); } #[test] @@ -70,10 +70,10 @@ fn test_sdp_parser_internal_error_float() { assert!(float.is_err()); let int_err = SdpParserInternalError::Float(float.err().unwrap()); assert_eq!( - format!("{}", int_err), + format!("{int_err}"), "Float parsing error: invalid float literal" ); - assert!(!int_err.source().is_none()); + assert!(int_err.source().is_some()); } #[test] @@ -81,10 +81,10 @@ fn test_sdp_parser_internal_error_address() { let v = "127.0.0.500"; let addr_err = Address::from_str(v).err().unwrap(); assert_eq!( - format!("{}", addr_err), + format!("{addr_err}"), "Domain name parsing error: invalid IPv4 address" ); - assert!(!addr_err.source().is_none()); + assert!(addr_err.source().is_some()); } #[test] @@ -95,7 +95,7 @@ fn test_sdp_parser_error_line() { line_number: 13, }; assert_eq!( - format!("{}", line1), + format!("{line1}"), "Line error: Parsing error: test message in line(13): test line" ); assert!(line1.source().is_some()); @@ -109,7 +109,7 @@ fn test_sdp_parser_error_unsupported() { line_number: 21, }; assert_eq!( - format!("{}", unsupported1), + format!("{unsupported1}"), "Unsupported: Parsing error: unsupported value in line(21): unsupported line" ); assert!(unsupported1.source().is_some()); @@ -122,7 +122,7 @@ fn test_sdp_parser_error_sequence() { line_number: 42, }; assert_eq!( - format!("{}", sequence1), + format!("{sequence1}"), "Sequence error in line(42): sequence message" ); assert!(sequence1.source().is_none()); diff --git a/third_party/rust/webrtc-sdp/src/lib.rs b/third_party/rust/webrtc-sdp/src/lib.rs index dc2432c71bc3..0a26adc3ea20 100644 --- a/third_party/rust/webrtc-sdp/src/lib.rs +++ b/third_party/rust/webrtc-sdp/src/lib.rs @@ -58,7 +58,7 @@ impl fmt::Display for SdpBandwidth { SdpBandwidth::Tias(ref x) => ("TIAS", x), SdpBandwidth::Unknown(ref tp, ref x) => (&tp[..], x), }; - write!(f, "{tp}:{val}", tp = tp_string, val = value) + write!(f, "{tp_string}:{value}") } } @@ -292,8 +292,7 @@ impl SdpSession { pub fn add_attribute(&mut self, a: SdpAttribute) -> Result<(), SdpParserInternalError> { if !a.allowed_at_session_level() { return Err(SdpParserInternalError::Generic(format!( - "{} not allowed at session level", - a + "{a} not allowed at session level" ))); }; self.attribute.push(a); @@ -312,7 +311,7 @@ impl SdpSession { let _line_number = line.line_number; self.add_attribute(a).map_err(|e: SdpParserInternalError| { SdpParserError::Sequence { - message: format!("{}", e), + message: format!("{e}"), line_number: _line_number, } })? @@ -408,8 +407,7 @@ fn parse_version(value: &str) -> Result { let ver = value.parse::()?; if ver != 0 { return Err(SdpParserInternalError::Generic(format!( - "version type contains unsupported value {}", - ver + "version type contains unsupported value {ver}" ))); }; trace!("version: {}", ver); @@ -493,7 +491,7 @@ fn parse_connection(value: &str) -> Result { let mut ttl = None; let mut amount = None; let mut addr_token = cv[2]; - if addr_token.find('/') != None { + if addr_token.find('/').is_some() { let addr_tokens: Vec<&str> = addr_token.split('/').collect(); if addr_tokens.len() >= 3 { amount = Some(addr_tokens[2].parse::()?); @@ -544,7 +542,7 @@ fn parse_timing(value: &str) -> Result { } pub fn parse_sdp_line(line: &str, line_number: usize) -> Result { - if line.find('=') == None { + if line.find('=').is_none() { return Err(SdpParserError::Line { error: SdpParserInternalError::Generic("missing = character in line".to_string()), line: line.to_string(), @@ -605,37 +603,30 @@ pub fn parse_sdp_line(line: &str, line_number: usize) -> Result parse_bandwidth(line_value), "c" => parse_connection(line_value), "e" => Err(SdpParserInternalError::Generic(format!( - "unsupported type email: {}", - line_value + "unsupported type email: {line_value}" ))), "i" => Err(SdpParserInternalError::Generic(format!( - "unsupported type information: {}", - line_value + "unsupported type information: {line_value}" ))), "k" => Err(SdpParserInternalError::Generic(format!( - "unsupported insecure key exchange: {}", - line_value + "unsupported insecure key exchange: {line_value}" ))), "m" => parse_media(line_value), "o" => parse_origin(line_value), "p" => Err(SdpParserInternalError::Generic(format!( - "unsupported type phone: {}", - line_value + "unsupported type phone: {line_value}" ))), "r" => Err(SdpParserInternalError::Generic(format!( - "unsupported type repeat: {}", - line_value + "unsupported type repeat: {line_value}" ))), "s" => parse_session(untrimmed_line_value), "t" => parse_timing(line_value), "u" => Err(SdpParserInternalError::Generic(format!( - "unsupported type uri: {}", - line_value + "unsupported type uri: {line_value}" ))), "v" => parse_version(line_value), "z" => Err(SdpParserInternalError::Generic(format!( - "unsupported type zone: {}", - line_value + "unsupported type zone: {line_value}" ))), _ => Err(SdpParserInternalError::Generic( "unknown sdp type".to_string(), @@ -749,7 +740,7 @@ fn sanity_check_sdp_session(session: &SdpSession) -> Result<(), SdpParserError> } } - if let Some(&SdpAttribute::Simulcast(ref simulcast)) = + if let Some(SdpAttribute::Simulcast(simulcast)) = msection.get_attribute(SdpAttributeType::Simulcast) { let check_defined_rids = diff --git a/third_party/rust/webrtc-sdp/src/media_type.rs b/third_party/rust/webrtc-sdp/src/media_type.rs index 180c7ef67082..91a11c60399c 100644 --- a/third_party/rust/webrtc-sdp/src/media_type.rs +++ b/third_party/rust/webrtc-sdp/src/media_type.rs @@ -196,8 +196,7 @@ impl SdpMedia { pub fn add_attribute(&mut self, attr: SdpAttribute) -> Result<(), SdpParserInternalError> { if !attr.allowed_at_media_level() { return Err(SdpParserInternalError::Generic(format!( - "{} not allowed at media level", - attr + "{attr} not allowed at media level" ))); } self.attribute.push(attr); @@ -318,8 +317,7 @@ fn parse_media_token(value: &str) -> Result SdpMediaValue::Application, _ => { return Err(SdpParserInternalError::Unsupported(format!( - "unsupported media value: {}", - value + "unsupported media value: {value}" ))); } }) @@ -340,8 +338,7 @@ fn parse_protocol_token(value: &str) -> Result SdpProtocolValue::TcpDtlsSctp, _ => { return Err(SdpParserInternalError::Unsupported(format!( - "unsupported protocol value: {}", - value + "unsupported protocol value: {value}" ))); } }) @@ -380,15 +377,11 @@ pub fn parse_media(value: &str) -> Result { let mut fmt_vec: Vec = vec![]; for num in fmt_slice { let fmt_num = num.parse::()?; - match fmt_num { - 0 | // PCMU - 8 | // PCMA - 9 | // G722 - 13 | // Comfort Noise - 35 ..= 63 | 96 ..= 127 => (), // dynamic range - _ => return Err(SdpParserInternalError::Generic( - "format number in media line is out of range".to_string())) - }; + if matches!(fmt_num, 1 | 2 | 19 | 64..=95 | 128 .. ) { + return Err(SdpParserInternalError::Generic( + "format number in media line is out of range".to_string(), + )); + } fmt_vec.push(fmt_num); } SdpFormatList::Integers(fmt_vec) @@ -459,7 +452,7 @@ pub fn parse_media_vector(lines: &mut Vec) -> Result, Sdp _ => sdp_media.add_attribute(a), } .map_err(|e: SdpParserInternalError| SdpParserError::Sequence { - message: format!("{}", e), + message: format!("{e}"), line_number: _line_number, })? } diff --git a/third_party/rust/webrtc-sdp/src/network.rs b/third_party/rust/webrtc-sdp/src/network.rs index 9b26c2b013cd..87e44052fa3d 100644 --- a/third_party/rust/webrtc-sdp/src/network.rs +++ b/third_party/rust/webrtc-sdp/src/network.rs @@ -9,8 +9,8 @@ use std::str::FromStr; pub fn ip_address_to_string(addr: IpAddr) -> String { match addr { - IpAddr::V4(ipv4) => format!("IN IP4 {}", ipv4), - IpAddr::V6(ipv6) => format!("IN IP6 {}", ipv6), + IpAddr::V4(ipv4) => format!("IN IP4 {ipv4}"), + IpAddr::V6(ipv6) => format!("IN IP6 {ipv6}"), } } diff --git a/third_party/rust/webrtc-sdp/tests/parse_sdp_tests.rs b/third_party/rust/webrtc-sdp/tests/parse_sdp_tests.rs index b5a4f9f490b8..1ee33e2beb69 100644 --- a/third_party/rust/webrtc-sdp/tests/parse_sdp_tests.rs +++ b/third_party/rust/webrtc-sdp/tests/parse_sdp_tests.rs @@ -311,9 +311,9 @@ a=ssrc:2709871439 cname:{735484ea-4f6c-f74a-bd66-7425f8476c2e}"; assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Recvonly) .is_some()); - assert!(!msection + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Extmap) - .is_some()); + .is_none()); assert_eq!( msection .get_attributes_of_type(webrtc_sdp::attribute_type::SdpAttributeType::Fmtp) @@ -332,9 +332,9 @@ a=ssrc:2709871439 cname:{735484ea-4f6c-f74a-bd66-7425f8476c2e}"; assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Mid) .is_some()); - assert!(!msection + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Msid) - .is_some()); + .is_none()); assert_eq!( msection .get_attributes_of_type(webrtc_sdp::attribute_type::SdpAttributeType::Rtcpfb) @@ -402,9 +402,9 @@ fn parse_firefox_datachannel_offer() { assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Sendrecv) .is_some()); - assert!(!msection + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Extmap) - .is_some()); + .is_none()); assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::IcePwd) .is_some()); @@ -417,18 +417,18 @@ fn parse_firefox_datachannel_offer() { assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Mid) .is_some()); - assert!(!msection + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Msid) - .is_some()); - assert!(!msection + .is_none()); + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Rtcpfb) - .is_some()); - assert!(!msection + .is_none()); + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::RtcpMux) - .is_some()); - assert!(!msection + .is_none()); + assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Rtpmap) - .is_some()); + .is_none()); assert!(msection .get_attribute(webrtc_sdp::attribute_type::SdpAttributeType::Sctpmap) .is_some());