May 22, 2020 10:03
На 32-разрядных системах x86 проблема не проявляется, так как реализация memcpy для данной архитектуры корректно интерпретирует переменную с размером как беззнаковое целое значение с типом size_t (в написанной на ассемблере реализации для ARMv7 вместо size_t оно обрабатывается как signed integer).
====================================
Это из Чирковского Таймс. Суть в том, что баг, внесённый неведомо когда, скорее всего на этапе создания, ни один пресловутый представитель миллиона глаз не заметил в одной из самых широко распространённых библиотек. Потому что миллиону глаз надо не смотреть в код, проводя аудит, а собрать и использовать для своих целей. А смотрят пусть те, кому нужно. А таких немного на весь мир. Вот и имеем.
Ах да, если кто-то думает, что внутри Микрософта всё иначе и там строгий контроль - вынужден разочаровать.
И ещё. Если кто-то думает, что пресловутые сертификации на "готовность кода к критическим деяниям" (и не у нас тоже!) означают, что все пристально туда глядят и проверяют аж вообще всё - вынужден опять разочаровать.
Open source - это не для миллиона глаз проверки. Это метод не платить кодеру деньги, чтобы он работал за победу коммунизма под руководством партии. А где он найдёт пожрать - это его проблемы.
программирование,
экономика