The OpenNET Project / Index page

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



"Уязвимость в Rust-библиотеках для формата TAR, приводящая к распаковке файлов из вложенного архива"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Уязвимость в Rust-библиотеках для формата TAR, приводящая к распаковке файлов из вложенного архива"  +/
Сообщение от opennews (?), 21-Окт-25, 23:11 
В написанной на языке Rust библиотеке async-tar, предоставляющей функции для чтения и записи tar-архивов, выявлена уязвимость (CVE-2025-62518, кодовое имя TARmageddon), позволяющая при распаковке специально оформленного tar-архива не только извлечь размещённые в нём файлы,  но и файлы, содержащиеся во вложенном tar-архиве. Уязвимость может быть использована для обхода систем верификации архивов и распаковки файлов, для которых не выполнялась проверка...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=64093

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

Оглавление

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

2. Сообщение от Аноним (2), 21-Окт-25, 23:15   +62 +/
Это успех, я считаю!

Кто со мной согласен - ставим плюсик

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #4, #49, #133, #144

4. Сообщение от Tron is Whistling (?), 21-Окт-25, 23:22   +16 +/
Не просто плюсик, а ++ - два плюсика.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #10

6. Сообщение от Аноним (6), 21-Окт-25, 23:24   +19 +/
Вы не понимаете! Это другое!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15

9. Сообщение от Аноним (6), 21-Окт-25, 23:26   +8 +/
А сколько багов остаются незамеченными тупо из-за того, что раст вынуждает писать нечитаемую лапшу и раздувать изначально компактный код в несколько раз
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #19, #23, #102, #113

10. Сообщение от Anonimbus (?), 21-Окт-25, 23:27   –2 +/
С плюсом-плюсом XD
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

12. Сообщение от morphe (?), 21-Окт-25, 23:31   +5 +/
> Проблема вызвана тем, что уязвимые библиотеки при распаковке файлов вместо вычисления смещения на основе размера из расширенного заголовка PAX, брали размер из устаревшего заголовка ustar. При нулевом значении размера в заголовке ustar, идущее за ним содержимое файла обрабатывалось как корректный блок TAR-заголовков для следующего файла.

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

Остаётся вопрос почему размер из PAX должен иметь приоритет, ведь теперь проблема может быть обратной - реализации TAR без поддержки PAX будут читать архивы иначе чем исправленная версия.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #16, #43

15. Сообщение от Аноним (15), 21-Окт-25, 23:37   –5 +/
А ты зоркий. Молодец, заметил - именно что другое. А то бы налетели сейчас местные сишники-ПравильныеПогромисты... Никаких тебе выходов за пределы буфера, обращения к освобожденной памяти или двойного освобождения памяти... Ну, именно того, от чего и должен спасать раст. А просто "логическая" ошибка. От которой никто не обещал (и не мог) защитить. Не в той позиции что-то там в файле считали и не проверили. Ну это те самые гугловско-майкрософтовские оставшиеся "30% ошибок", которые уже только напряжением мозгов нужно избегать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #24, #25, #40

16. Сообщение от Аноним (16), 21-Окт-25, 23:38    Скрыто ботом-модератором+/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #53

18. Сообщение от Аноним (18), 21-Окт-25, 23:41    Скрыто ботом-модератором+3 +/
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #21

19. Сообщение от Аноним (15), 21-Окт-25, 23:43   +2 +/
нечитаемая она для местных сишников. А кто вкатился в эту тему и какое-то время  в этом варился - заявляют, что всё прекрасно читается и понимается. Дело привычки. А техдир гугла еще и заявляет что команды, разрабатывающие проекты на расте, в два раза продуктивнее команд сиплюсплюсников. Предположу, что командная работа с "нечитаемой лапшой" не могла бы быть в два раза продуктивнее "абсолютно понятных" божественных плюсов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #26

20. Сообщение от Аноним (20), 21-Окт-25, 23:46   +1 +/
Вот видите! Вот такими и должны быть баги, логическими ошибками, а не позорным переполнением буфера
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #82

21. Сообщение от Аноним (15), 21-Окт-25, 23:47   +2 +/
> А шуму то было, мол на расте уязвимостей вообще быть не может

Это от вас, сишников, этот шум. Из раза в раз. От растовиков шум - не будет _только ошибок работы с памятью_ (если не пользоваться ансейфом), а не "всех-всех-всех ошибок". И их, ошибок по памяти, таки пока что-то не наблюдается в товарных количествах, как на божественном.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #123

23. Сообщение от Аноним (15), 21-Окт-25, 23:56   –2 +/
>  и раздувать изначально компактный код в несколько раз

и вдогонку, из соседней новости, про принятие в ядро Linux 6.18 реализации Binder IPC для Android, написанная на Rust:

"...Несмотря на продвинутые возможности и поддержку объектов со сложной семантикой владения, драйвер на Rust получился меньше варианта на Си - 5.5 против 5.8 тысяч строк кода."

Ну т.е. после этого нам _очень_ интересно твое "икспертное" мнение. Ты наверное много программ написал сразу в двух вариантах - на си и на расте, чтобы сравнить и выдать свои ценные замечания, верно? Ведь верно?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #27, #118

24. Сообщение от Аноним (24), 21-Окт-25, 23:57   +14 +/
В новости ошибка работы с памятью. Да, ошибка не с оперативной памятью.
Так выход за границы массива это логическая ошибка или нет? Если программист на Си ошибётся в размере массива, то это одно, а когда на rust ошибка с размером в структуре данных, то это другое?
Нет, дружочек, это одного рода проблемы. Да, rust спасает от ошибок с оперативной памятью, с этим спорить не буду.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #34, #39, #80

