From e8f81810baa21f490d6910e8e2d424546b72a333 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 15 Sep 2019 09:01:56 +0100 Subject: gentoo resync : 15.09.2019 --- media-sound/alsa-utils/Manifest | 3 +- media-sound/alsa-utils/alsa-utils-1.1.9.ebuild | 3 +- ...fix-invalid-comparison-of-64-bit-storage-.patch | 249 +++++++++++++++++++++ 3 files changed, 253 insertions(+), 2 deletions(-) create mode 100644 media-sound/alsa-utils/files/alsa-utils-1.1.9-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch (limited to 'media-sound/alsa-utils') diff --git a/media-sound/alsa-utils/Manifest b/media-sound/alsa-utils/Manifest index b52e24c70dde..c637c4e1510b 100644 --- a/media-sound/alsa-utils/Manifest +++ b/media-sound/alsa-utils/Manifest @@ -1,5 +1,6 @@ AUX alsa-modules.conf-rc 1028 BLAKE2B 91a27d4806bbd88bfb255cb28477cf4976cdbe2c3b2bf10e6e321375f40d4177d6eb563a189829ab49d6a3c71b3ad48cb3e52a343ad780a9f067b6bd3e42e628 SHA512 20b309a44e23408ede66a121d81047f32970fa033728784c76a1caabb72143dbc1c5b970f9e73a910b7ef9026df597cde2afc7c1f52127fab532dba4955b1757 AUX alsa-utils-1.1.8-missing_header.patch 1580 BLAKE2B 59ac66fa5fbc303978bac8e16c2b026e7c9416ee4c06b220ad7bac926c3136e2053ab24438048dcebf96091e2ea934f743ff3c694d9dbd7fee49439ec900b514 SHA512 10f0924522178d3258eb2086da5ab94681ec580cf89aee98ebbc6d7f759db9484a82e8c10f484139516fe4c4f31ee33f021cc9dc7d472debe8c1353b881c40db +AUX alsa-utils-1.1.9-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch 9191 BLAKE2B 964557f65786fd53c15e9047e1d65d63610f1a120dee71e1ec4ce1e6828d6a7b5cd140a5ad1f49d1ddc39592a2286829ee23ee76ca08a8f5ef6a7e04ff6203a9 SHA512 9969883807bfbe1638b8cf676cb1ec2160b33007af8e7cb0c6289064995c9bbc16a249c18b25dea2c5b10732471f101e7b824bb8c7b4eb080f0482706acd12b5 AUX alsasound.confd-r4 340 BLAKE2B bcd03d51441528871316f1de640c4e7d382756bfea893adad8ea5b65ac166199dfa23acb07a0ae92d933d1b9c74d39cf96a778993b3d72074c27e4a7b4c28f4c SHA512 90c1e974276945f7632dc370a005b58d669b93edbf27116098d4831e69c11c26d9b21e7eacfaf12c50019f8c88dc1f370101e2d905fdde40887fe36bac00d83e AUX alsasound.initd-r6 2189 BLAKE2B f0c4b5b51aae15f5d841b4e2ea8ce6a0631f92868a12b481798c484f6eff54bf8de0352c8c8b01c58d6164ab8de25bbfebb619f87bebb9c50c00610b67eed2e8 SHA512 960e6eff97174004abeb8d36d68c01a9f67e589174743928bb63dc37390f9868551e5b7e11c8386db67889c3d518f5ff4564b258dfee5e3317c164bc52aac04e AUX alsasound.initd-r7 2190 BLAKE2B af02158bfa5d74c174cb5efbb8dff4c0b51ff856d7b4afdc5c5f601e5e7055710474db63ac9c6dd4145a680e94f08f8beff138d43a1ad50e3f24d52ae6bd40b7 SHA512 725153b0843bae7a4fee5ed5b1d80e0839420f18314e6a759a00ba6895176823b1842fdbacfbcdce7aa755c44892090ba9e649580e7acd7df1677d8b387df115 @@ -11,5 +12,5 @@ DIST alsa-utils-1.1.9.tar.bz2 1268833 BLAKE2B 56fe00bd7dce21969f9f91d1d82a6644da EBUILD alsa-utils-1.1.2.ebuild 2199 BLAKE2B 110899e375e20f25067db6dcc21b3302ac119dc9656c88946f0fa304084571f61ab6335536336d874dedad465dfcb0b4b1c39e3a7b0b502082dbb90ca5a32abf SHA512 e0253fbba1c48e7318d5b9ab5bceebccd303ac09e6e2687a3947788e90491a7c88952209128ece17ffeb6255330118d3a43e245513e4c1dca9254bbeed72394f EBUILD alsa-utils-1.1.6.ebuild 2249 BLAKE2B 9e754eb263685924e5897018242cea86a4a4b9d3fbc5aad66aa17e6df23d01d99854058e624139db257384d9cbd5c4d2722cf26dda8c0f89daffc4894e58c192 SHA512 14caac4da6c061bdf718e93465ffe09963aad438e7b83c5d82ce8b743620774d3e38aa0a8c91d9e949b35371a55d99fc6d10d0e52f209e3435b1d6d84f537dad EBUILD alsa-utils-1.1.8.ebuild 2322 BLAKE2B 1489975be3ec7e6f19aabbcd589cb9451cd6ef41433f8f7b1e3c4ac122cc519fb265ca7aa840cfa98ceba29fbd0ac241a6bd727ea1f69063bdd6533b60dc7416 SHA512 c1b10d7b427c14f422b372be500c031fa4c6a1c7f5c8108f5252b982833d6d659a710fd0c5328a357ba86cefc5ff00d7b2a2f0a32582b5812ac59d99afd56410 -EBUILD alsa-utils-1.1.9.ebuild 2327 BLAKE2B 62ae048c8852d50917feb356949280f22811786e3d092795c2a044f460d32cd8be5bf125f53ad7710dfda5ac057ec591da162cb2d6004621af2b4a3ff630484b SHA512 eda801263d829c4a39b6070f79ec28d895895b983572186a0de4bc6cb90219031f7f54fef0317cdd1f19624dcce8d027bdaecb3d04b5c726a631d4dd02bc29b0 +EBUILD alsa-utils-1.1.9.ebuild 2405 BLAKE2B b72a8e6554127614a10ea82013cacd8fd74cac20bd4b1ab6e2178a55e12ad83078a9c7a80e4442eb6898b307457983574346d6c5588d989b09c67d50777439b9 SHA512 d0e158fb2740b63a7e7126fc57d3e4db2897da69e5ef8bd19b0b57e646b05816bb94404782c069da562b8eedd3564431eeb94b55ef172b35432282eca3f95310 MISC metadata.xml 479 BLAKE2B 1245c4734565b6ad06c137019aeb4ea92a5fe71e1ea66bb5860566cc00b7fc8a3b03ba343262ac10c7d8b93c1efc91e3a1fd56999a5cb9ee0ff11a0d9d9c03e1 SHA512 e03521bce9f75fc5ef16413153542993d6038bd07eb928a76b7f99b729d53dd160986128fa1754d16820fca89a58a3b23628e32c04d01d52f769f48ecc5ee367 diff --git a/media-sound/alsa-utils/alsa-utils-1.1.9.ebuild b/media-sound/alsa-utils/alsa-utils-1.1.9.ebuild index bfb1938f52be..fb31c6bb07a7 100644 --- a/media-sound/alsa-utils/alsa-utils-1.1.9.ebuild +++ b/media-sound/alsa-utils/alsa-utils-1.1.9.ebuild @@ -10,7 +10,7 @@ SRC_URI="mirror://alsaproject/utils/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0.9" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh sparc ~x86" IUSE="bat doc +libsamplerate +ncurses nls selinux" CDEPEND=">=media-libs/alsa-lib-${PV} @@ -25,6 +25,7 @@ BDEPEND="virtual/pkgconfig" PATCHES=( "${FILESDIR}"/${PN}-1.1.8-missing_header.patch + "${FILESDIR}"/${P}-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch ) src_configure() { diff --git a/media-sound/alsa-utils/files/alsa-utils-1.1.9-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch b/media-sound/alsa-utils/files/alsa-utils-1.1.9-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch new file mode 100644 index 000000000000..654358399737 --- /dev/null +++ b/media-sound/alsa-utils/files/alsa-utils-1.1.9-axfer-test-fix-invalid-comparison-of-64-bit-storage-.patch @@ -0,0 +1,249 @@ +From fbb222c9bccb407750cea61e3bb6285cb8c1b330 Mon Sep 17 00:00:00 2001 +From: Takashi Sakamoto +Date: Sun, 28 Jul 2019 13:48:50 +0900 +Subject: [PATCH] axfer: test: fix invalid comparison of 64 bit storage in + ILP32 data type + +In system V ABIs with ILP32 data model, bit shift for '1ul' can brings +undefined behaviour when the calculation result is over 32 bit width. + +This commit fixes the bug. + +Reported-by: Rolf Eike Beer +Reference: https://bugs.gentoo.org/681652 +Reference: https://github.com/alsa-project/alsa-utils/issues/23 +Signed-off-by: Takashi Sakamoto +Signed-off-by: Takashi Iwai +--- + axfer/test/container-test.c | 142 ++++++++++++++++++------------------ + axfer/test/generator.c | 4 +- + axfer/test/mapper-test.c | 24 +++--- + 3 files changed, 85 insertions(+), 85 deletions(-) + +diff --git a/axfer/test/container-test.c b/axfer/test/container-test.c +index 0e2e6e9..9b30ae3 100644 +--- a/axfer/test/container-test.c ++++ b/axfer/test/container-test.c +@@ -172,82 +172,82 @@ int main(int argc, const char *argv[]) + { + static const uint64_t sample_format_masks[] = { + [CONTAINER_FORMAT_RIFF_WAVE] = +- (1ul << SND_PCM_FORMAT_U8) | +- (1ul << SND_PCM_FORMAT_S16_LE) | +- (1ul << SND_PCM_FORMAT_S16_BE) | +- (1ul << SND_PCM_FORMAT_S24_LE) | +- (1ul << SND_PCM_FORMAT_S24_BE) | +- (1ul << SND_PCM_FORMAT_S32_LE) | +- (1ul << SND_PCM_FORMAT_S32_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT_LE) | +- (1ul << SND_PCM_FORMAT_FLOAT_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_LE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_BE) | +- (1ul << SND_PCM_FORMAT_MU_LAW) | +- (1ul << SND_PCM_FORMAT_A_LAW) | +- (1ul << SND_PCM_FORMAT_S24_3LE) | +- (1ul << SND_PCM_FORMAT_S24_3BE) | +- (1ul << SND_PCM_FORMAT_S20_3LE) | +- (1ul << SND_PCM_FORMAT_S20_3BE) | +- (1ul << SND_PCM_FORMAT_S18_3LE) | +- (1ul << SND_PCM_FORMAT_S18_3BE), ++ (1ull << SND_PCM_FORMAT_U8) | ++ (1ull << SND_PCM_FORMAT_S16_LE) | ++ (1ull << SND_PCM_FORMAT_S16_BE) | ++ (1ull << SND_PCM_FORMAT_S24_LE) | ++ (1ull << SND_PCM_FORMAT_S24_BE) | ++ (1ull << SND_PCM_FORMAT_S32_LE) | ++ (1ull << SND_PCM_FORMAT_S32_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT_LE) | ++ (1ull << SND_PCM_FORMAT_FLOAT_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_LE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_BE) | ++ (1ull << SND_PCM_FORMAT_MU_LAW) | ++ (1ull << SND_PCM_FORMAT_A_LAW) | ++ (1ull << SND_PCM_FORMAT_S24_3LE) | ++ (1ull << SND_PCM_FORMAT_S24_3BE) | ++ (1ull << SND_PCM_FORMAT_S20_3LE) | ++ (1ull << SND_PCM_FORMAT_S20_3BE) | ++ (1ull << SND_PCM_FORMAT_S18_3LE) | ++ (1ull << SND_PCM_FORMAT_S18_3BE), + [CONTAINER_FORMAT_AU] = +- (1ul << SND_PCM_FORMAT_S8) | +- (1ul << SND_PCM_FORMAT_S16_BE) | +- (1ul << SND_PCM_FORMAT_S32_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_BE) | +- (1ul << SND_PCM_FORMAT_MU_LAW) | +- (1ul << SND_PCM_FORMAT_A_LAW), ++ (1ull << SND_PCM_FORMAT_S8) | ++ (1ull << SND_PCM_FORMAT_S16_BE) | ++ (1ull << SND_PCM_FORMAT_S32_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_BE) | ++ (1ull << SND_PCM_FORMAT_MU_LAW) | ++ (1ull << SND_PCM_FORMAT_A_LAW), + [CONTAINER_FORMAT_VOC] = +- (1ul << SND_PCM_FORMAT_U8) | +- (1ul << SND_PCM_FORMAT_S16_LE) | +- (1ul << SND_PCM_FORMAT_MU_LAW) | +- (1ul << SND_PCM_FORMAT_A_LAW), ++ (1ull << SND_PCM_FORMAT_U8) | ++ (1ull << SND_PCM_FORMAT_S16_LE) | ++ (1ull << SND_PCM_FORMAT_MU_LAW) | ++ (1ull << SND_PCM_FORMAT_A_LAW), + [CONTAINER_FORMAT_RAW] = +- (1ul << SND_PCM_FORMAT_S8) | +- (1ul << SND_PCM_FORMAT_U8) | +- (1ul << SND_PCM_FORMAT_S16_LE) | +- (1ul << SND_PCM_FORMAT_S16_BE) | +- (1ul << SND_PCM_FORMAT_U16_LE) | +- (1ul << SND_PCM_FORMAT_U16_BE) | +- (1ul << SND_PCM_FORMAT_S24_LE) | +- (1ul << SND_PCM_FORMAT_S24_BE) | +- (1ul << SND_PCM_FORMAT_U24_LE) | +- (1ul << SND_PCM_FORMAT_U24_BE) | +- (1ul << SND_PCM_FORMAT_S32_LE) | +- (1ul << SND_PCM_FORMAT_S32_BE) | +- (1ul << SND_PCM_FORMAT_U32_LE) | +- (1ul << SND_PCM_FORMAT_U32_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT_LE) | +- (1ul << SND_PCM_FORMAT_FLOAT_BE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_LE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_BE) | +- (1ul << SND_PCM_FORMAT_IEC958_SUBFRAME_LE) | +- (1ul << SND_PCM_FORMAT_IEC958_SUBFRAME_BE) | +- (1ul << SND_PCM_FORMAT_MU_LAW) | +- (1ul << SND_PCM_FORMAT_A_LAW) | +- (1ul << SND_PCM_FORMAT_S24_3LE) | +- (1ul << SND_PCM_FORMAT_S24_3BE) | +- (1ul << SND_PCM_FORMAT_U24_3LE) | +- (1ul << SND_PCM_FORMAT_U24_3BE) | +- (1ul << SND_PCM_FORMAT_S20_3LE) | +- (1ul << SND_PCM_FORMAT_S20_3BE) | +- (1ul << SND_PCM_FORMAT_U20_3LE) | +- (1ul << SND_PCM_FORMAT_U20_3BE) | +- (1ul << SND_PCM_FORMAT_S18_3LE) | +- (1ul << SND_PCM_FORMAT_S18_3BE) | +- (1ul << SND_PCM_FORMAT_U18_3LE) | +- (1ul << SND_PCM_FORMAT_U18_3BE) | +- (1ul << SND_PCM_FORMAT_DSD_U8) | +- (1ul << SND_PCM_FORMAT_DSD_U16_LE) | +- (1ul << SND_PCM_FORMAT_DSD_U32_LE) | +- (1ul << SND_PCM_FORMAT_DSD_U16_BE) | +- (1ul << SND_PCM_FORMAT_DSD_U32_BE), ++ (1ull << SND_PCM_FORMAT_S8) | ++ (1ull << SND_PCM_FORMAT_U8) | ++ (1ull << SND_PCM_FORMAT_S16_LE) | ++ (1ull << SND_PCM_FORMAT_S16_BE) | ++ (1ull << SND_PCM_FORMAT_U16_LE) | ++ (1ull << SND_PCM_FORMAT_U16_BE) | ++ (1ull << SND_PCM_FORMAT_S24_LE) | ++ (1ull << SND_PCM_FORMAT_S24_BE) | ++ (1ull << SND_PCM_FORMAT_U24_LE) | ++ (1ull << SND_PCM_FORMAT_U24_BE) | ++ (1ull << SND_PCM_FORMAT_S32_LE) | ++ (1ull << SND_PCM_FORMAT_S32_BE) | ++ (1ull << SND_PCM_FORMAT_U32_LE) | ++ (1ull << SND_PCM_FORMAT_U32_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT_LE) | ++ (1ull << SND_PCM_FORMAT_FLOAT_BE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_LE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_BE) | ++ (1ull << SND_PCM_FORMAT_IEC958_SUBFRAME_LE) | ++ (1ull << SND_PCM_FORMAT_IEC958_SUBFRAME_BE) | ++ (1ull << SND_PCM_FORMAT_MU_LAW) | ++ (1ull << SND_PCM_FORMAT_A_LAW) | ++ (1ull << SND_PCM_FORMAT_S24_3LE) | ++ (1ull << SND_PCM_FORMAT_S24_3BE) | ++ (1ull << SND_PCM_FORMAT_U24_3LE) | ++ (1ull << SND_PCM_FORMAT_U24_3BE) | ++ (1ull << SND_PCM_FORMAT_S20_3LE) | ++ (1ull << SND_PCM_FORMAT_S20_3BE) | ++ (1ull << SND_PCM_FORMAT_U20_3LE) | ++ (1ull << SND_PCM_FORMAT_U20_3BE) | ++ (1ull << SND_PCM_FORMAT_S18_3LE) | ++ (1ull << SND_PCM_FORMAT_S18_3BE) | ++ (1ull << SND_PCM_FORMAT_U18_3LE) | ++ (1ull << SND_PCM_FORMAT_U18_3BE) | ++ (1ull << SND_PCM_FORMAT_DSD_U8) | ++ (1ull << SND_PCM_FORMAT_DSD_U16_LE) | ++ (1ull << SND_PCM_FORMAT_DSD_U32_LE) | ++ (1ull << SND_PCM_FORMAT_DSD_U16_BE) | ++ (1ull << SND_PCM_FORMAT_DSD_U32_BE), + }; + static const uint64_t access_mask = +- (1ul << SND_PCM_ACCESS_MMAP_INTERLEAVED) | +- (1ul << SND_PCM_ACCESS_RW_INTERLEAVED); ++ (1ull << SND_PCM_ACCESS_MMAP_INTERLEAVED) | ++ (1ull << SND_PCM_ACCESS_RW_INTERLEAVED); + struct test_generator gen = {0}; + struct container_trial *trial; + int i; +diff --git a/axfer/test/generator.c b/axfer/test/generator.c +index cdea2c9..bde8c5f 100644 +--- a/axfer/test/generator.c ++++ b/axfer/test/generator.c +@@ -220,7 +220,7 @@ static int test_sample_format(struct test_generator *gen, + int err = 0; + + for (i = 0; i <= SND_PCM_FORMAT_LAST; ++i) { +- if (!((1ul << i) & gen->sample_format_mask)) ++ if (!((1ull << i) & gen->sample_format_mask)) + continue; + + err = test_samples_per_frame(gen, access, i); +@@ -237,7 +237,7 @@ static int test_access(struct test_generator *gen) + int err = 0; + + for (i = 0; i <= SND_PCM_ACCESS_LAST; ++i) { +- if (!((1ul << i) & gen->access_mask)) ++ if (!((1ull << i) & gen->access_mask)) + continue; + + err = test_sample_format(gen, i); +diff --git a/axfer/test/mapper-test.c b/axfer/test/mapper-test.c +index 6b24d54..f0376c7 100644 +--- a/axfer/test/mapper-test.c ++++ b/axfer/test/mapper-test.c +@@ -396,13 +396,13 @@ int main(int argc, const char *argv[]) + { + // Test 8/16/18/20/24/32/64 bytes per sample. + static const uint64_t sample_format_mask = +- (1ul << SND_PCM_FORMAT_U8) | +- (1ul << SND_PCM_FORMAT_S16_LE) | +- (1ul << SND_PCM_FORMAT_S18_3LE) | +- (1ul << SND_PCM_FORMAT_S20_3LE) | +- (1ul << SND_PCM_FORMAT_S24_LE) | +- (1ul << SND_PCM_FORMAT_S32_LE) | +- (1ul << SND_PCM_FORMAT_FLOAT64_LE); ++ (1ull << SND_PCM_FORMAT_U8) | ++ (1ull << SND_PCM_FORMAT_S16_LE) | ++ (1ull << SND_PCM_FORMAT_S18_3LE) | ++ (1ull << SND_PCM_FORMAT_S20_3LE) | ++ (1ull << SND_PCM_FORMAT_S24_LE) | ++ (1ull << SND_PCM_FORMAT_S32_LE) | ++ (1ull << SND_PCM_FORMAT_FLOAT64_LE); + uint64_t access_mask; + struct test_generator gen = {0}; + struct mapper_trial *trial; +@@ -451,13 +451,13 @@ int main(int argc, const char *argv[]) + goto end; + } + +- access_mask = 1ul << access; ++ access_mask = 1ull << access; + verbose = true; + } else { +- access_mask = (1ul << SND_PCM_ACCESS_MMAP_INTERLEAVED) | +- (1ul << SND_PCM_ACCESS_MMAP_NONINTERLEAVED) | +- (1ul << SND_PCM_ACCESS_RW_INTERLEAVED) | +- (1ul << SND_PCM_ACCESS_RW_NONINTERLEAVED); ++ access_mask = (1ull << SND_PCM_ACCESS_MMAP_INTERLEAVED) | ++ (1ull << SND_PCM_ACCESS_MMAP_NONINTERLEAVED) | ++ (1ull << SND_PCM_ACCESS_RW_INTERLEAVED) | ++ (1ull << SND_PCM_ACCESS_RW_NONINTERLEAVED); + verbose = false; + } + +-- +2.21.0 + -- cgit v1.2.3