The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

ELF::Extract::Sections::Scanner::Objdump - An objdump based section scanner.

VERSION

version 1.001000

SYNOPSIS

This module is a model implementation of a Naive and system reliant ELF Section detector. Its currently highly inefficient due to having to run the entire ELF through a disassembly process to determine the section positions and only guesses at section lengths by advertising that it can't compute sizes.

TO use this module, simply initialise ELF::Extract::Sections as so

    my $extractor  = ELF::Extract::Sections->new(
            file => "/path/to/file.so" ,
            scanner => "Objdump",
    );

METHODS

open_file

  my $boolean = $scanner->open_file( file => File );

Opens the file and assigns our state to that file.

"open_file" in ELF::Extract::Sections::Meta::Scanner

next_section

  my $boolean = $scanner->next_section();

Advances our state to the next section.

"next_section" in ELF::Extract::Sections::Meta::Scanner

section_offset

  my $return = $scanner->section_offset(); # Int | Undef

Reports the offset of the currently open section

"section_offset" in ELF::Extract::Sections::Meta::Scanner

section_size

  my $return = $scanner->section_size(); # BANG

Dies, because this module can't compute section sizes.

"section_size" in ELF::Extract::Sections::Meta::Scanner

section_name

  my $name = $scanner->section_name(); # Str | Undef

Returns the name of the current section

"section_name" in ELF::Extract::Sections::Meta::Scanner

can_compute_size

  my $bool = $scanner->can_compute_size;

Returns false

"can_compute_size" in ELF::Extract::Sections::Meta::Scanner

IMPLEMENTS ROLES

ELF::Extract::Sections::Meta::Scanner

ELF::Extract::Sections::Meta::Scanner

AUTHOR

Kent Fredric <kentnl@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Kent Fredric <kentfredric@gmail.com>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.