Security Advisories (3)
CVE-2018-25032 (2022-03-25)

zlib before 1.2.12 allows memory corruption when deflating (i.e., when compressing) if the input has many distant matches.

CVE-2018-8098 (2018-03-14)

Integer overflow in the index.c:read_entry() function while decompressing a compressed prefix length in libgit2 before v0.26.2 allows an attacker to cause a denial of service (out-of-bounds read) via a crafted repository index file.

CVE-2018-8099 (2018-03-14)

Incorrect returning of an error code in the index.c:read_entry() function leads to a double free in libgit2 before v0.26.2, which allows an attacker to cause a denial of service via a crafted repository index file.

NAME

Git::Raw::Tree - Git tree class

VERSION

version 0.57

DESCRIPTION

A Git::Raw::Tree represents a Git tree.

WARNING: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog).

METHODS

lookup( $repo, $id )

Retrieve the tree corresponding to $id. This function is pretty much the same as $repo->lookup($id) except that it only returns trees. If the tree doesn't exist, this function wil return undef.

owner( )

Retrieve the Git::Raw::Repository owning the tree.

id( )

Retrieve the id of the tree, as string.

entries( )

Retrieve a list of Git::Raw::Tree::Entry objects.

entry_byname( $name )

Retrieve a Git::Raw::Tree::Entry object by name. If the entry cannot be found, this function will return undef.

entry_bypath( $path )

Retrieve a Git::Raw::Tree::Entry object by path. If the entry cannot be found, this function will return undef.

merge( $ancestor, $theirs, [\%merge_opts] )

Merge $theirs into this tree. $ancestor and $theirs should be Git::Raw::Tree objects. See Git::Raw::Repository->merge() for valid %merge_opts values. Returns a Git::Raw::Index object containing the merge result.

diff( [\%diff_opts] )

Compute the Git::Raw::Diff between two trees. See Git::Raw::Repository->diff() for valid %diff_opts values.

is_tree( )

Returns true.

is_blob( )

Returns false.

AUTHOR

Alessandro Ghedini <alexbio@cpan.org>

Jacques Germishuys <jacquesg@striata.com>

LICENSE AND COPYRIGHT

Copyright 2012 Alessandro Ghedini.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.