25. Сообщение от Аноним (25), 21-Окт-25, 23:58   +3 +/
> оставшиеся "30% ошибок", которые уже только напряжением мозгов нужно избегать

Ну раз напряжением мозгов, то софт на расте точно обречён. Ибо в него и привлекают-то лишь всякими "вам больше не нужно думать о размере буферов и указателях", а основная масса растофанов прекращает читать на слове "думать".

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #87

26. Сообщение от Аноним (6), 21-Окт-25, 23:59   +5 +/
Ты даже не понимаешь о чем речь, сразу видно что вкатился и варился. Когда даже книжный алгоритм приходится перелопачивать так, что он становится сам на себя не похож. Сколько из-за таких выкрутасов в коде возникает логических ошибок, невозможно и представить. Пока нормальные люди пишут код так, чтобы он был легко читаем и понятен, такие как ты варятся и вкатываются и навязывают остальным свои шизоидные извращения. Необходимы клиники для реабилитации, а еще лучше принудительные работы не связанные с компьютерами
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #41, #45, #47

27. Сообщение от Аноним (6), 22-Окт-25, 00:01   +2 +/
Сотни других неудобных примеров мы конечно проигнорируем, да?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #51, #112

28. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 00:01   +1 +/
Не, ребят, сегодня не ваш день. Сначала предатели, пардон, производители процессоров вместе с Линусом в спину ударили, а теперь - вот))
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #29, #130, #140

29. Сообщение от Аноним (24), 22-Окт-25, 00:02   +/
Можно подробнее, пожалуйста?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #30

30. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 00:03   +/
> Можно подробнее, пожалуйста?

https://www.opennet.me/opennews/art.shtml?num=64091

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #32, #35

31. Сообщение от Аноним (-), 22-Окт-25, 00:04    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #33, #54

32. Сообщение от Аноним (24), 22-Окт-25, 00:04   +1 +/
Спасибо.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

33. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 00:08   +/
> Ой, как будто кто-то сейчас пользуется таким древним овном как TAR?
> Оно появилось более 40 лет назад.

Архивы кода по умолчанию с GitHub в tar.gz отдаются))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #36

34. Сообщение от morphe (?), 22-Окт-25, 00:08   +3 +/
> В новости ошибка работы с памятью.

В новости ошибка с неправильной интерпретацией спецификации

В файле стоит

Заголовок ustar:
  размер этого файла 0 байт
Заголовок PAX:
  размер этого файла 20мбайт

Старая реализация приоритетной считала значение из ustar, читала 0 байт файла, и дальше читала вложенный tar как содержимое основного tar файла

А должна была читать PAX, и пропускать 20мбайт как содержимое файла

Спека говно, и точно таким же образом обсираются все реализации tar которые PAX не поддерживают.
PAX является якобы обратно совместимым, поскольку данные от него пропускаются легаси реализациями, однако он может содержать в себе копию размера, от чего и возможны такие конфликты

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

35. Сообщение от Аноним (-), 22-Окт-25, 00:09   +/
Так и не ваш тоже opennet.ru/opennews/art.shtml?num=64092
Вы же не будете сравнивать какую-то либу с ядром.

ЗЫ: а чего в ту тему не заглянули, проффесор? сказать нечего было?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #38

36. Сообщение от Аноним (-), 22-Окт-25, 00:11   +/
> Архивы кода по умолчанию с GitHub в tar.gz отдаются))

Эм... нет, это вы у себя что-то нахимичили с настройками. По умолчанию отдается zip.
github.com/torvalds/linux
Download ZIP

Проверьте сами.

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

38. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 00:13   +1 +/
> Так и не ваш тоже opennet.ru/opennews/art.shtml?num=64092
> Вы же не будете сравнивать какую-то либу с ядром.

Спасибо, посмеялся)) Не, не поможет ;)

> ЗЫ: а чего в ту тему не заглянули, проффесор? сказать нечего было?

Потроллить на сон грядущий ;) Не всё ж вам развлекаться))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #42

39. Сообщение от Аноним (15), 22-Окт-25, 00:13   –1 +/
> Так выход за границы массива это логическая ошибка или нет? Если программист на Си ошибётся в размере массива

Чисто казуистический прием. Разницу-то в ошибках вы (да все остальные) всё равно поняли ;)  Да, да, старая проблема при холиварах на этом сайте: как же обозвать все эти разные ошибки. Но тут уже более распространено мнение/определение, что есть ошибки работы с памятью (те 70% о которых гугл распинался), а есть остальные, "логические" (вот как раз когда не то или не оттуда считали или введенное значение на допустимость значений не проверили или когда уставший сонный программист знаки больше с меньше перепутал).

> Если программист на Си ошибётся в размере массива, то это одно, а когда на rust ошибка с размером в структуре данных, то это другое?

Это просто офигенно другое! И если ты этого честно не понимаешь (сомневаюсь в этом), то ты просто профнепригоден.

> Нет, дружочек, это одного рода проблемы

Не дружок ты мне пока, а тролль. И это очень разного рода проблемы.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #66

40. Сообщение от Аноним (6), 22-Окт-25, 00:16   +2 +/
На другой тип ошибок нужен еще один ЯП!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #52

41. Сообщение от Аноним (-), 22-Окт-25, 00:17   –3 +/
>  нормальные люди пишут код так, чтобы он был легко читаем и понятен

