1.2, Fracta1L (ok), 19:43, 18/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Нужен язык, который не позволяет оставлять алгоритмические ветки необработанными.
| |
|
2.7, Аноним (-), 19:49, 18/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Хм.. кажется zig такое умеет.
Ну или V на крайняк.
Можно было бы сделать Safe-C, но кто ж этим будет заниматься.
| |
|
3.19, Аноним (-), 20:41, 18/02/2025 [^] [^^] [^^^] [ответить]
| +4 +/– |
> есть такой, но его тут хейтят, особенно те кто не могут осилить
Brainfuck чтоли? По принципу - не смогли написать ssh сервер - и дыр нет, зашибись? :)
| |
3.75, Аноним (74), 07:38, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Давай уж не звезди, он не устраняет логические ошибки.
PS Да вообще сомнительно, что такой язык возможен. Разве что, привлечение к этому AI поможет.
| |
|
2.57, penetrator (?), 23:34, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
в данном случае достаточно было bool, но это СИ, и многое там просто потому что так договорились
| |
|
3.78, Аноним (78), 09:23, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Тпипизация в состоянии отследить и логические ошибки тоже. Особенно со всякими зависимыми типами и верифицированным кодом
| |
|
2.81, Аноним (78), 09:33, 19/02/2025 [^] [^^] [^^^] [ответить]
| –2 +/– |
Таких языков уже куча. Из относительно популярных: rust, haskell, ocaml. Восходят эти языки к восьмидесятым (SML), если не раньше. Но сишники как всегда не в курсе, что там вообще существует
| |
2.86, Ivan_83 (ok), 10:07, 19/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Зачем?
Какую проблему это решит?
Я иногда пишу так что у меня есть куски которые по идее никогда не отработают.
Но если что то случится то в теории их срабатывание возможно :)
| |
|
3.99, Аноним (78), 12:45, 19/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Я иногда пишу так что у меня есть куски которые по идее никогда не отработают.
Для таких вещей, как openssl не помешало бы и докзательство, но сишники не осилили даже алгебраические и афинные типы
| |
|
4.107, Ivan_83 (ok), 13:42, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Доказательство чего?
А в ветки которые никогда не должны по идее выполнятся я могу напихать или abort() или логирование.
С язык не для алгебры.
Если вам нужны какие то там типы - берите и реализовывайте их самостоятельно или ищите готовую либу.
Нет смысла перегружать язык всевозможным мусором.
| |
|
5.110, Аноним (78), 14:51, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>Доказательство чего?
Корректности кода
>я могу напихать или abort() или логирование.
Вы случаем не любитель динамической типизации? Ну и что, что упадёт в рантайме?
>Если вам нужны какие то там типы - берите и реализовывайте их самостоятельно или ищите готовую либу.
А софт с типами кто будет писать? Тот же ssh?
| |
|
6.128, Ivan_83 (ok), 00:37, 20/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Для проверки корректности достаточно тестов.
Мне всё равно какая там типизация.
Вы хотели работать с арифметикой, вот и работайте, для этого есть либы на С.
В коде openssh хватит и базовых типов доступных в языке.
| |
|
7.131, Аноним (78), 01:12, 20/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>Для проверки корректности достаточно тестов.
Тесты годятся для того, чтобы показать наличие ошибок, но не годятся для доказательства отсутствия этих самых ошибок (цитата)
>Вы хотели работать с арифметикой
Ещё один сишник, увидев выражение алгебраический тип данных, решил, что это что-то с арифметикой связанное, даже не потрудившись посмотреть определние. Вас под копирку штампуют?
Алгебраический тип например
type 'a option =
| None
| Some of 'a
Делаете так, и NPE у вас болеть не будет
| |
|
|
|
|
|
|
1.3, Аноним (3), 19:43, 18/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
>выделяется 256-байтовый буфер для формирования ответа, но данный буфер освобождается только после завершения согласования ключей
Ни какой даже самый безопасный ЯП не спасет от человеческой глупости.
| |
|
2.6, Уууууъъъ (?), 19:48, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Первая уязвимость (CVE-2025-26465) вызвана логической ошибкой
Книги по логике способны помочь человеку, но многие не хотят тратить время на их чтение и изучение.
| |
|
3.27, Аноним (3), 20:48, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Книги по логике способны помочь человеку
Альберту Эйнштейну приписывают следующее высказывание:
"В мире есть всего две бесконечные вещи: Вселенная и человеческая глупость". А потом добавил: "Впрочем, на счет Вселенной я еще сомневаюсь"
| |
|
4.55, Аноним (55), 23:19, 18/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Сомнительная отсылка к сомнительному авторитету.
СТО опирается на метрику поляка Минковского.
Именно у этого преподавателя учился физике указанный студент в Швейцарии.
А введённое этим студентом убирание знаков сложения и умножения в формулах просто феерично - тупо "лень писать каждый раз".
| |
|
5.76, Аноним (74), 07:43, 19/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Минковский сопоставил СТО с псевдоевклидовой метрикой уже после создания самой СТО.
| |
|
|
|
2.82, Аноним (78), 09:34, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Типизация в состоянии отследить и логические ошибки тоже. Особенно со всякими зависимыми типами и верифицированным кодом
| |
|
1.8, Аноним (-), 19:53, 18/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
> проверяется только код ошибки "-1", а другие коды, такие как
> "-2", игнорируются. В итоге функция verify_host_key_callback()
> может вернуть успешный код "0", несмотря на возврат ошибки "-2"
> функцией verify_host_key().
Это не логическая ошибка.
Это убогость обработки ошибок в сишечке в принципе.
Если бы вместо -1, -2 и других ну совершенно очевидных значений, был бы нормальный enum, а на месте обработки exhaustive switch - то эту ошибку просто НЕВОЗМОЗМОЖНО было бы проигнолить - код бы просто не собрался бы.
| |
|
2.10, Аноним (11), 20:16, 18/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Это убогость обработки ошибок в сишечке в принципе.
Это убогость программиста, в случае убогости сишечки, вы бы данный случай не переписали бы так, что проблема разрешилась бы.
| |
|
3.15, Аноним (-), 20:33, 18/02/2025 [^] [^^] [^^^] [ответить]
| –2 +/– |
> вы бы данный случай не переписали бы так, что проблема разрешилась бы.
Вы фикс видели?
- xxx_conn_info) == -1)
+ xxx_conn_info) != 0)
А теперь вопрос, если там будет >0, то что тогда?
| |
|
4.16, Аноним (11), 20:36, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А теперь вопрос, если там будет >0, то что тогда?
и сишечка вам не даст возможности что-либо сделать?
| |
|
5.21, Аноним (-), 20:43, 18/02/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
> и сишечка вам не даст возможности что-либо сделать?
Наоборот!
Она даст тебе возможность сделать еще одну ошибку.
| |
5.26, Аноним (11), 20:47, 18/02/2025 [^] [^^] [^^^] [ответить]
| +3 +/– |
> Она даст тебе возможность сделать еще одну ошибку.
Ошибку совершает человек!!!! причем тут сишечка?
| |
|
6.39, Аноним (-), 21:23, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Ошибку совершает человек!!!! причем тут сишечка?
В отрезанном пальце виновата работник, циркулярка или недоинженер, которых не спроектировал защиту?
Вот тут также. Виноваты все.
Причем работник тоже - он согласился работать на этом убожестве.
| |
|
7.42, Аноним (11), 21:35, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> которых не спроектировал защиту?
не защиту в целом, а защиту от дурака, в этом могу согласиться.
> Причем работник тоже - он согласился работать на этом убожестве.
Тут главное инструкции безопасности. Ну представьте себе нож, который кроме хлеба ничего (физически) больше резать не может, возможен ли такой нож? Легче уж, испечь хлеб в "нарезанном" (порционном) объеме, чем бояться порезать палец при его нарезании опасным ножом. Вопрос широкий, что лучше в с точки зрения безопасности. А если мы ограничиваем гипотетический нож, который режет только хлеб, то мы должны придумать N других ножей на все случаи жизни. Отсюда и проблема типового исчисления, а бестиповому все по :)
| |
|
|
|
4.23, Аноним (11), 20:45, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
если программист выбирает тип для данных, где количество допустимых значений равно 2^32, то он обязан описать условие на каждое из значений и не надеяться на, что там кроме 0 и 1
других значений не будет присвоено. Отсюда для облегчения и ввели оператор варианта с дефолтом.
| |
|
5.31, Аноним (-), 20:51, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> если программист выбирает тип для данных, где количество допустимых значений равно 2^32
А других типов данных у него нет.
Можно было бы взять signed char дабы сузить количество вариантов, но принципиально это бы ни на что не повлияло бы.
| |
|
6.38, Аноним (11), 21:22, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А других типов данных у него нет.
ну тогда нужно использовать enum.
> Можно было бы взять signed char дабы сузить количество вариантов, но принципиально это бы ни на что не повлияло бы.
Принципиальным тут должно быть количество ЗНАЧИМЫХ тогда значений, из 2^8 - 2 значения. Но в новости у "успеха" (успешный результат функции) значение 0, а у "ошибки" значения -1, -2 и т.д. И проверка ведется на истинность "ошибки" (== -1), так кто убог? И поэтому переписали на (!= 0), ИСТИНА - если результат функции НЕ "успешен". И что будет если >0, все тоже - ИСТИНА, так как это не результат "успеха", ибо такая задумка программиста.
| |
|
7.41, Аноним (-), 21:30, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> ну тогда нужно использовать enum.
Чем бы тебе помог сишный енам?
Вот пример с незахендренным кейсом godbolt.org/z/1eo7Pjvcr
Ворнинг есть только у шланга. Для гцц нужно выставлять всякие флаги, вроде -Wall
А твоя софтина вообще не факт что соберется с -Wall )))
| |
|
8.45, Аноним (11), 21:55, 18/02/2025 [^] [^^] [^^^] [ответить] | +1 +/– | Тем, что я явно описал все допустимые значения, а то что забыл проверить одно из... текст свёрнут, показать | |
|
9.83, Аноним (78), 09:39, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– | Сразу видно, что Аноним не работал с большими проектами, где часть кода написана... текст свёрнут, показать | |
|
8.79, Аноним (78), 09:26, 19/02/2025 [^] [^^] [^^^] [ответить] | –1 +/– | Си нужно закопать А в нормальных языках есть сопоставление с образцом, на что и... текст свёрнут, показать | |
|
|
|
5.89, Ivan_83 (ok), 10:11, 19/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Опять кто то кому то обязан.
int часто берут и юзают как bool, просто потому что удобно и примерно понятно что оно станет регистром при вызове и потому что уж 2 то значения в себя уместит.
Никто не парится этими вашими типами и прочей чепухой, потому что это ничего не даёт.
| |
|
6.100, Аноним (78), 12:47, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>int часто берут и юзают как bool, просто потому что удобно
В си уже появился bool? Когда успел?
| |
|
|
4.51, COBA (?), 23:03, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Скорее всего просто сперва написали что может быть только 0 в случае удачного завершения и -1 в случае неудачного. А потом кто-то дописал патч на проверку памяти и решил чтобы отличить такую ситуацию возвращать -2. Ну а проверку возвращаемых значений никто не проверил. Вот и результат.
| |
|
5.56, Аноним (11), 23:32, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
с точки зрения логики, функция должна возвращать либо успех (истина), либо не успех (ложь), третьего не дано по закону исключенного третьего. Но архитектурно, понятия возвращаемого значения функции нет. Можно было бы сделать дополнительный флаг в регистре флагов, за которым закреплялось бы логическое 1 - успешно, 0 - неуспешно, которое устанавливалось бы до инструкции возврата (ret) и сбрасывалось в 0 при вызове (call).
| |
|
6.60, Аноним (60), 01:04, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
А с точки зрения математики, функция y=f(x) — соответствие между двумя множествами, при котором каждому элементу одного множества соответствует элемент другого.
Как-то так. Надеюсь суть возражения понятна.
| |
|
7.65, Аноним (11), 02:19, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Как-то так. Надеюсь суть возражения понятна.
То что вы описали, это область значений функций, и я не отменял их, допустимо и соответствие с пустым множеством значений, что равносильно процедуре, которая не возвращает значение. Ведь архитектурно, о возвращаемом значение ничего не говорится, только принимается по общему согласию (Calling convention). Архитектурно, все функции это процедуры, при call кладут на стек адрес следующей инструкции, делают прыжок по адресу процедуры, и по ret прыгают по адресу лежащему на вершине стека. Я предлагаю архитектурно добавить логический флаг (TF - truth flag) "успешности (истинности) процедуры (функции)" и опкоды типа STS - set TF flag 1, CLT - clear TF flag, JT - jump if TF=1 и т.д. И не вижу никаких проблем.
| |
|
8.87, Аноним (60), 10:07, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– | Архитектурно уже есть варианты Например с использованием исключениям, когда фун... большой текст свёрнут, показать | |
|
7.95, Аноним (3), 11:17, 19/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
>каждому элементу одного множества соответствует элемент другого
Двоешник.
Функция y=mod|10|(x)
Значению y=5 соответствует какое значение х = 5, 25 или 55?
| |
|
8.97, Аноним (60), 12:03, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– | А чё не y x 2 при y 4 Цитата из одной из энциклопедий, ближе к концу статьи ... большой текст свёрнут, показать | |
|
9.98, Аноним (60), 12:14, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– | Можно конечно ввести госты стандарты на оформление функций и строго следить за и... текст свёрнут, показать | |
|
|
|
6.66, Аноним (66), 02:53, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> либо успех (истина), либо не успех (ложь), третьего не дано по закону исключенного третьего
Есть ещё отсутствие результата, nil. Но для того, чтобы это понять надо думать не как кодер, а как программист.
| |
|
7.68, Аноним (11), 04:38, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Есть ещё отсутствие результата, nil.
Ну в таком случае мы говорим об логической успешности или не успешности функции?
| |
|
6.96, COBA (?), 11:18, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
В том то и дело что неуспех может быть разный. Может неверные параметры пришли или что-то случилось что требует дополнительной обработки. Вот и пользуются таким способом.
| |
|
7.117, Аноним (113), 15:59, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> В том то и дело что неуспех может быть разный.
Да и логика бывает разной, для классической допустим закон исключенного третьего, для конструктивной - нет. Но функции бывают не только "результативные по количеству", но и логические, где результат этой функции это логическая либо истина, либо ложь. К таким функция можно отнести все логические функции, функции выделения ресурсов, функции контроля, проверки доступа и т.д. Архитектурно этого нет, есть тупо процедура call/ret, и все "передаваемые-возвращаемые" параметры реализованы по соглашению.
| |
|
|
|
4.71, Буратино (?), 06:10, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
"Ничего не будет и это жизнь".
0 является типовым кодом "нет ошибок" в коде на Си.
А все, что не ноль, то ошибка (кроме функций типа read()).
| |
|
|
2.13, sena (ok), 20:27, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Если бы вместо -1, -2 и других ну совершенно очевидных значений, был бы нормальный enum, а на месте обработки exhaustive switch - то эту ошибку просто НЕВОЗМОЗМОЖНО было бы проигнолить - код бы просто не собрался бы.
Да лана, просто проверяешь <0 и всё. Switch же это не обязательная конструкция, так что ошибку можно тоже допустить.
| |
|
3.20, Аноним (-), 20:42, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Да лана, просто проверяешь <0 и всё.
Та если бы.
Вот фикс github.com/openssh/openssh-portable/commit/0832aac79517611dd4de93ad0a83577994d9c907
Они просто позабывали выставить ошибки
r = SSH_ERR_INVALID_FORMAT;
перед вызовом goto out;
Тут вообще все прекрасно))
И goto, и забытые ошибки, и неинициализированная "int r;", и фикс вида
- xxx_conn_info) == -1)
+ xxx_conn_info) != 0)
| |
3.25, Аноним (-), 20:47, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Да лана, просто проверяешь <0 и всё.
А потом какая-то "светла голова" например решит, что "0" это тоже нормально для ошибки.
Ну если такое значение не валидно.
> Switch же это не обязательная конструкция, так что ошибку можно тоже допустить.
Да про всё что угодно можно сказать "не обязательная конструкция".
Например про проверки входных данных или размеры массивов)
| |
|
4.33, sena (ok), 21:01, 18/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Да про всё что угодно можно сказать "не обязательная конструкция".
> Например про проверки входных данных или размеры массивов)
Если ошибка может быть допущена, то она будет допущена. Закон Мерфи же.
| |
|
5.36, Аноним (-), 21:05, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Если ошибка может быть допущена, то она будет допущена. Закон Мерфи же.
Отказываемся от светофоров, изоленты и ТБ на производстве))?
Ну типа если человек захочет себе выстрелить в ногу он это сделает?
Или сделаем так, чтобы ошибка "не могла быть допущена" или хотя бы "чтобы допустить ошибку тебе придется попотеть" ?
| |
|
|
7.40, Аноним (-), 21:24, 18/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Нет, просто отказываемся от преувеличений и абсолютизации. Если придерживаться ТБ, то аварии не станут НЕВОЗМОЖНЫ[1], они просто будут реже происходить.
> 1. https://www.opennet.dev/openforum/vsluhforumID3/136057.html#8
Думаю это уже лучше чем полагаться на авось)
Т.е если вернуться к теме обсуждения - то:
1. сделать вместо убогих интов, нормальную ошибку (енум, структура и тд).
2. посадить компилятор бить пограммистов по корявкам за написание плохого кода (ну или просто кибербуллить в интернете)
| |
|
8.47, Аноним (11), 21:58, 18/02/2025 [^] [^^] [^^^] [ответить] | +/– | нет, нет и трижды нет, пусть компилятор занимается лучше оптимальной кодогенерац... текст свёрнут, показать | |
|
|
10.54, Аноним (11), 23:16, 18/02/2025 [^] [^^] [^^^] [ответить] | +1 +/– | Если бы компилятор бил бы всегда по рукам за логические ошибки, то это был бы не... текст свёрнут, показать | |
|
|
8.59, sena (ok), 00:46, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– |  Программисты всё равно найдут способ совершить ошибку, а сильно умный компилятор... текст свёрнут, показать | |
|
9.61, Аноним (-), 01:25, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– | Бездоказательное утверждение А вот примеры с ПДД, ПУЭ, ТД, СНиП и прочими регул... текст свёрнут, показать | |
|
10.114, sena (ok), 15:35, 19/02/2025 [^] [^^] [^^^] [ответить] | +/– |  Как раз наоборот, примеры говорят о том, что аварии никуда не делись, люди гибну... текст свёрнут, показать | |
|
9.101, Аноним (78), 12:50, 19/02/2025 [^] [^^] [^^^] [ответить] | +1 +/– | Ошибки, если это не бекдоры, никто не ищет как совершить На проводах изоляция н... текст свёрнут, показать | |
|
|
|
12.143, sena (ok), 12:51, 20/02/2025 [^] [^^] [^^^] [ответить] | +/– |  Нет, применяют там где это уместно и удобно Но даже там где применяют люди нахо... текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
2.14, Аноним (14), 20:30, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Если бы вместо -1, -2 и других ну совершенно очевидных значений, был бы нормальный enum, а на месте обработки exhaustive switch
Ща, ещё 20 лет подождём, когда можно будет хотя бы посчитать нормально количество констант в енуме, или хотя-бы built-in тип в gcc для таких действий, и возможно к тому времени уже и jai релизнется.
| |
2.58, Аноним (58), 00:24, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Анониму слишком сложно работать с цифрами. Работать с цифрами - это всё равно что читать книжку без картинок.
Поэтому сишечка убогая.
| |
2.88, Ivan_83 (ok), 10:09, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Да не нужен никому ваш енум, успокойтесь уже.
Меня вот например интересует ситуация когда там -3 только возвращается откуда то, на болту я вертел писать все 100500 енум значений в свитч.
| |
|
3.102, Аноним (78), 12:52, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>Меня вот например интересует ситуация когда там -3 только возвращается откуда то, на болту я вертел писать все 100500 енум значений в свитч.
Явное лучше неявного.
match var_name with
| Some3 -> do_code ()
| _ -> ()
| |
|
|
5.134, Ivan_83 (ok), 04:09, 20/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Да вот только вы написали этими каракулями аналог:
if (-3 == some_var) {
do_code();
}
чем вы там в своих каракулях гордитесь - мне решительно не понятно: много буков и чёрточек со стрелочками вместо простой и понятной записи.
| |
|
|
7.147, Ivan_83 (ok), 06:07, 21/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Никто не упарывается писать как в func1.
> Вместо того, чтобы говорить о семантике кода, вы говорите о синтаксисе. Не надо так.
Уже говорил: мне важен результат, а не фричество с языком.
| |
|
|
|
|
|
2.94, Аноним (94), 11:17, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Запомни раз и навсегда, может быть перестанешь быть убогим, switch - это прошлый век.
В switch'е иногда требуется сделать fallthrough. А когда ты это сделал, последователи могут этого не заметить и своими кривыми руками сломать весь switch. Такие онанимы-доброжелатели лесом.
| |
|
1.24, Аноним (24), 20:45, 18/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Эх, помню те времена dial-up'а, когда ставил на чердаке сниффер на соседские телефонные линии, слушал их и мониторил трафик 😊
| |
|
2.34, Мохнонос (?), 21:02, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
А я в эфире при помощи тюнера AverMedia пейджинговые сообщения читал, когда в общаге жил в начале нулевых - весёлое времечко было!
| |
|
3.48, Аноним (-), 22:03, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А я в эфире при помощи тюнера AverMedia пейджинговые сообщения читал,
> когда в общаге жил в начале нулевых - весёлое времечко было!
О сколько нам открытий чудных готовит... rlt_sdr и режим монитора вафли!
| |
|
4.52, Аноним (24), 23:06, 18/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> режим монитора вафли
Т.е. ты изобрёл клиентскую точку доступа? Поздравляю.
| |
|
5.123, Аноним (-), 19:38, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Т.е. ты изобрёл клиентскую точку доступа? Поздравляю.
Я не изобретал режим монитора. И он таки - про то чтобы посмотреть "а что вокруг?". И, возможно, найти что-то интересное.
| |
|
|
3.53, Аноним (24), 23:09, 18/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> весёлое времечко было
Да, много чего можно было делать вообще не непрягаясь. Потому что все данные гнались без шифрования. Как по воздуху, так и по проводам.
| |
|
|
|
2.85, Ivan_83 (ok), 10:05, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Интересное чтиво с попыткой в анализ :)
Но совет переходить на libressl увы плохой.
Я сидел на libressl более трёх лет, и это вызывало постоянные проблемы: приходилось самому поддерживать ряд портов. Те конфигурацию когда порт собирается с не дофолтным опенссл вообще никто не тестирует, кроме пользователей этого самого.
У меня это отлимало довольно заметно времени и с января 2024 я ушёл на дефолтный опенссл ибо не нанимался, что называется, бесплатно это суппортить.
machdep.hyperthreading_allowed="0" - тоже скорее вредный совет.
Ну и далее там тоже много спорного.
| |
|
1.72, ИмяХ (ok), 06:44, 19/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
>> проявляется начиная с выпуска OpenSSH 6.8p1 (декабрь 2014 г.)
Как же хорошо бэкдор замаскировали, что он успешно проработал 10 лет!
| |
1.73, bdrbt (ok), 06:54, 19/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Хм, явный косяк с обработкой ошибок, но все почему-то заагрились на сишку. А что, в других языках уже нет способа забить болт на обработку ошибок?
У этой правки есть имя и фамилия, это он "ненужен", а не Сишка.
| |
|
2.80, Аноним (78), 09:31, 19/02/2025 [^] [^^] [^^^] [ответить]
| –2 +/– |
>Хм, явный косяк с обработкой ошибок, но все почему-то заагрились на сишку.
Сишке уже полстолетия, а сишники до сих пор ничего не знают ни про алгебраические типы данных, ни про сопоставления с образцом, ни про что-то другое. Как и ожидалось от сишников.
| |
|
|
4.132, Аноним (78), 01:14, 20/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Показывайте свой код, проведём рецензию. Надеюсь вы настоящий сишник и у вас есть кривой xml парсер?
| |
|
|
|
1.84, Ivan_83 (ok), 09:58, 19/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
У нормального админа и так все что тут упоминалось в конфигах покручено, ибо это мастхэв по сути.
А кто там на святых дефолтах живёт - ССЗБ.
| |
|
2.104, Аноним (78), 12:54, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>У нормального админа
Нанимать профессионального админа для локалхоста?
| |
|
3.106, Ivan_83 (ok), 13:38, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
На локалхосте вы можете и не запускать ссш сервер или забить на возможные проблемы.
А как пользователь консольного ssh могли бы и почитать конфиг.
| |
|
4.111, Аноним (78), 14:55, 19/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
>На локалхосте вы можете и не запускать ссш сервер
Универсальный ответ растоненавистников. Перила делать не нужно, ведь можно же не ходить на второй этаж! Всем жить в одноэтажных домах. Гениальная мудрость дидов.
| |
|
5.127, Аноним (-), 19:46, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Универсальный ответ растоненавистников. Перила делать не нужно, ведь можно же не ходить
> на второй этаж! Всем жить в одноэтажных домах. Гениальная мудрость дидов.
Вас ненавидят в основном за то что вы при отсутствии своих достижений - пыжитесь даунплеить других. Вам freehck все правильно сказал - вы сами виноваты в таком восприятии хруста и хрустиков. Выглядит как куча агрессивных ламеров. И конечно куча ламерюк с серебреной пулей сделает безопасно, аж два раза.
| |
|
6.133, Аноним (78), 01:16, 20/02/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Вас ненавидят в основном за то что вы при отсутствии своих достижений
А откдуа вы знаете, кто я? Я между прочим против rust, поскольку в нём нет зависимых типов, а это важно для системного программирования. А так, я за Ocaml.
>вы сами виноваты в таком восприятии хруста и хрустиков
Растовики - приятная компания, чтобы троллить сишников, они такие забавные. Кстати, у вас есть кривая реализация xml парсера, или вы ненастоящий сишник?
| |
|
5.129, Ivan_83 (ok), 00:41, 20/02/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вы не хотите неприятностей, при этом не хотите сами разбиратся и не хотите платить админу вашего локалхоста, в таком случае вам остаётся либо не использовать софт либо не включать компьютер либо *роскомнадзор*, я преложил самый мягкий вариант.
На что вы рассчитываете?
Что в бесплатном софте (а хоть бы и в платном) за вам всё задарма сделают по высшему классу?
| |
|
|
|
|
1.105, Beta Version (ok), 13:17, 19/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
У меня банальный вопрос. Вот у меня на домашнем ПК стоит Дебиан. Я обновляю этот openssh-client с 1:9.9p1-1 до 1:9.9p2-1. Я должен перезагрузить ПК (или сеанс), чтобы изменения вступили в силу?
| |
|
2.126, Аноним (-), 19:44, 19/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
> У меня банальный вопрос. Вот у меня на домашнем ПК стоит Дебиан.
> Я обновляю этот openssh-client с 1:9.9p1-1 до 1:9.9p2-1. Я должен перезагрузить
> ПК (или сеанс), чтобы изменения вступили в силу?
Если вы чайник - то перезагрузите. Если не чайник - просто рестартаните сервис.
| |
|
3.135, 1 (??), 04:18, 20/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
у него клиент, какой сервис то надо перезапустить? openssh-server не запущен же.
ну только если у него активная сессия (соединение) с каким то сервером по ssh, то надо завершить соединение и подключиться заново.
| |
|
4.141, Аноним (78), 11:18, 20/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>у него клиент, какой сервис то надо перезапустить?
Откуда вы знаете? Может у него autossh в виде демона висит.
| |
|
|
|
1.125, Аноним (125), 19:43, 19/02/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Те кто хейтят Си, просто не понимают, что язык выполняет ровно то, что написано. Глупо хейтить язык по причине глупости программистов. И люди умнее не станут, от очередной серебряной пули. Дойдет до того, что нейросеть будет писать код, а как оно там все работает никто знать и не будет.
| |
|
2.145, Аноним (78), 16:48, 20/02/2025 [^] [^^] [^^^] [ответить]
| –2 +/– |
>Те кто хейтят Си, просто не понимают
Си плох тем, что компилирует любой г-код. Хороший компилятор не будет компилировать г-код, он выдаст ошибку
| |
|
3.146, Аноним (146), 17:07, 20/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
Хороший программист включает ворнинги, и главное читает их. Шланг, например, предупреждает про use_after_free
| |
|
4.149, Аноним (78), 11:19, 21/02/2025 [^] [^^] [^^^] [ответить]
| +/– |
>Шланг, например, предупреждает про use_after_free
В самых тривиальных случаях. В реальном коде он это не обнаружит
| |
|
|
|
|