Subject: | Failed Authentication crashes Filesys::SmbClient on Perl 5.8.8 |
Date: | Mon, 14 Jan 2008 00:40:16 +0100 |
To: | bug-Filesys-SmbClient [...] rt.cpan.org |
From: | "Raimo Radczewski" <raimoradczewski [...] googlemail.com> |
Hello,
I'm using Filesys::SmbClient to list public shares in my local Area
Network and just discovered a bug on failed authentication.
Discarding the errors when running tests I installed via CPAN on x86
Debian lenny Machine with Perl 5.8.8.
My Script:
#!/usr/bin/perl -l
use Filesys::SmbClient;
use Data::Dumper;
my $temp, $temp2, $temp3, @temp4;
my @workgroups;
my %computers;
my $smb = new Filesys::SmbClient(username => "user", password =>
"pass", debug => 0);
my $root = $smb->opendir("smb://");
foreach($smb->readdir_struct($root)) { push(@workgroups, $_->[1]); }
foreach(@workgroups) {
print $_;
$temp = $smb->opendir("smb://".$_);
foreach($smb->readdir_struct($temp)) { $computers{$_->[1]} = 1; }
$smb->closedir($temp);
foreach(keys(%computers)) {
print " ".$_;
$temp3 = $_;
$temp2 = $smb->opendir("smb://".$_);
foreach($smb->readdir_struct($temp2)) { print " |".$_->[1]; }
$smb->closedir($temp2);
}
}
$smb->closedir($root);
This is producing a *pseudo* tree like
Workgroup
Computer
| Share
Error Message thrown when scanning a computer with authentication
needed (failure):
fd is not of type SMBCFILEPtr at
/usr/local/lib/perl/5.8.8/Filesys/SmbClient.pm line 290.
When using readdir instead of readdir_struct error Message is thrown
for same code in readdir function.
libsmbclient and libsmbclient-dev are 3.0.28-1, installed via apt from
official sources
kind regards,
Raimo Radczewski