#1 Le 20/08/2006, à 13:20
- 2fast4u
[perl][resolu] trouver l'erreur ! fonction get_ip
bonjour, j'essais d'utiliser un script trouvé sur le net pour configurer un vpn.
Quand je le lance, j'ai automatiquement un message d'erreur alors j'aimerais si possible qu'un pro jette un oeil à cette fonction et m'aide à trouver l'erreur
#
# Get the IP of the interface $if and return it.
#
sub get_ip {
my $if = shift;
my $ip;
my $ip_srch;
my $if_srch;
return undef if !defined $if;
my $iflist = `$ifconfig_path $if 2>&1`;
show_error_dialog( $iflist, 0) if( $? );
my @lines = split "\n",$iflist;
my $got_if = 0;
$ip_srch = 'inet addr:(\S+)';
$if_srch = "^$if\\s+";
foreach my $line ( @lines ){
$got_if = 1 if( $line =~ /$if_srch/ );
last if( $line =~ /^\s+$/ and $got_if);
return $1 if( $got_if and $line =~ /$ip_srch/ );
}
show_error_dialog("Could not get IP address for interface $if.\n",0);
return undef;
}
$ifconfig_path = /sbin/ifconfig et $if = ppp0
si je lance la commande dans le term, ppp0 à bien une adresse. je suppose qu'il y a une cagade dans le script ci-dessus mais je connais pas perl
Dernière modification par 2fast4u (Le 20/08/2006, à 22:51)
Hors ligne
#2 Le 20/08/2006, à 22:49
- 2fast4u
Re : [perl][resolu] trouver l'erreur ! fonction get_ip
trouvée
$ip_srch = 'inet addr:(\S+)';
un d en trop dans addr
Hors ligne