Подробности
[В начало]
Проблема в реализации № L0162
Краткое описание
farsync: некорректные обращения к памяти в fst_add_one() и fst_init_card()
Подробное описание
В функциях fst_add_one() и fst_init_card() обнаружено несколько проблем:
- разыменование некорректного указателя card->ports[card->nports - 1] в случае, когда register_hdlc_device() завершается в ошибкой для первого порта в fst_init_card();
- переполнение fst_card_array в fst_card_array[no_of_cards_added], т.к. отсутствует проверка на переполнение;
- использование после освобождения, т.к. указатель на освобождённую память card остаётся в fst_card_array, если происходит ошибка после присваивания fst_card_array[no_of_cards_added] = card;
- несколько утечек памяти на ошибочных путях в fst_add_one().
Компонент
linux-kernel 3.15
Принято
https://lkml.org/lkml/2014/7/10/676
commit
Статус
Исправлено в ядре 3.16-rc6
[В начало]
»