Ага, видели мы тот код "от нормальных людей"
Как тебе функция-портянка на 1000+ строк кода?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...
Естественно с кучей кала в виде goto - нормальной обработки ошибок ведь не завезли...

И ведь это ядро! Его же пишут профи))

> Необходимы клиники для реабилитации, а еще лучше принудительные работы не связанные с компьютерами

А принудительная стререлизация, ну чтобы уже на 100% как faшики, будет?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #62, #65, #85

42. Сообщение от Аноним (-), 22-Окт-25, 00:21   –2 +/
> Спасибо, посмеялся)) Не, не поможет ;)

Конечно не поможет.
Если человек ставит в один ряд ядро линукс и какую-то либу от дилетантов.. то это многое о нем говорит)

> Потроллить на сон грядущий

Получилось весьма уныло.
Может лучше про коммунизм? Та щиза хотя бы веселее звучит!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #46

43. Сообщение от Аноним (-), 22-Окт-25, 00:22   +7 +/
> спецификацию расширили не пойми как

Там всё ещё интереснее. Этих форматов tar было как собак нерезаных. Когда POSIX решил это дело стандартизовать, он взял два формата ustar и PAX и объединил их в один. Это не расширение, это просто какой-то толпоиппизм. Я как-то думал написать реализацию tar в образовательных целях, в рамках ознакомления с каким-то очередным язычком программирования (а заодно и с tar ознакомиться), и забил именно из-за того, что разбираться со всеми этими завихрениями дидовского мышления не было никакого желания.

Но за этим, на самом деле, прячется целая дидовская философия: работает, не трожь. Вместо того, чтобы сделать по уму, они пытаются сделать так, чтобы ничего не делать. Ну, точнее, пытались. Сейчас они наверное все на пенсии уже. Продолжают пытаться ничего не делать.

> Остаётся вопрос почему размер из PAX должен иметь приоритет

На этот вопрос ответить определённо я не могу, увы. Меня не хватило на то, чтобы изучить историю вопроса. Но это намекает на вероятный ответ (тавтологию): если для понимания современного положения дел надо изучать историю вопроса, значит это легаси, где решения определяются не здравым смыслом, а броуновским движением истории, где стандарты не создают реальность, а фиксируют её такой, какая она есть. Отливают её в граните, чтобы и потомкам наших потомков досталось бы.

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

45. Сообщение от Аноним (45), 22-Окт-25, 00:27   +/
> Когда даже книжный алгоритм приходится перелопачивать так, что он становится сам на себя не похож.

Из этой фразы любому программисту видно, что ты алгоритм заучил, а не понял. Что однозначно определяет тебя как кодера на одном языке, которому никакая клиника уже не поможет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #56

46. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 00:31   +1 +/
> Конечно не поможет.
> Если человек ставит в один ряд ядро линукс и какую-то либу от
> дилетантов.. то это многое о нем говорит)

Снова посмеялся)) Не пытайтесь вырулить, говорю ж - не поможет)) Вам производители процессоров такую свинью подложили, прям загляденье.

>> Потроллить на сон грядущий
> Получилось весьма уныло.

Но вы ж стриггерились - значит уже нормально ;)


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

47. Сообщение от Аноним (15), 22-Окт-25, 00:32   +/
Так а что же ты про техдира гугла не завернул? Вот же он наверное лох, похоже из клиники для реабилитации выступал. Ну или его подло обманули агенты раста с метриками разработки, подло оболгав плюсовиков. Но я конечно поверю тебе, а не ему.

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

К твоему сожалению, правда совсем-совсем немного, понимаю. Года три назад, не зная языка, "не вкатываясь", просто взяв примеры кода и подправив их под себя, сделал себе утилитку, работающую с внешними ресурсами (отчеты с биржи стягивает). _Почти_ всё там было понятно и аккуратно. Но да, язык учить надо. Сложное так просто не напишешь. Впрочем, как и на си.

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

49. Сообщение от Грустный (?), 22-Окт-25, 00:33   +1 +/
Наконец-то хорошая новость.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

51. Сообщение от Аноним (15), 22-Окт-25, 00:33   –2 +/
Эти "сотни других неудобных примеров" только в Вашей голове? Откуда сотни примеров, если Вы и Ваши соратники утверждаете, что на расте вообще ничего не написано?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #59

52. Сообщение от Аноним (52), 22-Окт-25, 00:34   –1 +/
Может, Zig?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #90

53. Сообщение от morphe (?), 22-Окт-25, 00:36   +/
> Legacy? Не, не слышал. Конечно же, виновата спека, а не святые растоманы.

Так легаси точно так же этот PAX не читают и точно так же обосрутся как и реализация на Rust)

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

54. Сообщение от Аноним (52), 22-Окт-25, 00:37   +1 +/
Раст обделался с перепмсыванием, значит, tar ненужен! Л - логика.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31

55. Сообщение от Аноним (55), 22-Окт-25, 00:37   –4 +/
Сишникам совсем уже делать нечего. Нашли микроскопическую ошибку и раздули из этого целую "уязвимость".
Удалите новость, опеннет, не позорьтесь.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #58

56. Сообщение от Аноним (6), 22-Окт-25, 00:38   +/
Мне видно что ты читать не умеешь или какие-то ограничения в мыслительном аппарате, хз. Это где-то в первом классе у детей спрашивают про что пословица "без труда не вытащишь и рыбку из пруда" и они отвечают "про рыбку"
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45

