[devel] IA: destination buffer overflow - ppp
Kirill A. Shutemov
k.shutemov velesys.com
28 13:15:23 MSK 2007
On [Wed, 28.11.2007 12:35], Alexander Bokovoy wrote:
> Dmitriy Khanzhin пишет:
> > Slava Semushin пишет:
> >> 2007/11/27, Dmitry V. Levin <ldv altlinux.org>:
> >>> On Tue, Nov 27, 2007 at 06:32:40PM +0300, Dmitriy Khanzhin wrote:
> >>>
> >>>> - strncat(ttyname, name, sizeof(ttyname));
> >> + strncat(ttyname, name, sizeof(ttyname)-1);
> >>
> >>> Автор этого кода не справился с функцией strncat. Исправление
> >>> тривиально.
> >> Фикс должен быть таким (см. выше)? Или нет?
> >>
> > Вот так собралось без warning'а (аттач).
> Еще бы оно работало. Вы же просто повторили ерунду за авторами этого
> плагина. sizeof(ttyname), как и sizeof(name), равносильны sizeof(char *)
> и равны размеру указателя, но никак не размеру строки. Там нужно
> использовать strlen(ttyname).
Если ttyname объявлен как
char ttyname[PATH_MAX];
то sizeof(ttyname) будет равен PATH_MAX;
--
Regards, Kirill A. Shutemov
+ Belarus, Minsk
+ Velesys LLC, http://www.velesys.com/
+ ALT Linux Team, http://www.altlinux.com/
----------- -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 189 байтов
Описание: Digital signature
Url : http://lists.altlinux.org/pipermail/devel/attachments/20071128/35e87ead/attachment.bin
Devel