libaacs issueshttps://code.videolan.org/videolan/libaacs/-/issues2019-07-28T08:23:36Zhttps://code.videolan.org/videolan/libaacs/-/issues/3libgcrypt mpi to binary conversion padding2019-07-28T08:23:36ZFabrice Belletlibgcrypt mpi to binary conversion paddingWhen calling `gcry_mpi_print()`, we should check the size of the returned buffer, and pad it when it's not 20, ie when the higher significant byte should be zero.
[1000-crypto-fix-libgcrypt-mpi-to-binary-padding.patch](/uploads/3a092af7...When calling `gcry_mpi_print()`, we should check the size of the returned buffer, and pad it when it's not 20, ie when the higher significant byte should be zero.
[1000-crypto-fix-libgcrypt-mpi-to-binary-padding.patch](/uploads/3a092af7eaaac2497e456478afd5859c/1000-crypto-fix-libgcrypt-mpi-to-binary-padding.patch)https://code.videolan.org/videolan/libaacs/-/issues/1libaacs should block mounting/unmounting the disc2020-03-22T15:36:54ZMarvin Scholzlibaacs should block mounting/unmounting the discOn macOS libaacs has to unmount the disc for exclusive access and then mount it again when done with it. Both the mounting and unmounting are non-blocking, which leads to issues especially when mounting the disc again in the end because ...On macOS libaacs has to unmount the disc for exclusive access and then mount it again when done with it. Both the mounting and unmounting are non-blocking, which leads to issues especially when mounting the disc again in the end because the function returns before the disc is actually mounted and users of the library then will try to access a not yet mounted device without a way to easily figure out when it is mounted again.
More detailed explanation:
In `void device_close(MMCDEV **pp)` it calls `iokit_mount(mmc);`, this function calls a macOS DiskArbitration function to mount the drive with `iokit_mount_complete` as callback. In this callback `mmc` is accessed and `is_mounted` set to `1`, but nothing else is done. This seems problematic given that there is no wait for this callback to happen, which means that by the time the callback is executed, `mmc` might have been freed already. (And of course means that code that runs after will try to access the drive even though it is not yet mounted.)
Additionally it seems that the way `is_mounted` is set is racy, though probably not as big of a problem given how the code works.
An easy fix would be to block in `iokit_mount` until the device is actually mounted.
The same issue exists in the unmount function but luckily it seems it is fast enough to not cause an issue.
Related to videolan/libbluray#3https://code.videolan.org/videolan/libaacs/-/issues/7Only fist entry in KEYDB.cfg working2021-10-11T17:07:44ZDrew ButlerOnly fist entry in KEYDB.cfg workingHi, I can only get the first line in my KEYDB.cfg file to work as an AACS key but if I swap it to the second line with another movie it won't work. can you please help?Hi, I can only get the first line in my KEYDB.cfg file to work as an AACS key but if I swap it to the second line with another movie it won't work. can you please help?https://code.videolan.org/videolan/libaacs/-/issues/6libaacs 0.10.0 makes mpv segfault when playing bluray discs2020-07-23T09:11:14ZZhenfu Shilibaacs 0.10.0 makes mpv segfault when playing bluray discs0.9.0 is fine though. Tried playing both directly using a iso file, and mount the iso then using the BDMV folder.
Crash log attached.
[mpv_2020-06-30-040424_iMac.crash](/uploads/313a80edfe8c3815a19b4f32400eae2e/mpv_2020-06-30-040424_iMac...0.9.0 is fine though. Tried playing both directly using a iso file, and mount the iso then using the BDMV folder.
Crash log attached.
[mpv_2020-06-30-040424_iMac.crash](/uploads/313a80edfe8c3815a19b4f32400eae2e/mpv_2020-06-30-040424_iMac.crash)https://code.videolan.org/videolan/libaacs/-/issues/4New release?2020-03-22T16:43:17ZMarvin ScholzNew release?I believe it would make sense to make a new release as now !5 is merged which fixes annoying mount issues that were preventing properly reading bluray discs on macOS.I believe it would make sense to make a new release as now !5 is merged which fixes annoying mount issues that were preventing properly reading bluray discs on macOS.https://code.videolan.org/videolan/libaacs/-/issues/2Building libaacs with MSYS2/MinGW/GCC does not produce libaacs.dll anymore2018-12-26T20:11:28ZLigH-deBuilding libaacs with MSYS2/MinGW/GCC does not produce libaacs.dll anymoreFirst noticed when running the [media-autobuild suite](https://github.com/jb-alvarado/media-autobuild_suite/) today. Attaching log files of the "configure", "make", and "install" steps as reported by MABS.
[ab-suite.configure.log](/uplo...First noticed when running the [media-autobuild suite](https://github.com/jb-alvarado/media-autobuild_suite/) today. Attaching log files of the "configure", "make", and "install" steps as reported by MABS.
[ab-suite.configure.log](/uploads/5a26dda153df284365f995473204613f/ab-suite.configure.log)
[ab-suite.make.log](/uploads/e1f0ac058b18328cc5b93f3957c76d8b/ab-suite.make.log)
[ab-suite.install.log](/uploads/7a695b4ebe6df6b7e16b540834e6c585/ab-suite.install.log)