58. Сообщение от Аноним (52), 22-Окт-25, 00:39   +/
Нееет, выделите новость 20-м шрифтом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55 Ответы: #60

59. Сообщение от Аноним (6), 22-Окт-25, 00:41   +/
Ничего не пишут, только переписывают
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #162

60. Сообщение от Аноним (15), 22-Окт-25, 00:43   +/
Чтобы все оценили "кекспертизу" обсуждающих её сишников
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

61. Сообщение от Аноним (92), 22-Окт-25, 00:44   –1 +/
Почему программисты на Rust не могут <буквально> переписать логику с реализацией на C, а придумывают собственные дырявые велосипеды? Вообще, тот факт, что на Rust без ИИ программировать не получается по признанию его фанатов наводит на некоторые размышления...
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #78, #79, #121, #146

62. Сообщение от Аноним (6), 22-Окт-25, 00:45   +2 +/
На расте функция конечно будет не 1000 строк, размер функций же от ЯП зависит
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

65. Сообщение от Аноним (92), 22-Окт-25, 00:59   –1 +/
Функцию на тысячу строк можно на любом языке написать, если что. Понимать подобный код на Rust будет также сложно как на C с goto, поскольку только в Rust и regex смысл строки может кардинально измениться всего из-за одного символа. Неудивительно, что без ИИ с ним не разобраться.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #83

66. Сообщение от Аноним (24), 22-Окт-25, 00:59   +2 +/
> а есть остальные, "логические" (вот как раз когда не то или не оттуда считали или введенное значение на допустимость значений не проверили или когда уставший сонный программист знаки больше с меньше перепутал).

Так выход за границы массива – это буквально всё, что вы перечислили.

Считали неопределённые данные.
Не проверили границу.
Уставший сонный программист запутался в инкременте в цикле for.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39 Ответы: #69, #71

69. Сообщение от Витюшка (?), 22-Окт-25, 01:20   +/
Уровень кекспертизы подоспел.
У вас есть буфер с содержимым "слово" из 5 символов.
По спецификации нужно прочитать третью букву "о", вы этого не поняли и прочитали букву в. Где здесь ошибка работы с памятью и где выходит за границы массива?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66

71. Сообщение от Аноним (15), 22-Окт-25, 01:30   +/
>> > а есть остальные, "логические" (вот как раз когда не то или не оттуда считали или введенное значение на допустимость значений не проверили или когда уставший сонный программист знаки больше с меньше перепутал).
> Так выход за границы массива – это буквально всё, что вы перечислили.

И тут врёте и всё перекручиваете. Говорю же, казуистика. Брехня.

>Считали данные не с того места.

Где тут выход за пределы массива? Я может потом просто захочу создать массив на это считанное откуда-то число элементов. Считал какие-то данные - не значит что полез в массив  по смещению или без проверки сложил значение с указателем, как в сишечке.

> Не проверили границу.

Где там про проверку _границ_ написано? Сами слово добавили и сами обвиняете? Допустимость значений - это типа "остаток на счете должен быть больше либо равен нулю". Где здесь граница? Да и в расте ты так просто и "незаметно", как в си, не выйдешь за границу массива.

> Уставший сонный программист запутался в инкременте в цикле for.

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

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

77. Сообщение от Аноним (77), 22-Окт-25, 02:04   +1 +/
Не ошибается тот, кто ничего не делает. Давайте зароем топор войны Rust и C!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #107, #150

78. Сообщение от Аноним (80), 22-Окт-25, 02:11   +/
>Почему программисты на Rust не могут <буквально> переписать логику с реализацией на C

Потому, что тогда у них будут буквально те же самые дыры, что и на си. Ибо на си нет афинных типов данных.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #91, #106

79. Сообщение от Медведь (ok), 22-Окт-25, 02:12   +5 +/
> Почему программисты на Rust не могут <буквально> переписать логику с реализацией на C, а придумывают собственные дырявые велосипеды? Вообще, тот факт, что на Rust без ИИ программировать не получается по признанию его фанатов наводит на некоторые размышления...

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

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

80. Сообщение от Аноним (80), 22-Окт-25, 02:25   +/
>Так выход за границы массива это логическая ошибка или нет?

В новости ничего не говорится о выходе за границы массива, Rust от такого защищает.
>Если программист на Си ошибётся в размере массива

То будет порча памяти.
>а когда на rust ошибка с размером в структуре данных

Порчи памяти не будет. Вы не сможете прочитать/записать в чужую память, только в свою.
>то это другое?

Да, другое. В случае сишной уязвимости, при распаковке можно было бы вызвать условный curl | bash, здесь - только переписать файлы.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #86

82. Сообщение от Медведь (ok), 22-Окт-25, 02:39   +3 +/
> Вот видите! Вот такими и должны быть баги, логическими ошибками, а не позорным переполнением буфера

Ффух, мне даже как-то легче стало. Так вот какими они должны быть -- баги на расте! Если я в программе на C сделаю баг как на расте -- можно? Или это будет опять позорный дыряшечный дидовский баг? Или такие баги разрешено делать только на расте, а всем остальным -- ни-ни, не трогай, это на новый год... ой, то есть для раста? Короче, можно полную инструкцию, какими должны быть правильные баги?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #94, #128

83. Сообщение от morphe (?), 22-Окт-25, 02:55   +/
> поскольку в Rust смысл строки может кардинально
> измениться всего из-за одного символа.

