[FUGSPBR] erro perl

Carlos cat em iqsc.usp.br
Ter Jan 20 10:50:58 BRST 2004


pessoal estou usando um script que o Sergio postou aqui na lista e tenho 
recebido o erro -5, alguem tem ideia do erro.
As variaveis estão recebendo os dados corretamente, ja mandei imprimi-las 
e está ok.
tenho instalado o vpopmail.pm
Sera que esta havendo algum problema de permissão?

A rotina é esta:

#!/usr/local/bin/perl -w
### By Sérgio José Ferreira - WGO Internet
### Parte do Ispadmin http://www.ispadmin.com.br
use strict;
use CGI qw(:standard);
use vpopmail;
use File::stat;

my $q = new CGI;
print $q->header( "text/plain");

my ( $user, $domain ) = split( /@/, $q->param("Email"));
my $funcao  = $q->param("Funcao");

# Verificar se o domínio existe
my $ddir = vgetdomaindir($domain);
my $pwd = vauth_getpw($user,$domain);

if ( $funcao eq 'ADD' ) {
   if ( ! $ddir ) { print "*** ERRO-DOMINIO ***"; }
   if ( $pwd ) { print "*** ERRO-EXISTE ***"; }
   else {
       my $pass  = $q->param("Password");
       my $name  = $q->param("Login");
       my $quota  = $q->param("Quota");
       $quota = $quota * 1024 * 1024;
       my $retorno = add($user,$domain,$name,$pass,$quota);
       print "*** $retorno ***";
    }
}

if ( $funcao eq 'CHG' ) {
    if ( ! $pwd ) { print "*** ERRO-NAOEXISTE ***"; }
    else {
       my $pass  = $q->param("Password");
       my $name  = $q->param("Login");
       my $quota  = $q->param("Quota");
       $quota = $quota * 1024 * 1024;
       my $retorno = change($user,$domain,$name,$pass,$quota);
       print "*** $retorno ***";
    }
}

## Incluir Usuário no vpopmail
sub add {
   my ( $user, $domain, $name, $pass, $quota ) =@_;
   if ( ( vadduser($user, $domain, $pass, $name, 0) ) == 0 ) {
          vsetuserquota($user, $domain, $quota);
          return 'OK-INCLUIR'; } else { return 'ERRO-INCLUIR';}
}

## Incluir Usuário no vpopmail
sub change {
   my ( $user, $domain, $name, $pass, $quota ) =@_;
   if ( ( vpasswd($user, $domain, $pass,0) ) == 0 ) {
          vsetuserquota($user, $domain, $quota);
          return 'OK-ALTERAR'; } else { return 'ERRO-ALTERAR';}
}

sub del {
   my ( $user, $domain ) =@_;
   if ( ( vdeluser($user, $domain) ) == 0 ) { return 0; } else { return 1;}
}

-- 
CAT
_______________________________________________________________
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/



Mais detalhes sobre a lista de discussão freebsd