Что: d9a8dfe35de9fbd81cecefffda022ee42e5e7ce9
Когда: 2021-03-07 11:54:20+03:00
Темы: c git
Списки запрещённых Си функций в git и Microsoft https://news.ycombinator.com/item?id=20792938 https://news.ycombinator.com/item?id=26353025 Вот чего мне не хватало (да и не хватает до сих пор), так это современного источника мудрости по Си. Открываешь старые книжки по Си и видишь что там явно плохие практики, очень опасные. Про всякие штуки типа -ffunction-sections (очень помогающие) или про -fstack-protector-all узнаю чисто случайно. Хотя... может я узнаю про них когда приходит время? И вот я мельком где-то просто видел и слышал что всякие strcpy и strcat являются опасными и не рекомендованными. Но я на Си и не писал прежде. Но а где мне найти вообще подборку хороших практик? Всё что я видел -- сильно разрозненные и не пересекающиеся множества знаний. И вот две ссылки на забаненные функции. И мне они очень понравились тем, что я по сути не узнал ничего нового. Своей головой, читая описания этих функций в man-ах, понимал что или проблемы с thread-safety/reentrancy или с возможностями выхода за границы. Получается что яростно неправильных фунок не так много и я самостоятельно понимал их опасность. Настроение поднимается. А ещё Microsoft удивляет. Недавно вот выяснилось что всякие защиты в софте (5916b1b5c4827dccf0a7ced477a8e7d6de45908f) они применяют очень давно и вроде как довольно активно, поболее чем FreeBSD. Хотя наверное тут и нечему удивляться: ведь у них на порядки больше пользователей. А сейчас приятно удивляет тем, что Microsoft основной потребитель функций из K-appendix-а C11 (12f6e5616982751e2f14a8c01cd503cb55f238ed): функций с _s суффиксом, который типа secure. Хотя они же их и разрабатывают. BSD системы их тоже поддерживают, а в glibc вообще под чистую отсутствует.
Сгенерирован: SGBlog 0.34.0