Hello,

I've recently compiled the HEAD of libaacs.git
(8d72c62f917891f41a264d6cad5b4a5dbff924e2) and noticed that it fails to
open the KEYDB.cfg on Windows when using internationalized user name.
Here's the aacs debug log:

src/file/file_win32.c:110: Opened WIN32 file D:\\AACS\Unit_Key_RO.inf
(00000000043db180)
src/file/file_win32.c:44: Closed WIN32 file (00000000043db180)
src/file/keydbcfg.c:145:
C:\Users\Константин\AppData\Roaming\aacs\KEYDB.cfg not found
src/file/keydbcfg.c:180: C:\ProgramData\aacs\KEYDB.cfg not found
src/file/keydbcfg.c:145:
C:\Users\Константин\AppData\Roaming\aacs\ProcessingDeviceKeysSimple.txt
not found
src/file/keydbcfg.c:180:
C:\ProgramData\aacs\ProcessingDeviceKeysSimple.txt not found
src/file/keydbcfg.c:145:
C:\Users\Константин\AppData\Roaming\aacs\HostKeyCertificate.txt not found
src/file/keydbcfg.c:180: C:\ProgramData\aacs\HostKeyCertificate.txt not
found
src/file/keydbcfg.c:429:
C:\Users\Константин\AppData\Roaming\aacs\vuk\1e984aae756791ea320abac219700020cf8f2ad2
not found
src/file/file_win32.c:110: Opened WIN32 file D:\\AACS\MKB_RO.inf
(00000000043db5c0)
src/file/file_win32.c:44: Closed WIN32 file (00000000043db5c0)
src/file/keydbcfg.c:513: C:\Users\Константин\AppData\Roaming\aacs\drl not
found
src/file/keydbcfg.c:513: C:\Users\Константин\AppData\Roaming\aacs\hrl not
found
src/file/keydbcfg.c:66: Creating directory C:\Users\Константин
src/file/keydbcfg.c:69: Error creating directory C:\Users\Константин
src/file/file_win32.c:110: Opened WIN32 file D:\\AACS\Unit_Key_RO.inf
(00000000043db980)
src/file/file_win32.c:110: Opened WIN32 file D:\\AACS\CPSUnit00001.cci
(00000000043db180)
src/file/file_win32.c:44: Closed WIN32 file (00000000043db180)
src/file/file_win32.c:44: Closed WIN32 file (00000000043db980)
src/file/file_win32.c:110: Opened WIN32 file D:\\AACS\Content000.cer
(00000000043dad00)
src/file/file_win32.c:44: Closed WIN32 file (00000000043dad00)
src/file/mmc_device_win32.c:140: Opening Windows MMC drive D:\...
src/file/mmc_device_win32.c:161: Windows MMC drive \\.\D: opened
src/libaacs/mmc.c:131: MMC get configuration [feature 0x10d] ...
src/file/mmc_device_win32.c:122:   Send succeeded!
src/libaacs/mmc.c:228: AACS feature descriptor:
src/libaacs/mmc.c:229:   AACS version: 1
src/libaacs/mmc.c:230:   AACS active: 1
src/libaacs/mmc.c:231:   Binding Nonce generation support: 0
src/libaacs/mmc.c:232:   Binding Nonce block count: 0
src/libaacs/mmc.c:233:   Bus encryption support: 1
src/libaacs/mmc.c:234:   Read drive certificate: 1
src/libaacs/mmc.c:235:   AGID count: 2
src/libaacs/mmc.c:65: MMC report key...
src/file/mmc_device_win32.c:122:   Send succeeded!
src/libaacs/mmc.c:404: Closed MMC drive



However the file is perfectly reachable via cmd.exe (excuse me for
non-LC_ALL=C output as I'm a complete noob in Windows):


C:\Program Files\VideoLAN\VLC>dir
C:\Users\Константин\AppData\Roaming\aacs\KEYDB.cfg
 Том в устройстве C не имеет метки.
  Серийный номер тома: 0A3A-567C

   Содержимое папки C:\Users\Константин\AppData\Roaming\aacs

   21.02.2016  18:05         1 263 294 KEYDB.cfg
                  1 файлов      1 263 294 байт
                                 0 папок  15 718 993 920 байт свободно

C:\Program Files\VideoLAN\VLC>


I guess the problem is that libaacs tries to fopen the file instead of
using the wide-char version, _wfopen in src/file/keydbcfg.c:143
(http://git.videolan.org/?p=libaacs.git;a=blob;f=src/file/keydbcfg.c;h=76662e5889bd4c7f009672e99cce494fda3becc9;hb=8d72c62f917891f41a264d6cad5b4a5dbff924e2#l143)
?


Hope that helps,

-- 
VideoLAN
Konstantin Pavlov
http://www.videolan.org
Mobile: +7 926 165 45 31
Skype: cryothresh
Twitter: @cryothresh
_______________________________________________
libaacs-devel mailing list
libaacs-devel@videolan.org
https://mailman.videolan.org/listinfo/libaacs-devel

Reply via email to