Security Advisories (1)
CVE-2016-1238 (2016-08-02)

(1) cpan/Archive-Tar/bin/ptar, (2) cpan/Archive-Tar/bin/ptardiff, (3) cpan/Archive-Tar/bin/ptargrep, (4) cpan/CPAN/scripts/cpan, (5) cpan/Digest-SHA/shasum, (6) cpan/Encode/bin/enc2xs, (7) cpan/Encode/bin/encguess, (8) cpan/Encode/bin/piconv, (9) cpan/Encode/bin/ucmlint, (10) cpan/Encode/bin/unidump, (11) cpan/ExtUtils-MakeMaker/bin/instmodsh, (12) cpan/IO-Compress/bin/zipdetails, (13) cpan/JSON-PP/bin/json_pp, (14) cpan/Test-Harness/bin/prove, (15) dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp, (16) dist/Module-CoreList/corelist, (17) ext/Pod-Html/bin/pod2html, (18) utils/c2ph.PL, (19) utils/h2ph.PL, (20) utils/h2xs.PL, (21) utils/libnetcfg.PL, (22) utils/perlbug.PL, (23) utils/perldoc.PL, (24) utils/perlivp.PL, and (25) utils/splain.PL in Perl 5.x before 5.22.3-RC2 and 5.24 before 5.24.1-RC2 do not properly remove . (period) characters from the end of the includes directory array, which might allow local users to gain privileges via a Trojan horse module under the current working directory.

NAME

ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps

SYNOPSIS

From XS:

INCLUDE_COMMAND: $^X -MExtUtils::Typemaps::Cmd \
                 -e "print embeddable_typemap(q{Excommunicated})"

Loads ExtUtils::Typemaps::Excommunicated, instantiates an object, and dumps it as an embeddable typemap for use directly in your XS file.

DESCRIPTION

This is a helper module for ExtUtils::Typemaps for quick one-liners, specifically for inclusion of shared typemaps that live on CPAN into an XS file (see SYNOPSIS).

For this reason, the following functions are exported by default:

EXPORTED FUNCTIONS

embeddable_typemap

Given a list of identifiers, embeddable_typemap tries to load typemaps from a file of the given name(s), or from a module that is an ExtUtils::Typemaps subclass.

Returns a string representation of the merged typemaps that can be included verbatim into XS. Example:

print embeddable_typemap(
  "Excommunicated", "ExtUtils::Typemaps::Basic", "./typemap"
);

This will try to load a module ExtUtils::Typemaps::Excommunicated and use it as an ExtUtils::Typemaps subclass. If that fails, it'll try loading Excommunicated as a module, if that fails, it'll try to read a file called Excommunicated. It'll work similarly for the second argument, but the third will be loaded as a file first.

After loading all typemap files or modules, it will merge them in the specified order and dump the result as an embeddable typemap.

SEE ALSO

ExtUtils::Typemaps

perlxs

AUTHOR

Steffen Mueller <smueller@cpan.org>

COPYRIGHT & LICENSE

Copyright 2012 Steffen Mueller

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