А теперь приведи хоть один пример когда такое может произойти


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

85. Сообщение от Аноним (85), 22-Окт-25, 03:24   +/
> Естественно с кучей кала в виде goto - нормальной обработки ошибок ведь
> не завезли...

Вот интересно, обработка ошибок по твоему она магическая какая-то или ей занимается отдельный код? Настоящий кал - это как раз запихать в ядро код обработчиков ошибок. Задумайся почему в ядре даже стандартных библиотек нет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #125, #131, #156

86. Сообщение от Аноним (24), 22-Окт-25, 03:27   +/
> В случае сишной уязвимости, при распаковке можно было бы вызвать условный curl | bash

Нельзя. С чего бы? Если речь только про ошибку при обработке данных, а не ошибке работы с ram.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #80 Ответы: #122

87. Сообщение от Ruslan (??), 22-Окт-25, 03:54   +/
Так это же замечательно, что какой-то инструмент позволяет не думать о том, что к делу не относится и сосредоточиться на прикладной задаче.

Необходимость байтодрочерства и прочих ручных управлениях всем, чем можно, пошло от общей убогости компьютерных технологий прошлого (да и нынешнего), а не потому, что это исходно и хотели делать изобретая ЭВМ...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #92, #117

88. Сообщение от Аноним (88), 22-Окт-25, 04:05   +/
Очередные неосиляторы юнит тестов. Попросили бы ИИ написать, даже самим не надо париться.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #120

90. Сообщение от Аноним (90), 22-Окт-25, 04:31   +/
Хороший вариант. Вон, в Редоксе на него драйвера переписывают.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #135

91. Сообщение от Аноним (92), 22-Окт-25, 04:36   +/
И что, без аффинных типов в безопасном коде на Rust будут дыры? Вот это новость!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78

92. Сообщение от Аноним (92), 22-Окт-25, 04:54   +/
Вот сосредоточиться на прикладной задаче чет не получается.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87

94. Сообщение от Аноним (20), 22-Окт-25, 05:45   +1 +/
Объясняю, почему так вышло - потому что в программе на Си такой баг тоже будет. Но прежде, чем поймать его, вы будете ловить переполнения буффера, двойное освобождение и прочие подобные баги памяти, и только потом логические. А тут вот ловятся сразу уже логические баги. Экономия времени
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #98

98. Сообщение от Аноним (-), 22-Окт-25, 06:41   +/
Во-первых, все баги которые могут случится на чистом Си хорошо документированы и описаны. Кто пишет на чистом Си, и реально желает избежать багов, тот их избежит. Вина в не внимательности и торопливости.

>А тут вот ловятся сразу уже логические баги. Экономия времени

Дело не в характере ошибок, делов их в количестве. Не думаю, что общее количество ошибок на Расте меньше, чем в Си.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #129, #138

102. Сообщение от Дурка (?), 22-Окт-25, 07:12   +2 +/
Лапша есть и возможна на каждом языке программирования.
Скажите вот эта растовая лапша, почему она вас так цепляет? Давайте проверим.
Макфа? Есть реакция?
Есентуки?
Медведь?
Анон?
Opennet?
Может быть Дядюшка Боб? Что-то есть фиксирую, мы теряем пациента, быстрее введите ему чистый код внутревенно.
Фух вроде отпустило?

А если серьезно даже не знаю чел сходи до книжного и прочитай чистая архитектура и идеальная работа.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #126

106. Сообщение от Фрол (?), 22-Окт-25, 07:51   +3 +/
скиньте кто-нить этому умнику линк на словарь Ожегова

а то от его "афинных" типов у меня скоро глаз дергаться начнет

услышал где-то умное слово и носится с ним, как дурень с писаной торбой

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78 Ответы: #132, #139

107. Сообщение от Аноним (6), 22-Окт-25, 07:56   +/
Вместе с ростом xd
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77

109. Сообщение от Аноним (109), 22-Окт-25, 08:05   +/
V in vibrant community means CVE
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #150

112. Сообщение от Аноним (112), 22-Окт-25, 08:29   +/
> Сотни других неудобных примеров мы конечно проигнорируем, да?

Какие сотни, если ты ни одного не привел?

Тебе вон дали буквально из соседней новости: кодя в Linux залит, и по сравнению с сишным стал не только проще, но и компактнее.

Скажешь что-то сожержательное?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #145

113. Сообщение от Аноним (112), 22-Окт-25, 08:34   –1 +/
> А сколько багов остаются незамеченными тупо из-за того, что раст вынуждает писать нечитаемую лапшу

Откроем-ка осоеднюю новость: https://www.opennet.me/opennews/art.shtml?num=64092

“Использование Rust позволило решить некоторые проблемы с которыми сталкивались разработчики Binder, включая ошибки, связанные с подсчётом ссылок, блокировками и проверкой границ, а также значительно уменьшить сложность обработки ошибок.“

Смотри, эксперт, количество ошибок при использовании Раста только убавилось. Как так?

> раздувать изначально компактный код в несколько раз

Из той же новости:

"драйвер на Rust получился меньше варианта на Си - 5.5 против 5.8 тысяч строк кода."

Смотри, Растовый код не только не раздулся по сравнению с изначальным сишным, но даже стал меньше его! Как так? 😭

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

116. Сообщение от Тфьу (?), 22-Окт-25, 08:56   –2 +/
Обычная логическая ошибка. Сам Rust не причём.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #143

117. Сообщение от Аноним (117), 22-Окт-25, 09:02   +/
Тогда пиши на луа и питоне
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87

