Ok, forget my post, her's the answer:
#!/usr/bin/perl -w
use Safe;
my $page = new Safe (huhu);
my $opset = Opcode::opset qw(:base_io :base_orig :base_thread
:filesys_read :sys_db
:filesys_open :filesys_write :subprocess :ownprocess
:still_to_be_decided :dangerous);
$page-deny(Opcode::opset_to_ops($opset));
$page-permit qw(print ref );
$page-deny (qw(rand srand));
$page-reval (eval \ print 'huhu' \);
print $@.\n;
Martin Haase-Thomas wrote:
Hi all,
maybe this is really far WOT, but one shouldn't give up hope, as we
all know...
Does anyone have experience with Opcode and Safe? The thing is that I
have to create my own secure namespace
for some reasons - and don't know how to do.
What does not work is the following:
#!/usr/bin/perl -w
use Safe;
my $page = new Safe (huhu);
$page-deny qw(:base_io :base_orig :base_thread :filesys_read :sys_db
:filesys_open :filesys_write :subprocess :ownprocess
:still_to_be_decided :dangerous);
$page-permit qw(print ref entereval);
$page-deny qw(rand srand);
$page-reval (sysopen '/bla/blub.html' || kill 15, 1906);
Anyone with an idea? btw: funny things will happen if you type 1
instead of 1906 ... :)
regards
Martin
--
http://www.meome.de
---
Martin Haase-Thomas | Tel.: 030 43730-558
meOme AG| Fax.: 030 43730-555
Software Development| [EMAIL PROTECTED]
---