Bug 11773 - crashes on some corrupted streams
Summary: crashes on some corrupted streams
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: libdca (show other bugs)
Version: unstable
Hardware: all Linux
: P2 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-05-15 19:40 MSD by Sergey Vlasov
Modified: 2007-05-18 23:40 MSD (History)
0 users

See Also:


Attachments
abort decoding when bitalloc_huffman[i] == 7 (648 bytes, patch)
2007-05-15 19:45 MSD, Sergey Vlasov
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Vlasov 2007-05-15 19:40:37 MSD
Обнаружено падение libdca-0.0.2-alt2 с SIGSEGV при декодировании испорченных
файлов из-за недостаточности проверок (в коде есть комментарий по поводу
недопустимости bitalloc_huffman[i] == 7, но фактически при этом ничего не
делается, и далее происходит выход за границы массивов).

Приложенный патч позволяет избежать SIGSEGV в подобных случаях.
Comment 1 Sergey Vlasov 2007-05-15 19:45:32 MSD
Created attachment 1966 [details]
abort decoding when bitalloc_huffman[i] == 7

According to the DTS spec, bitalloc_huffman[i] == 7 is undefined;
detect this value and abort frame decoding (otherwise subsequent
code will crash).
Comment 2 Valery Inozemtsev 2007-05-17 11:32:21 MSD
libdca-0.0.2-alt3