118. Сообщение от Аноним (118), 22-Окт-25, 09:09   +/
в одну строку поди писали, все равно ведь раст нечитаемый.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #134

120. Сообщение от Аноним (121), 22-Окт-25, 09:18   +/
Сама суть unit тестов в том, что ты их сам пишешь осознанно, и не доверяешь "ИИ" с его галлюцинациями.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88

121. Сообщение от Аноним (121), 22-Окт-25, 09:21   +/
Кампания популяризации Rust от корпораций как раз нужна им, чтобы набить кодовую базу для "ИИ", а потом "ИИ" всё будет писать сам. Им для "ИИ" нужен был язык, где нет "утечек" по умолчанию. (хотя это спорно). В итоге в будущем много софта будет AI slop написанным на Rust
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

122. Сообщение от Аноним (80), 22-Окт-25, 09:23   +/
С того, что ошибки обработки данных в сишных программах встречаются редко, а вот ошибки управления памятью - часто.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86

123. Сообщение от Аноним (123), 22-Окт-25, 09:23   +/
> От растовиков шум - не будет _только ошибок работы с памятью_ (если не пользоваться ансейфом), а не "всех-всех-всех ошибок"

не-не, там еще шум, что раз нет ошибок с памятью, то будет больше времени отловить остальные.
Вот отлов и пошел — tar не так распаковывается, с md5 тоже что-то не так

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

124. Сообщение от ИмяХ (ok), 22-Окт-25, 09:28   +/
>>вызвана некорректным выбором позиции в потоке

Нужно срочно изобрести язык, который защищает от некорректношо выбора позиции в потоке и всё ПО переписать на него.

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

125. Сообщение от Аноним (80), 22-Окт-25, 09:30   +/
Лапшекод из goto осуждал ещё Дейкстра. Для нормальной обработки нужен как минимум типы Option и Result. А не спагетти, когда выполнение прыгает туда-сюда.
>Вот интересно, обработка ошибок по твоему она магическая какая-то или ей занимается отдельный код?

Да магическая. Поскольку goto ограничен пределами текущей функции, си вынуждает растягивать определния, в то время как монадическая обработка(как минимум) позволяет разбивать функцию на мелкие части.
>Настоящий кал - это как раз запихать в ядро код обработчиков ошибок.

Он уже там есть, только в виде лапши из goto.

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

126. Сообщение от Аноним (80), 22-Окт-25, 09:33   –1 +/
>Лапша есть и возможна на каждом языке программирования.

Не на каждом. Достаточно убрать goto и количество лапши уже резко упадёт.

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

128. Сообщение от Аноним (80), 22-Окт-25, 09:36   –1 +/
>Если я в программе на C сделаю баг как на расте -- можно?

Если матёрые сишники с этим не справляются, то почему вы должны?
>Короче, можно полную инструкцию, какими должны быть правильные баги?

Давайте. Как минимум без выхода за границы массива, двойного освобождения, висячих указателей, чтения нулевых указателей.

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

129. Сообщение от Аноним (80), 22-Окт-25, 09:40   +/
>Во-первых, все баги которые могут случится на чистом Си хорошо документированы и описаны.

Часть багов, которые могут случится на си созданы разработчиками си и называются UB. Ещё часть багов никак не называется, но проистекает из тупой сишной семантики, типа отсуствия гигиенических макросов, нультерминированных строк, отсутствии алгебраических типов и так далее. И что в первом, что втором случае, нужно приложить достаточно усилий, чтобы очередной сишник заметил подвох.
>Дело не в характере ошибок, делов их в количестве. Не думаю, что общее количество ошибок на Расте меньше, чем в Си.

Как только вы отсекаете ошибки управления памятью, то вы автоматически уменьшаете количество ошибок. Логических ошибок от этого больше не становится.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98 Ответы: #160

130. Сообщение от Аноним (80), 22-Окт-25, 09:41   +/
>Не, ребят, сегодня не ваш день

Сказал человек неосиливший xml парсер. От вас так и веет некомпетентностью.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #166

131. Сообщение от Прохожий (??), 22-Окт-25, 09:42   +/
Похоже, вы в упор не понимаете разницу между готовыми абстракциями (которые предоставляет Rust) и собственным велосипедом (который из проекта в проект изобретают программисты на C).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85

132. Сообщение от Аноним (80), 22-Окт-25, 09:43   +/
>услышал где-то умное слово

Так я хочу, чтобы вы тоже услышали, а вы уши затыкаете. Ну и узнали что это такое.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #148

133. Сообщение от Соль земли2 (?), 22-Окт-25, 09:49   +/
И слепой поведёт слепого.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

134. Сообщение от Прохожий (??), 22-Окт-25, 09:51   +/
>в одну строку поди писали

1. Зачем вы свои проблемы проецируете на других?

2. Чтобы не заниматься догадками, можно полезть в исходный код и посмотреть самостоятельно. Или такое действие слишком сложно для типичного "эксперта“, воина борьбы супротив Rust?

Спойлер. Нет, в одну строчку на Rust (как и на любом другом языке программирования) типичные программисты не пишут.

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

135. Сообщение от Аноним (52), 22-Окт-25, 09:53   +1 +/
Да ну?! А что же с Растом не так?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90

136. Сообщение от Соль земли2 (?), 22-Окт-25, 09:53   +/
Может проблема вообще в tar? С какого перепугу архив внутри архива воспринимается как продолжение одного?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #141, #158

