|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 22 Apr 2002 20:10:18 To : All Subject : UNIVERSAL::can и taint check -------------------------------------------------------------------------------- perl5 (revision 5.0 version 6 subversion 1). В perl5 (5.0 patchlevel 5 subversion 3) работает. Код вида my $module = $1 if $ARGV[0] =~ /^(\w+)$/; my $function = $1 if $ARGV[1] =~ /^(\w+)$/; eval "require $module"; return $module->can($function); но сложнее (пока в столь простых условиях добиться не удалось) не работает (молча возвращает undef) под taint check. Вставал ли кто-нибудь на подобные грабли, и если да, то где именно они лежат и как их обходят? При этом \&{$module."::".$function} возвращает таки адрес функции, причем безо всяких "no strict". Проблема в том, что мне надо, чтобы оно ходило по иерархии наследования... В данном случае проблема не в наследовании - функция определена в том же модуле. Проблема в taint check и в 5.6.1. -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1445411ee8971.html, оценка из 5, голосов 10
|