Size: a a a

2021 June 17

VG

Vadim Goncharov in use Perl or die;
вообще не совсем правильно блочный назвали изначально, конечно
источник

АГ

Алексей Галаев... in use Perl or die;
@zerdicorp , может стоит идти не от ХОЧУ, а ЕСТЬ ЗАДАЧА?
источник

АГ

Алексей Галаев... in use Perl or die;
тогда проще будет подсказать решение
источник

a

allter in use Perl or die;
Угу - привожу на всякий случай, если человеку именно это нужно.

Но тут уже скорее всего выйдет вопрос безопасности. Так что хорошо бы, что бы @zerdicorp пояснил, зачем именно ему такое нужно.
источник

VG

Vadim Goncharov in use Perl or die;
ошибку в ДНК латает
источник

CK

Charlotte Karlos in use Perl or die;
Да, ты прав
источник

CK

Charlotte Karlos in use Perl or die;
Я вроде разобрался. Очень странно получилось. По началу все слетало с ошибками даже при использовании eval. Теперь как нужно тихо глушится.
источник

a

allter in use Perl or die;
Поясните, вы пишете что-то вроде сайта https://perlbanjo.com/
источник

VG

Vadim Goncharov in use Perl or die;
Переслано от Egore Levakov
я за переменные такие джунов по пальцам лупил, типа notDisabled = true
источник

a

allter in use Perl or die;
Т.е. что бы пользователь сам задавал перл-код, а вы его запускали?
источник

CK

Charlotte Karlos in use Perl or die;
По большей степени это благодаря коду Алексея Галаева
источник

CK

Charlotte Karlos in use Perl or die;
.
источник

CK

Charlotte Karlos in use Perl or die;
В чем моя цель? Да, я знаю, что вы все в шоке от такого маразма. Но, цель есть. Представьте, что в некоторую программу попадает perl код в виде строки. Я запускаю данный код командой:

perl -E "..code"

Задача в том, чтобы при передаче в программу какого-нибудь абсолютного бреда вместо валидного perl кода, программа тихо умирала с прощальной фразой, без поднятия syntax error-ов
источник

CK

Charlotte Karlos in use Perl or die;
И теперь, все отлично работает, после использования кода Алексея
источник

CK

Charlotte Karlos in use Perl or die;
Thanks
источник

a

allter in use Perl or die;
Так это-то можно сделать вне perl:
perl -E "..code" 2>/dev/null || /bin/true
источник

VG

Vadim Goncharov in use Perl or die;
...и чтобы rm -rf / тоже отрабатывал без ошибок
источник

CK

Charlotte Karlos in use Perl or die;
М, да, это так-же подходит. Благодарю
источник

a

allter in use Perl or die;
Просто указанный код просто переносит компиляцию пользовательского кода чуть раньше. Что бы игнорировать, надо либо использовать строковой (eval "perl-код"), либо настраивать игнорирование ошибок средствами ОС. В обоих случаях у вас есть потенциальная уязвимость, т.к. пользователи могут накидать эксплойтов.
источник

CK

Charlotte Karlos in use Perl or die;
Да, вы правы
источник