137. Сообщение от Аноним (109), 22-Окт-25, 09:54    Скрыто ботом-модератором+1 +/
Ответить | Правка | Наверх | Cообщить модератору

138. Сообщение от Аноним (138), 22-Окт-25, 10:00   +/
>Не думаю

пора начинать

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

139. Сообщение от Медведь (ok), 22-Окт-25, 10:03   +1 +/
Большинство растеров сами не понимают, что это такое -- афинные типы. Но как звучит! Афинные! Греция, оливки, голые рабы на аренах... Они и бегут, пуская слюни и oбляпaвшись смyзи.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #147

140. Сообщение от Аноним (-), 22-Окт-25, 10:07   +/
> производители процессоров

Так в АРМ такая проверка уже давно есть.
Но раст в Андроид внедряют.

Если проверка такая крутая, то почему она не помогает))?

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

141. Сообщение от Аноним (-), 22-Окт-25, 10:08    Скрыто ботом-модератором+/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #136

142. Сообщение от bOOster (ok), 22-Окт-25, 10:14   +2 +/
То-то еще будет. Когда helloworld ваять на расте - там особых и мозгов то не надо. За 3 недели в любом рекламирующемся "factory".. до недопрограммиста!
Ответить | Правка | Наверх | Cообщить модератору

143. Сообщение от Ann (??), 22-Окт-25, 10:16   +1 +/
Ну, в языке C выход за границы массива и "use after free" -  это тоже обычные логические ошибки. Сам C не причем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #116 Ответы: #153, #154

144. Сообщение от Смузихлеб забывший пароль (?), 22-Окт-25, 10:24   +1 +/
но ведь... но безопасно же и боровы чекают и вообще, нельзя выйти за границу массива и безопасная работа с памятью
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

145. Сообщение от Аноним (6), 22-Окт-25, 10:24    Скрыто ботом-модератором+1 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112

146. Сообщение от Аноним (6), 22-Окт-25, 10:27   +1 +/
> Почему программисты на Rust не могут <буквально> переписать логику с реализацией на C, а придумывают собственные дырявые велосипеды? Вообще, тот факт, что на Rust без ИИ программировать не получается по признанию его фанатов наводит на некоторые размышления...

Ну так да, язык рассчитан на то, что человек не может сам нормальный код написать. ВОт только какие-то ошибки он может и отловит, а дальше беда

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

147. Сообщение от Аноним (80), 22-Окт-25, 10:29   +/
>Большинство растеров сами не понимают, что это такое -- афинные типы

Так я не на расте пишу, а вот сишников троллить - одно удовольствие.

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

148. Сообщение от Фрол (?), 22-Окт-25, 10:30   +1 +/
если б ты его еще писал правильно цены б тебе не было

все эти "афинные" типы много помогли, когда прошлым летом выяснилось, что много лет назад в std::process::Command налажали с эскейпингом аргументов и все эти годы имели выполнение в шелле произвольной программы. как первокурсник-башпортянщик.

SUCH SAFE. MUCH SECURITY.

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

149. Сообщение от Аноним (80), 22-Окт-25, 10:33   –2 +/
Господа сишники, объясните мне, зачем вам нужна возможность разыменновывать null, и зачем вам нужны негигиенические макросы?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #151, #152, #161

150. Сообщение от 1 (??), 22-Окт-25, 10:47   +/
Rust вообще как язык ничего. Растодрочерство бесит, как любая секта.
Ну или проще, хвали свое, но не надо хаять чужое.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77 Ответы: #109

151. Сообщение от bOOster (ok), 22-Окт-25, 10:58   +/
Сначала попробуй на низком уровне поработать с памятью, а потом глупости будешь спрашивать.
Хотя разыменовывать null - это тоже глупость. У дурачков зачастую функция возвращает указатель на данные и в какой-нибудь очень "плохой день", когда вдруг памяти не хватило (зачем это предусматривать - любой современный комп имеет ее вагон и маленькую тележку), или еще что-нибудь вдруг возвращает null. Дурачек есстественно не проверяет  сам указатель, а пытается его содержимое проверить на что-нибудь if(*lp .... ). Вот тебе и разыменовывание. Это недостаток мозгов. Так как в данном случае нужны 2 проверки, но дурачек об этом не знает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149 Ответы: #167

152. Сообщение от Аноним (109), 22-Окт-25, 11:05   +2 +/
Потому что ассемблер так умеет, почему бы и сишке не уметь? А зачем тебе нужна возможность молотком себе по яйцам бить?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149

153. Сообщение от Аноним (-), 22-Окт-25, 11:07   +2 +/
> Ну, в языке C выход за границы массива и "use after free" -  это тоже обычные логические ошибки.

Это когда приводят int к uint, получают переполнение с UB?
Что-то логикой тут не пахнет))


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

154. Сообщение от Тфьу (?), 22-Окт-25, 11:11   +/
> Ну, в языке C выход за границы массива и "use after free"
> -  это тоже обычные логические ошибки. Сам C не причем.

Нет. Это неопределённое поведение.

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

155. Сообщение от Аноним (155), 22-Окт-25, 11:12   –1 +/
Совершенно беспредельная модерация. Трется все подряд. Никуда не годится.

Анонимы, пора во имя свобод запустить свою платформу для тро*обсуждений. Без кровавого модерирования, предвзятости, кликушничества и вот этого всего.
Надоело! Писать будем на православных ЯП'ах и использовать только православные тулкиты. Ну и конечно же правильные ОС.

