PsychoSpunk has asked for the wisdom of the Perl Monks concerning the following question:
The script is run through a web browser and therefore starts life off with $< = getpwnam(nobody)[2] (not actually written but here for those of you needing a refresher on unix calls).
Anyway, here's the code that fails and the error message:
sub _read_config { my $fh = FileHandle->new("Config_filename", "r"); eval <$fh>; die "Config_filename improperly formatted:\n$@" if ($@); $fh->close(); }
Insecure dependency in eval while running setuid at ../Tools/CSSconfig +.pm line 38, <GEN0> line 1. Compilation failed in require at ../Tools.pm line 15, <GEN0> line1. BEGIN failed -- compilation aborted at ../Tools.pm line 15. Compilation failed in require at /home/PsychoSpunk/public_html/cgi-bin +/Tools/saveconfig.cgi line 7. BEGIN failed -- compilation aborted at /home/PsychoSpunk/public_html/c +gi-bin/Tools/saveconfig.cgi line 7.
The script itself is setuid, while my modules aren't. Would this be the cause of the adverse effect reported in my error_log file? Or is there something more insidious at play here? Of course, use strict and -w are in effect, and I did try placing the eval in a block with no strict; These efforts just moved the line numbers for the error.
Thanks for any advice. /msg me if you have questions.
ALL HAIL BRAK!!!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: eval $fh while setuid...
by chipmunk (Parson) on Aug 03, 2001 at 20:20 UTC | |
by PsychoSpunk (Hermit) on Aug 04, 2001 at 00:17 UTC | |
|
Re: eval $fh while setuid...
by melguin (Pilgrim) on Aug 03, 2001 at 22:54 UTC |