当我试图创建一个perl函数时,我会得到一个错误。
CREATE OR REPLACE FUNCTION foo()
RETURNS text AS $BODY$
use v5.28;
use warnings;
my $output = `/data/myapp`; # or qx('/data/myapp')
return $output;
$BODY$
LANGUAGE plperl;但是在编译这个函数时,我得到了这个错误:
'quoted execution (``,qx)' trapped by operation mask at line 5. 我是使用了错误的语法,还是这是另一个问题?
发布于 2021-06-06 01:48:07
plperlu,在末尾使用u。对于不受信任的plperlu,您不会得到此错误。只和plperl在一起
ERROR: 'quoted execution (``, qx)' trapped by operation mask at line 5.
CONTEXT: compilation of PL/Perl function "scriptdecrypt"这个op是黑名单的plperl,它只允许可信的代码。虽然我会小心一点,因为像plperl一样的plperlu是不安全的,只是程度较小。;)
https://dba.stackexchange.com/questions/274492
复制相似问题