Собираем на топливо для старта и хостинг, не скупимся, товарищи!

bitcoin:bc1q84dqjfgmu94hfqd0s8vp9dlva2m2cxx9xlx4ra

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

156. Сообщение от Аноним (-), 22-Окт-25, 11:13   +/
> Вот интересно, обработка ошибок по твоему она магическая какая-то или ей занимается  отдельный код?

Ага.
Например инвариант который проверит все возможные состояния.

> Настоящий кал - это как раз запихать в ядро код обработчиков ошибок. Задумайся почему в ядре даже стандартных библиотек нет.

Потому что ведро писал студент, а там как получилось)
Зато в ядре есть 100500 велосипедов, про которые этот самый бывший студент недавно говорил:  "You'd think that all the basics would have been fixed long ago, but they're not. We're still dealing with basic issues such as memory management."

Напомню что в недоязыках на старте не было даже структуры String не было.
А поддержка UTF до сих пор хромает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85 Ответы: #163

157. Сообщение от Аноним (-), 22-Окт-25, 11:15   +/
> Собираем на топливо для старта и хостинг, не скупимся, товарищи!

Не-не-не.
Вы сначала стартаните.
Мы потроллим и посмотрим на отсутствие можирации.
А потом, возможно, скинем пару шекелей.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #155 Ответы: #159, #165

158. Сообщение от Медведь (ok), 22-Окт-25, 11:22   +/
> Может проблема вообще в tar? С какого перепугу архив внутри архива воспринимается как продолжение одного?

Чего уж там, если мир не подходит для раст -- нафиг такой мир. Всё должно быть таким, чтобы если скомпилировалось на раст -- значит работает. Эврика, я придумал, как писать абсолютно безглючные программы!

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

159. Сообщение от Медведь (ok), 22-Окт-25, 11:26   +1 +/
Но вот с чем соглашусь -- мoдерация в натуре задoлбала, трутся совершенно нейтральные и никого не задевающие посты, по совершенно неведомым соображениям. Посмотрим, сколько продержится этот.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

160. Сообщение от Медведь (ok), 22-Окт-25, 11:37   +/
> Как только вы отсекаете ошибки управления памятью, то вы автоматически уменьшаете количество ошибок. Логических ошибок от этого больше не становится.

Это было бы прекрасно, если бы не одно жирное "однако". Однако раст исключает (некоторые) ошибки управления памятью за счет драконовских, вообще говоря, ограничений боровчекера и ценой отказа от множества распространенных (проверенных, отработанных и удобных!) парадигм и техник программирования. Я не говорю уже о тормозах при компиляции из-за туевой хучи проверок и тому подобных неудобствах. Фокус в том, что это все вместе взятое вполне себе увеличивает вероятность появления ошибок остальных 100500 сортов, от которых раст не защищает.

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

161. Сообщение от Аноним (55), 22-Окт-25, 11:45   +/
>зачем вам нужна возможность разыменновывать null

Потому что в железе нет никакого специального значения null, это как правило адрес 0x0. И это совершенно валидный адрес. На некоторых платформах (DOS, например) его нужно рызыменовывать, там начало таблицы ISR.
Никто не мешает тебе написать ОС, у которой по адресу 0x0 будут находиться какие-то вполне легальные данные.

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

162. Сообщение от Советский инженер (ok), 22-Окт-25, 11:47   +/
> Ничего не пишут, только переписывают

отлично, о том и разговор.
значит ты легко приведеш примеры где перерисывание с С на Раст раздуло исходники.

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

163. Сообщение от Аноним (80), 22-Окт-25, 11:50   +/
>Напомню что в недоязыках на старте не было даже структуры String не было.

Так и сейчас нет.

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

164. Сообщение от Аноним (164), 22-Окт-25, 11:52   +/
Батюшки, уязвимость! В расте! Да что ж это такое делается, милостивые государи?.. Вы же обещали! Караул!!
Ответить | Правка | Наверх | Cообщить модератору

165. Сообщение от Аноним (155), 22-Окт-25, 11:53   +/
Ага, за такое дело садиться на сухую, такое себе. Надо же резкость навести, да настроение поднять. Так сказать к нужному каналу подключиться.

Модерация: только мат, и совсем уж прямые наезды колхозного типа. Толстые набросы модерироваться не будут.

Все это только джаст фон фан. Классическая схема бузинесса тут не работает: аля вложил, а шекели потом.
Не ради денег, но за идею и веселья для.

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

166. Сообщение от ProfessorNavigator (ok), 22-Окт-25, 11:55   +/
> Сказал человек неосиливший xml парсер. От вас так и веет некомпетентностью.

И это всё? Кроме унылых попыток перейти на личности больше уже ничего не осталось? Ни высосанных из пальца примеров кода? Ни набросов про undefined behavior?)) Совсем-совсем ничего? Да-а-а... Мельчает тролль)) Может вам пора другую работу поискать? Пока возможность есть? Поучиться там чему? Вопросы, если что - риторические, чисто вам на заметку.

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

167. Сообщение от Аноним (80), 22-Окт-25, 11:55   +/
>Хотя разыменовывать null - это тоже глупость.

Удивительно, вы это признаёте.
>Так как в данном случае нужны 2 проверки, но дурачек об этом не знает.

То есть разделить указатели на два типа - точно не null и возможно null - и запретить разыменновывать те, которые возможно null - слишком сложно для сишников? Почему даже такая простая вещь до сих пор не встроена в компилятор?

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


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

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




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

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