The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Критическая уязвимость в GnuTLS. Разработчик OpenLDAP рекоме..., opennews (??), 05-Мрт-14, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


12. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  –5 +/
Сообщение от Анонист (?), 05-Мрт-14, 12:37 
Вызов неправильной функции легче отследить, не? Да и когда пишешь функцию минимум задумываешься о ее сигнатуре, о том, как ее назвать, и что конкретно она должна делать, (и это еще даже ДО любых рефакторингов) если это ООП и пишешь метод - думаешь еще о связности/сцеплении.

А goto - взял и написал goto. Очень много ума надо? Код на "от**бись*. Вполне подходит для мелкомягких, впрочем.

Ответить | Правка | Наверх | Cообщить модератору

14. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от Аноним (-), 05-Мрт-14, 12:46 
> Вызов неправильной функции легче отследить, не?

Не.

> Да и когда пишешь функцию минимум задумываешься о ее сигнатуре, о том, как ее назвать, и что конкретно она должна делать

Когда пишешь goto - думаешь как минимум как назвать метку и что должно происходить при переходе не неё. Сигнатуры тут никак не помогают ибо могут быть одинаковые.

> А goto - взял и написал goto. Очень много ума надо? Код на "от**бись*. Вполне подходит для мелкомягких, впрочем.

Для гнушников.

Ответить | Правка | Наверх | Cообщить модератору

21. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  –5 +/
Сообщение от Анонист (?), 05-Мрт-14, 13:01 
Да вы прямо-таки мастер написания меток! Это не вы сломали случаем? :)

Вы не убедите меня, что код с goto более или хотя бы равен по ответственности за написание функции или метода.

P.S. Поди, вы весь код в goto пишете, без функций, классов и методов? Идеальный код :)

Ответить | Правка | Наверх | Cообщить модератору

45. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от rshadow (ok), 05-Мрт-14, 14:10 
именование это конечно повод для срача...

мне вот на ум приходит что для функции легче тест написать отдельный, а не простыню для теста одной функции делать

Ответить | Правка | Наверх | Cообщить модератору

48. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от Аноним (-), 05-Мрт-14, 14:29 
Тест можно написать для любого блока. Местные аналитики наслушавшиеся баек про goto is harmful даже не в курсе что goto от call отличается только помещением в стек адреса возврата.
Ответить | Правка | Наверх | Cообщить модератору

57. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от Маленькая Серая Мышка (?), 05-Мрт-14, 15:14 
А exceptions делаются на лонгджампе за минуту, да-да.
Как это отменяет тот факт что тестировать функцию удобней чем часть блока - неясно.
Ответить | Правка | Наверх | Cообщить модератору

76. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +1 +/
Сообщение от www2 (??), 05-Мрт-14, 17:24 
Внезапно, блоки находятся внутри функции. А для каждой функции можно написать не один тест.

Кроме того, хороший тест выявляет неожиданное поведение функции, а не проверяет абстрактную правильность работы какого-то блока. Потому что по-хорошему тесты пишутся не исходя из кода, а исходя из требований. Лучше - если функцию и тесты реализуют вообще разные люди и без оглядки на существующую реализацию теста или функции соответственно.

Ответить | Правка | Наверх | Cообщить модератору

78. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от Маленькая Серая Мышка (?), 05-Мрт-14, 17:31 
>Внезапно, блоки находятся внутри функции. А для каждой функции можно написать не один тест.

А небо - синее. Речь шла про "удобней" а не "в принципе это возможно".

>хороший тест выявляет неожиданное поведение функции

Вспоминаем (в вашем случае - учим) комбинаторику. В функции N блоков, у каждого M граничных условий. Дальше рассказывать? Или вы на всем множестве аргументов предпочитаете тестировать за бесконечное время?

Ответить | Правка | Наверх | Cообщить модератору

151. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от www2 (??), 07-Мрт-14, 18:24 
> Вспоминаем (в вашем случае - учим) комбинаторику. В функции N блоков, у
> каждого M граничных условий. Дальше рассказывать? Или вы на всем множестве
> аргументов предпочитаете тестировать за бесконечное время?

Но часть блоков в определённых условиях не выполняется. Например, первое же условие завершает работу функции - все остальные не проверяются. Поэтому комбинаторику учи ты.

А ещё - прочитай то, что я написал выше. Тестировать нужно не N блоков, а проверять, что функция работает ожидаемым образом. Пусть там ещё 10 блоков с разными условиями добавятся, пусть несколько условий объединят в одно с одним блоком - проверять нужно правильность функции, а не её компонентов.

Ответить | Правка | Наверх | Cообщить модератору

82. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +3 +/
Сообщение от Аноним (-), 05-Мрт-14, 18:00 
>Когда пишешь goto - думаешь как минимум как назвать метку

Долго и упорно думаешь... и называешь метки: m1, m2, m3,...
(Из опыта программирования на ассеблере для x86)

Ответить | Правка | К родителю #14 | Наверх | Cообщить модератору

89. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +2 +/
Сообщение от 1 (??), 05-Мрт-14, 18:33 
А через три недели после сдачи кода выясняется, что нужна доработка. Открываешь код, видишь эти метки и думаешь "какого ***".
Ответить | Правка | Наверх | Cообщить модератору

91. "Критическая уязвимость в GnuTLS, позволяющая обойти..."  +3 +/
Сообщение от arisu (ok), 05-Мрт-14, 18:52 
> Долго и упорно думаешь... и называешь метки: m1, m2, m3,...
> (Из опыта программирования на ассеблере для x86)

нет, это из опыта быдлокодинга.

Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

138. "Критическая уязвимость в GnuTLS, позволяющая обойти процесс ..."  +/
Сообщение от Аноним (-), 07-Мрт-14, 04:05 
> (Из опыта программирования на ассеблере для x86)

О как, оказывается, быдлoкодить можно даже на асме.

Ответить | Правка | К родителю #82 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру