tienes unos pequeños erroes...la gunción no está devolviendote ningun valor...razón por la cual la puedes llamar simplemente así:
&descargas(
http://www.sdfs.com/skdjf.exe);
return es una función que le devuelve un valor pero al mismo programa de perl, no es que se lo devuelve al navegador!!!
la función descargas debe ser así:
sub descargas {
print "Location: $_[0]\n\n";
}
lo que hace es largar por salida la url que le mandaste (
http://www.sdfs.com/skdjf.exe)
para llamar a la función desde tu página hace el link:
http://www.dominio.com/pp/members_on...ction=descarga
en el script tras traer los datos pasados por parámetros haces
if (form{'action'} eq 'descarga'){
&descargas(
http://www.sdfs.com/skdjf.exe);
}
entendés como funciona....Si lo que pide es descargar, que valla a la función descargas.
Espero que te sirva
Te recomiendo el libro PERL y CGI de Elizabeth Castro (editorial prentice hall) yo lo leí cuando era principiante y me ayudó mucho!!!
MonoSwim