The OpenNET Project / Index page

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



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

Оглавление

Проект по реализации утилит sudo и su на языке Rust, opennews (??), 29-Апр-23, (0) [смотреть все]

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


1. "Проект по реализации утилит sudo и su на языке Rust"  +13 +/
Сообщение от Аноним (1), 29-Апр-23, 21:20 
Пусть лучше мир прогнётся под rust...
Ответить | Правка | Наверх | Cообщить модератору

3. "Проект по реализации утилит sudo и su на языке Rust"  +5 +/
Сообщение от EuPhobos (ok), 29-Апр-23, 21:23 
Всё заржавеет
Ответить | Правка | Наверх | Cообщить модератору

41. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (41), 29-Апр-23, 22:27 
За rust'ом не заржавеет
Ответить | Правка | Наверх | Cообщить модератору

44. "Проект по реализации утилит sudo и su на языке Rust"  +9 +/
Сообщение от Tron is Whistling (?), 29-Апр-23, 22:33 
Мир-то ничего, но вот насчёт того, что кому-то здесь за новости о таковом возможно приплачивают, уже давно есть определённые предположения.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

84. "Проект по реализации утилит sudo и su на языке Rust"  +2 +/
Сообщение от Аноним (84), 30-Апр-23, 01:18 
Противный rust не разрешает писать что-то вроде
int x[24];
char *y=x[-1];
и требует всякое, чему на курсах "как стать сеньором в с++ с нуля за две недели" не учат. Ну там не писать или читать по указателю если он не инициализирован или после того, как на указатель free сделано. Это нарушает мою свободу!!расрас

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

86. "Проект по реализации утилит sudo и su на языке Rust"  +6 +/
Сообщение от Аноним (86), 30-Апр-23, 01:39 
>создать соломенное чучело
>победить его

Классика.

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

97. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от n00by (ok), 30-Апр-23, 07:21 
> rust не разрешает писать что-то вроде
> int x[24];
> char *y=x[-1];

Воистину чудеса творит!

$ cat rust.cpp
// let us pray to great Cargo
void rust()
{
  int x[24];
  char *y=x[-1];
}

$ g++ rust.cpp
rust.cpp: В функции «void rust()»:
rust.cpp:5:15: ошибка: invalid conversion from «int» to «char*» [-fpermissive]
    5 |   char *y=x[-1];
      |           ~~~~^
      |               |
      |               int

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

98. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (84), 30-Апр-23, 07:41 
А это ничего что в примере я обращался к -1 элементу массива, то есть по факту - фиг знает куда?
Ответить | Правка | Наверх | Cообщить модератору

99. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от n00by (ok), 30-Апр-23, 07:45 
> А это ничего что в примере я обращался к -1 элементу массива,
> то есть по факту - фиг знает куда?

Это совершенно естественно, поскольку Вы не имеете ни малейшего представления о языке и std::array.

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

100. "Проект по реализации утилит sudo и su на языке Rust"  –1 +/
Сообщение от Аноним (84), 30-Апр-23, 08:01 
Мои знания C++ заканчиваются 11 версией стандарта, что после нее поменялось - без понятия. Но вот чужой код, в подобном стиле написанный, видеть доводилось. Обычно бывает когда ты на плюсы с обычного C приходишь и пишешь как там привык без всех этих контейнеров и прочего добра.
Ответить | Правка | Наверх | Cообщить модератору

130. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 30-Апр-23, 10:11 
Знания плюсов начинаются с понимания концепции итераторов и контейнеров, их ввели ещё Степанов и Ли. std::array должен быть в стандарте 11 года. Лично для Вас я не полезу его цитировать -- Вы же его знаете и сами найдёте.
Ответить | Правка | Наверх | Cообщить модератору

256. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (256), 02-Май-23, 00:35 
>Знания плюсов начинаются с понимания концепции итераторов и контейнеров

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

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

259. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 02-Май-23, 09:14 
> Если пишешь что-то, не обремененное
> требованиями, то сойдет их использование.
> В противном случае, никакого stl, там
> одни тормоза.

А если у меня есть реализация "stl", опровергающая мрии эксперта?

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

270. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (256), 02-Май-23, 12:02 
Вот и юзай сколько влезет, и не лезь к экспертам.
Ответить | Правка | Наверх | Cообщить модератору

272. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 02-Май-23, 12:51 
Так ты сам ко мне лезешь с антинаучной ересью.
Ответить | Правка | Наверх | Cообщить модератору

279. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (256), 02-Май-23, 16:11 
Выдыхай, просто сообщил как оно у серьезных дяденек, а ты тут со своими мриями и фантазиями полез.
Ответить | Правка | Наверх | Cообщить модератору

294. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 03-Май-23, 14:42 
Скажи, кто из "серьёзных дяденек" тебя послал ко мне? И зачем он взял тебя в ученики, когда ты не умеешь смотреть ассемблерный листинг?
Ответить | Правка | К родителю #279 | Наверх | Cообщить модератору

106. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 08:48 
Феерически унылый пример, который разве что ну совсем уж чайник напишет.
А вообще обращение к отрицательным элементам может быть вполне осмысленным.
Но да, привычка себя ограничивать во имя - такая привычка.
Ответить | Правка | К родителю #98 | Наверх | Cообщить модератору

109. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (84), 30-Апр-23, 08:55 
> Феерически унылый пример, который разве что ну совсем уж чайник напишет.

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

> А вообще обращение к отрицательным элементам может быть вполне осмысленным.

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

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

113. "Проект по реализации утилит sudo и su на языке Rust"  +2 +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 09:12 
Почему в чужую? Если указатель на некий массив данных сознательно находится не в начале блока данных.
Ответить | Правка | Наверх | Cообщить модератору

114. "Проект по реализации утилит sudo и su на языке Rust"  –1 +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 09:14 
Но это всё опять идёт от той логики, которой сявки, не видевшие ничего кроме языкамов сверхвысокого уровня, вообще себе не представляют.
Ответить | Правка | К родителю #109 | Наверх | Cообщить модератору

115. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Аноним (115), 30-Апр-23, 09:15 
Вообще, operator[] может быть переопределён и вы там можете делать, что хотите. Другое дело, что стандартная сигнатура этого оператора подразумевает аргумент типа std::size_t, а не int. Так что индекс -1 - это немного странно, я такого никогда в рабочем коде не видел.
Ответить | Правка | К родителю #109 | Наверх | Cообщить модератору

117. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (84), 30-Апр-23, 09:26 
А что-нибудь вроде:
int x[24]; int y=0; int z=x[--y];

Я вот видел и это был не мой код. Отловил когда сегфолты достали.

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

118. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Аноним (115), 30-Апр-23, 09:35 
Ну это дичь, конечно, да.
Этот пример любой статический анализатор поймает, я думаю.
В то же время, если кто-то такое пишет, его надо отправлять учиться дальше, тут уже не важно на чём он пишет, его нельзя к коду подпускать, он и на rust найдёт способ себе голову отстрелить.
Ответить | Правка | Наверх | Cообщить модератору

119. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 09:38 
С чего бы дичь.
У меня поинтер может в силу определённых причин показывать например на элемент P=N+M, а мне надо достать элемент P-1.
Ответить | Правка | Наверх | Cообщить модератору

253. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от scriptkiddis (?), 01-Май-23, 22:53 
Тихо ты, в их мире такого не бывает
Ответить | Правка | Наверх | Cообщить модератору

120. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 09:39 
А, фак, сорян, не на тот ответ ответил.
Это в продолжение моего поста выше об отрицательных индексах и логике.
Ответить | Правка | К родителю #118 | Наверх | Cообщить модератору

123. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним123 (?), 30-Апр-23, 09:49 
$ cat q.c
#include <stdio.h>
int main()
{
  int x[24]; int y=0; int z=x[--y];
  printf("y: %d", z);
  return 0;
}
$ gcc q.c -Wall -Wextra -Wuninitialized
q.c: In function ‘main’:
q.c:4:27: warning: ‘x[y]’ is used uninitialized in this function [-Wuninitialized]
    4 |   int x[24]; int y=0; int z=x[--y];
      |
$ cppcheck q.c  --enable=all
Checking q.c ...
q.c:4:30: error: Array 'x[24]' accessed at index -1, which is out of bounds. [negativeIndex]
  int x[24]; int y=0; int z=x[--y];
                             ^
q.c:4:20: note: Assignment 'y=0', assigned value is 0
  int x[24]; int y=0; int z=x[--y];
                   ^
q.c:4:30: note: Negative array index
  int x[24]; int y=0; int z=x[--y];
                             ^
q.c:4:7: style: Variable 'x' is not assigned a value. [unassignedVariable]
  int x[24]; int y=0; int z=x[--y];
      ^
nofile:0:0: information: Cppcheck cannot find all the include files (use --check-config for details) [missingIncludeSystem]

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

181. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (181), 30-Апр-23, 15:05 
Не используй cppcheck, возьми smatch, как белые люди.
Ответить | Правка | Наверх | Cообщить модератору

122. "Проект по реализации утилит sudo и su на языке Rust"  +2 +/
Сообщение от Аноним123 (?), 30-Апр-23, 09:45 
При всём уважении к Расту, чтобы найти все ошибке в этом С коде достаточно собирать с gcc -Wall -Wextra -Wuninitialized и запускать cppcheck --enable=all.
Ответить | Правка | К родителю #97 | Наверх | Cообщить модератору

135. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 30-Апр-23, 10:32 
В том то и дело, что код на Си. А заявлен автором как Си++. :)
Ответить | Правка | Наверх | Cообщить модератору

141. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от wyry (?), 30-Апр-23, 11:32 
А вы не подсказывайте xD. Подобные "примеры" лишь дискредитируют их авторов. И вообще проблемы с доступом к чужой памяти уже не слишком актуальны, если у разработчика достаточная квалификация, а более сложные проблемы, например, "висячие" ссылки им недоступны, т.к. те, у кого лишь поверхностные знания даже не будут знать как такое возможно.
Ответить | Правка | Наверх | Cообщить модератору

154. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от hex (??), 30-Апр-23, 12:08 
> И вообще проблемы с доступом к чужой памяти уже не слишком актуальны

Чта? Квалификация квалификацией а человеческий фактор никто не отменял. Если язык позволяет просто по невнимательности допустить настолько серьезные ошибки то это плохой язык. Мелкомягкие тоже все на расте переписывают, по их статистике 70% уязвимостей связаны именно с управлением памятью. Наверное там разрабы с недостаточной квалификацией работают?

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

172. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от n00by (ok), 30-Апр-23, 14:01 
Мы как раз и наблюдаем этот человеческий фактор. Автор примера по невнимательности перепутал языки, по невнимательности заявил, что std::array в стандарте 11го года отсутствовал, по невнимательности приписал свою компетенцию каким-то сказочным сеньорам-помидорам. Из этого сделал вывод, что Rust всех спасёт.
Ответить | Правка | Наверх | Cообщить модератору

257. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (256), 02-Май-23, 00:36 
>Наверное там разрабы с недостаточной квалификацией работают?

Удивительно, правда.

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

173. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от n00by (ok), 30-Апр-23, 14:05 
Дело в том, что тут в силу специфики сайта в основном программисты на Си, и они могут принимать вот те примеры за чистую монету. Мне довелось повидать удивительный код на плюсах, но обычно там вместо int x[24]; что-то типа vector<vector<string>>.
Ответить | Правка | К родителю #141 | Наверх | Cообщить модератору

104. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 08:44 
У вас часто есть желание такое написать?
Если да - рекомендую профильного специалиста от медицины.
Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

110. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Аноним (84), 30-Апр-23, 08:56 
У меня - нет. Зато у других судя по основной массе CVE есть и желание, и возможности.
Ответить | Правка | Наверх | Cообщить модератору

230. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Аноним (230), 01-Май-23, 16:27 
>судя по основной массе CVE

И когда успел изучить большинство существующих CVE, чтобы такое утверждать? Это же сколько всего можно было "переписать на Расте" за это время, страшно подумать.

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

91. "Проект по реализации утилит sudo и su на языке Rust"  +3 +/
Сообщение от maximnik0 (?), 30-Апр-23, 04:31 
Это вы ещё вы битв насчёт явы не застали.Ух сколько криков было...все пройдет, как и net.Тишина какая то сейчас этой платформы,а сколько криков тоже стояло.
Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

95. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Neon (??), 30-Апр-23, 06:30 
Это да, а ведь как рекламировали очередную серебрянную пулю))).
Ответить | Правка | Наверх | Cообщить модератору

107. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 08:50 
Ну, в отличие от этого, жаба с ботнетом таки заняли свои огромные ниши.
А это будет валяться примерно рядом с рубями и гошекой, и чего там ещё такого было.
Ответить | Правка | К родителю #91 | Наверх | Cообщить модератору

144. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Бывалый смузихлёб (?), 30-Апр-23, 11:45 
так они не сами по себе заняли - за ними стояли огромные конторы и жирнющие стеки
Ответить | Правка | Наверх | Cообщить модератору

149. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 12:00 
Ну, жирнее гугла не видно :)
Ответить | Правка | Наверх | Cообщить модератору

111. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Аноним123 (?), 30-Апр-23, 08:57 
И джава и .нет не позиционировались как замена С. Раст позиционируется, на нём пишут драйвера, браузеры, операционные системы.
Ответить | Правка | К родителю #91 | Наверх | Cообщить модератору

150. "Проект по реализации утилит sudo и su на языке Rust"  +1 +/
Сообщение от Tron is Whistling (?), 30-Апр-23, 12:00 
> И джава и .нет не позиционировались как замена С. Раст позиционируется, на нём пишут хеллоуворлды

Fixed

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

155. "Проект по реализации утилит sudo и su на языке Rust"  +/
Сообщение от maximnik0 (?), 30-Апр-23, 12:15 
>И джава и .нет не позиционировались как замена С.

Ява обновлялась как язык общего применения.Есть реализация очень близкая к  C.Просто эта была не "безопасная" ява,очень урезанная по проверкам,но лучше чем в С. Java SE embedded- не рекламируют,но до сих пор поддерживают.А про  RTSJ не забыли ?  (Real-Time Specification for Java)

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

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

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




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

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