#prog #c #cpp #article
How to check if a pointer is in a range of memory
Нет, просто сравнение указателей не работает. И, кстати, из соответствующего параграфа стандарта становится понятно, почему в C нельзя иметь типы нулевого размера.
How to check if a pointer is in a range of memory
Нет, просто сравнение указателей не работает. И, кстати, из соответствующего параграфа стандарта становится понятно, почему в C нельзя иметь типы нулевого размера.
Microsoft News
How to check if a pointer is in a range of memory
Thanks to the C language standard, it's trickier than it seems.
🤔6
#prog #python #c #abnormalprogramming #article
Writing a C compiler in 500 lines of Python
С небольшим нюансом: компиляция в WASM и, понятное дело, только весьма небольшого подмножества C. Ну и для достижения ограничения на количество строк компилятор однопроходной.
Writing a C compiler in 500 lines of Python
С небольшим нюансом: компиляция в WASM и, понятное дело, только весьма небольшого подмножества C. Ну и для достижения ограничения на количество строк компилятор однопроходной.
vgel.me
Writing a C compiler in 500 lines of Python
Blog about linguistics, programming, and my projects
👍3💩1
😁4👍2🤡1
#prog #c #itsec
В glibc выявили уязвимость, которая позволяет локально повысить права до root. Корень проблемы — очередной buffer overflow.
Что иронично, код, который внёс уязвимость, был нацелен на фикс другой проблемы.
В glibc выявили уязвимость, которая позволяет локально повысить права до root. Корень проблемы — очередной buffer overflow.
Что иронично, код, который внёс уязвимость, был нацелен на фикс другой проблемы.
www.opennet.ru
Уязвимость в glibc, позволяющая получить root-доступ в системе
Компания Qualys выявила опасную уязвимость (CVE-2023-6246) в стандартной Си-библиотеке Glibc, позволяющую через манипуляции с запуском SUID-приложений добиться выполнения своего кода с повышенными привилегиями. Исследователи смогли разработать рабочий эксплоит…
😁5😱1
#prog #c #rust #article
Porting libyaml to Safe Rust: Some Thoughts
Или о том, как автор перевёл libyaml, сконвертированный c2rust, в идиоматичный Rust-код. Почему? Этот код используется как бекенд для serde-yaml и при этом существующий интерфейс поверх не давал информацию о положении частей входа вне ошибок.
The result is not just safer and easier, it is also just as performant
Автор также более подробно рассказывает о тонкостях реализации на C и о том, как они изменились с переходом на Rust.
Porting libyaml to Safe Rust: Some Thoughts
Или о том, как автор перевёл libyaml, сконвертированный c2rust, в идиоматичный Rust-код. Почему? Этот код используется как бекенд для serde-yaml и при этом существующий интерфейс поверх не давал информацию о положении частей входа вне ошибок.
The result is not just safer and easier, it is also just as performant
Автор также более подробно рассказывает о тонкостях реализации на C и о том, как они изменились с переходом на Rust.
simonask.github.io
libyaml-safer
👍7
#prog #c #article
Why Not Just Do Simple C++ RAII in C?
В последнее время есть предложения для того, чтобы добавить в C defer. Разумеется, эта конструкция избыточна, если в языке есть RAII. Статья показывает, почему "просто добавить RAII в C" не сработает.
Why Not Just Do Simple C++ RAII in C?
В последнее время есть предложения для того, чтобы добавить в C defer. Разумеется, эта конструкция избыточна, если в языке есть RAII. Статья показывает, почему "просто добавить RAII в C" не сработает.
The Pasture
Why Not Just Do Simple C++ RAII in C?
Ever since I finished publishing the “defer” paper and successfully defended it on its first go-around (it now has tentative approval to go to a Technical Sp...
👍1