VirtualFS::ISO9660

Perl extension allowing programs to open files inside ISO-9660 format CD images
Download

VirtualFS::ISO9660 Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Stephen Oberholtzer
  • Publisher web site:
  • http://search.cpan.org/~stevieo/

VirtualFS::ISO9660 Tags


VirtualFS::ISO9660 Description

Perl extension allowing programs to open files inside ISO-9660 format CD images VirtualFS::ISO9660 is a Perl extension allowing programs to open files inside ISO-9660 format CD images.SYNOPSIS $ref = new VirtualFS::ISO9660('file.iso') or die "Can't open file.iso: $!"; $ref = new VirtualFS::ISO9660('file.iso', -verbose => 1); $ref->opendir($dh, '/') or die "Can't open rootdir in file.iso"; print "files in file.iso's root directory: "; for ($dh->readdir) { print " $_ "; } print "let's see that again!"; $dh->rewinddir(); for ($dh->readdir) { print " $_ "; } # there is no $dh->closedir; just undef $dh or something when you're done # with it. # NOTE! ONLY THE 3-ARGUMENT FORM OF open IS SUPPORTED! $ref->open($fh, 'STAT; @stats2 = $ref->stat('/MANIFEST'); while () { print "$_ "; } # unlike closedir, $fh is a "real" (tied) filehandle, and you close it # normally. close $fh;Linux systems (and probably other Unix-y OSes like *BSD) have a 'loop' device that allow you to take a filesystem embedded in another file, and mount it as if it were normal media: mount file.iso /cdrom -t iso9660 -o ro,loopUnfortunately, this suffers from some problems: * Windows users cannot benefit from this. (You may not think that Windows is important, but you are not the only person on the planet.) * For the systems that *do* support such a loop device, this only works if the kernel has been compiled loop device compiled in; thus, using this feature may require recompilation of the kernel. * And for systems that have a loop device, and for which the loop device is enabled, a user also must normally be root in order to execute the mount command. Not everybody has root on the machines they're using.VirtualFS::ISO9660 was written to avoid these three issues entirely, by internally emulating a ISO-9660 filesystem driver. It can be used to list the contents of a directory (with ->opendir() and ->readdir()), and it can be used to open files inside the ISO image and read their contents. Requirements: · Perl


VirtualFS::ISO9660 Related Software