in reply to Capturing the output of nmap from within a Perl script

You can change nmap permissions to +s to enable setuid. Then if you want to process the text returned from nmap you can execute it like this:
my $cmd = "/usr/bin/nmap -sU -p 2300,6500 $ENV{'REMOTE_ADDR'}"; open NMAP, "$cmd|" or die $!; foreach (<NMAP>) { # process here ... }
Hope this helps :)

Update: I think you can have security issues by enabling setuid root to nmap. Be careful. :)


Igor S. Lopes - izut
surrender to perl. your code, your rules.