libzypp  17.25.1
zypp::target::rpm::RpmHeader Class Reference

Wrapper class for rpm header struct. More...

#include <RpmHeader.h>

Inheritance diagram for zypp::target::rpm::RpmHeader:

Public Types

enum  VERIFICATION { VERIFY = 0x0000, NODIGEST = (1<<0), NOSIGNATURE = (1<<1), NOVERIFY = 0xffff }
 Digest and signature verification flags. More...
 
typedef intrusive_ptr< RpmHeaderPtr
 
typedef intrusive_ptr< const RpmHeaderconstPtr
 
- Public Types inherited from zypp::target::rpm::BinHeader
typedef intrusive_ptr< BinHeaderPtr
 
typedef intrusive_ptr< const BinHeaderconstPtr
 
typedef rpmTag tag
 

Public Member Functions

 RpmHeader (Header h_r=0)
 
 RpmHeader (BinHeader::Ptr &rhs)
 Dangerous!<\B> This one takes the header out of rhs and leaves rhs empty. More...
 
virtual ~RpmHeader ()
 
bool isSrc () const
 
bool isNosrc () const
 
std::string tag_name () const
 
Edition::epoch_t tag_epoch () const
 
std::string tag_version () const
 
std::string tag_release () const
 
Edition tag_edition () const
 
Arch tag_arch () const
 
Date tag_installtime () const
 
Date tag_buildtime () const
 
CapabilitySet tag_provides (std::set< std::string > *freq_r=0) const
 If freq_r is not NULL, file dependencies found are inserted. More...
 
CapabilitySet tag_requires (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_prerequires (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_conflicts (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_obsoletes (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_enhances (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_suggests (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_supplements (std::set< std::string > *freq_r=0) const
 
CapabilitySet tag_recommends (std::set< std::string > *freq_r=0) const
 
ByteCount tag_size () const
 
ByteCount tag_archivesize () const
 
std::string tag_summary () const
 
std::string tag_description () const
 
std::string tag_group () const
 
std::string tag_vendor () const
 
std::string tag_distribution () const
 
std::string tag_license () const
 
std::string tag_buildhost () const
 
std::string tag_packager () const
 
std::string tag_url () const
 
std::string tag_os () const
 
std::string tag_prein () const
 
std::string tag_preinprog () const
 
std::string tag_postin () const
 
std::string tag_postinprog () const
 
std::string tag_preun () const
 
std::string tag_preunprog () const
 
std::string tag_postun () const
 
std::string tag_postunprog () const
 
std::string tag_pretrans () const
 
std::string tag_pretransprog () const
 
std::string tag_posttrans () const
 
std::string tag_posttransprog () const
 
std::string tag_sourcerpm () const
 
std::string signatureKeyID () const
 Uses headerFormat to query the signature info from the header. More...
 
std::list< std::string > tag_filenames () const
 just the list of names
More...
 
std::list< FileInfotag_fileinfos () const
 complete information about the files (extended version of tag_filenames()) More...
 
Changelog tag_changelog () const
 
virtual std::ostream & dumpOn (std::ostream &str) const
 Overload to realize std::ostream & operator<<. More...
 
- Public Member Functions inherited from zypp::target::rpm::BinHeader
 BinHeader (Header h_r=0)
 
 BinHeader (BinHeader::Ptr &rhs)
 Dangerous!<\B> This one takes the header out of rhs and leaves rhs empty. More...
 
virtual ~BinHeader ()
 
bool empty () const
 
bool has_tag (tag tag_r) const
 
unsigned int_list (tag tag_r, intList &lst_r) const
 
unsigned string_list (tag tag_r, stringList &lst_r) const
 
int int_val (tag tag_r) const
 
std::string string_val (tag tag_r) const
 
std::string format (const char *fmt) const
 
std::list< std::string > stringList_val (tag tag_r) const
 
- Public Member Functions inherited from zypp::base::ReferenceCounted
 ReferenceCounted ()
 Default ctor. More...
 
 ReferenceCounted (const ReferenceCounted &rhs)
 Copy ctor. More...
 
virtual ~ReferenceCounted ()
 Dtor. More...
 
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment. More...
 
unsigned refCount () const
 Return reference counter value. More...
 
void ref () const
 Add a reference. More...
 
void unref () const
 Release a reference. More...
 

Static Public Member Functions

static RpmHeader::constPtr readPackage (const Pathname &path, VERIFICATION verification=VERIFY)
 Get an accessible packages data from disk. More...
 
- Static Public Member Functions inherited from zypp::base::ReferenceCounted
static void add_ref (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference. More...
 
static void release (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference. More...
 

Private Member Functions

CapabilitySet PkgRelList_val (tag tag_r, bool pre, std::set< std::string > *freq_r=0) const
 

Additional Inherited Members

- Protected Member Functions inherited from zypp::base::ReferenceCounted
virtual void ref_to (unsigned) const
 Trigger derived classes after refCount was increased. More...
 
virtual void unref_to (unsigned) const
 Trigger derived classes after refCount was decreased. More...
 

Detailed Description

Wrapper class for rpm header struct.

RpmHeader provides methods to query the content of a rpm header struct retrieved from the RPM database or by reading the rpm header of a package on disk.

The rpm header contains all data associated with a package. So you probabely do not want to permanently store too many of them.

NEVER create RpmHeader from a NULL Header!

Definition at line 60 of file RpmHeader.h.

Member Typedef Documentation

◆ Ptr

◆ constPtr

Definition at line 64 of file RpmHeader.h.

Member Enumeration Documentation

◆ VERIFICATION

Digest and signature verification flags.

Enumerator
VERIFY 
NODIGEST 
NOSIGNATURE 
NOVERIFY 

Definition at line 190 of file RpmHeader.h.

Constructor & Destructor Documentation

◆ RpmHeader() [1/2]

zypp::target::rpm::RpmHeader::RpmHeader ( Header  h_r = 0)

Definition at line 177 of file RpmHeader.cc.

◆ RpmHeader() [2/2]

zypp::target::rpm::RpmHeader::RpmHeader ( BinHeader::Ptr rhs)

Dangerous!<\B> This one takes the header out of rhs and leaves rhs empty.

Definition at line 187 of file RpmHeader.cc.

◆ ~RpmHeader()

zypp::target::rpm::RpmHeader::~RpmHeader ( )
virtual

Definition at line 199 of file RpmHeader.cc.

Member Function Documentation

◆ PkgRelList_val()

CapabilitySet zypp::target::rpm::RpmHeader::PkgRelList_val ( tag  tag_r,
bool  pre,
std::set< std::string > *  freq_r = 0 
) const
private

Definition at line 404 of file RpmHeader.cc.

◆ isSrc()

bool zypp::target::rpm::RpmHeader::isSrc ( ) const

Definition at line 282 of file RpmHeader.cc.

◆ isNosrc()

bool zypp::target::rpm::RpmHeader::isNosrc ( ) const

Definition at line 287 of file RpmHeader.cc.

◆ tag_name()

std::string zypp::target::rpm::RpmHeader::tag_name ( ) const

Definition at line 300 of file RpmHeader.cc.

◆ tag_epoch()

Edition::epoch_t zypp::target::rpm::RpmHeader::tag_epoch ( ) const

Definition at line 313 of file RpmHeader.cc.

◆ tag_version()

std::string zypp::target::rpm::RpmHeader::tag_version ( ) const

Definition at line 326 of file RpmHeader.cc.

◆ tag_release()

std::string zypp::target::rpm::RpmHeader::tag_release ( ) const

Definition at line 339 of file RpmHeader.cc.

◆ tag_edition()

Edition zypp::target::rpm::RpmHeader::tag_edition ( ) const

Definition at line 352 of file RpmHeader.cc.

◆ tag_arch()

Arch zypp::target::rpm::RpmHeader::tag_arch ( ) const

Definition at line 365 of file RpmHeader.cc.

◆ tag_installtime()

Date zypp::target::rpm::RpmHeader::tag_installtime ( ) const

Definition at line 378 of file RpmHeader.cc.

◆ tag_buildtime()

Date zypp::target::rpm::RpmHeader::tag_buildtime ( ) const

Definition at line 391 of file RpmHeader.cc.

◆ tag_provides()

CapabilitySet zypp::target::rpm::RpmHeader::tag_provides ( std::set< std::string > *  freq_r = 0) const

If freq_r is not NULL, file dependencies found are inserted.

Definition at line 548 of file RpmHeader.cc.

◆ tag_requires()

CapabilitySet zypp::target::rpm::RpmHeader::tag_requires ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 561 of file RpmHeader.cc.

◆ tag_prerequires()

CapabilitySet zypp::target::rpm::RpmHeader::tag_prerequires ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 574 of file RpmHeader.cc.

◆ tag_conflicts()

CapabilitySet zypp::target::rpm::RpmHeader::tag_conflicts ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 587 of file RpmHeader.cc.

◆ tag_obsoletes()

CapabilitySet zypp::target::rpm::RpmHeader::tag_obsoletes ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 600 of file RpmHeader.cc.

◆ tag_enhances()

CapabilitySet zypp::target::rpm::RpmHeader::tag_enhances ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 613 of file RpmHeader.cc.

◆ tag_suggests()

CapabilitySet zypp::target::rpm::RpmHeader::tag_suggests ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 630 of file RpmHeader.cc.

◆ tag_supplements()

CapabilitySet zypp::target::rpm::RpmHeader::tag_supplements ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 647 of file RpmHeader.cc.

◆ tag_recommends()

CapabilitySet zypp::target::rpm::RpmHeader::tag_recommends ( std::set< std::string > *  freq_r = 0) const
See also
tag_provides

Definition at line 664 of file RpmHeader.cc.

◆ tag_size()

ByteCount zypp::target::rpm::RpmHeader::tag_size ( ) const

Definition at line 681 of file RpmHeader.cc.

◆ tag_archivesize()

ByteCount zypp::target::rpm::RpmHeader::tag_archivesize ( ) const

Definition at line 694 of file RpmHeader.cc.

◆ tag_summary()

std::string zypp::target::rpm::RpmHeader::tag_summary ( ) const

Definition at line 707 of file RpmHeader.cc.

◆ tag_description()

std::string zypp::target::rpm::RpmHeader::tag_description ( ) const

Definition at line 720 of file RpmHeader.cc.

◆ tag_group()

std::string zypp::target::rpm::RpmHeader::tag_group ( ) const

Definition at line 733 of file RpmHeader.cc.

◆ tag_vendor()

std::string zypp::target::rpm::RpmHeader::tag_vendor ( ) const

Definition at line 746 of file RpmHeader.cc.

◆ tag_distribution()

std::string zypp::target::rpm::RpmHeader::tag_distribution ( ) const

Definition at line 759 of file RpmHeader.cc.

◆ tag_license()

std::string zypp::target::rpm::RpmHeader::tag_license ( ) const

Definition at line 772 of file RpmHeader.cc.

◆ tag_buildhost()

std::string zypp::target::rpm::RpmHeader::tag_buildhost ( ) const

Definition at line 785 of file RpmHeader.cc.

◆ tag_packager()

std::string zypp::target::rpm::RpmHeader::tag_packager ( ) const

Definition at line 798 of file RpmHeader.cc.

◆ tag_url()

std::string zypp::target::rpm::RpmHeader::tag_url ( ) const

Definition at line 811 of file RpmHeader.cc.

◆ tag_os()

std::string zypp::target::rpm::RpmHeader::tag_os ( ) const

Definition at line 824 of file RpmHeader.cc.

◆ tag_prein()

std::string zypp::target::rpm::RpmHeader::tag_prein ( ) const

Definition at line 830 of file RpmHeader.cc.

◆ tag_preinprog()

std::string zypp::target::rpm::RpmHeader::tag_preinprog ( ) const

Definition at line 833 of file RpmHeader.cc.

◆ tag_postin()

std::string zypp::target::rpm::RpmHeader::tag_postin ( ) const

Definition at line 836 of file RpmHeader.cc.

◆ tag_postinprog()

std::string zypp::target::rpm::RpmHeader::tag_postinprog ( ) const

Definition at line 839 of file RpmHeader.cc.

◆ tag_preun()

std::string zypp::target::rpm::RpmHeader::tag_preun ( ) const

Definition at line 842 of file RpmHeader.cc.

◆ tag_preunprog()

std::string zypp::target::rpm::RpmHeader::tag_preunprog ( ) const

Definition at line 845 of file RpmHeader.cc.

◆ tag_postun()

std::string zypp::target::rpm::RpmHeader::tag_postun ( ) const

Definition at line 848 of file RpmHeader.cc.

◆ tag_postunprog()

std::string zypp::target::rpm::RpmHeader::tag_postunprog ( ) const

Definition at line 851 of file RpmHeader.cc.

◆ tag_pretrans()

std::string zypp::target::rpm::RpmHeader::tag_pretrans ( ) const

Definition at line 854 of file RpmHeader.cc.

◆ tag_pretransprog()

std::string zypp::target::rpm::RpmHeader::tag_pretransprog ( ) const

Definition at line 857 of file RpmHeader.cc.

◆ tag_posttrans()

std::string zypp::target::rpm::RpmHeader::tag_posttrans ( ) const

Definition at line 860 of file RpmHeader.cc.

◆ tag_posttransprog()

std::string zypp::target::rpm::RpmHeader::tag_posttransprog ( ) const

Definition at line 863 of file RpmHeader.cc.

◆ tag_sourcerpm()

std::string zypp::target::rpm::RpmHeader::tag_sourcerpm ( ) const

Definition at line 874 of file RpmHeader.cc.

◆ signatureKeyID()

std::string zypp::target::rpm::RpmHeader::signatureKeyID ( ) const

Uses headerFormat to query the signature info from the header.

Note
Query copied from Yum misc/checksig.py

Definition at line 879 of file RpmHeader.cc.

◆ tag_filenames()

std::list< std::string > zypp::target::rpm::RpmHeader::tag_filenames ( ) const

just the list of names

Definition at line 907 of file RpmHeader.cc.

◆ tag_fileinfos()

std::list< FileInfo > zypp::target::rpm::RpmHeader::tag_fileinfos ( ) const

complete information about the files (extended version of tag_filenames())

Definition at line 935 of file RpmHeader.cc.

◆ tag_changelog()

Changelog zypp::target::rpm::RpmHeader::tag_changelog ( ) const

Definition at line 1016 of file RpmHeader.cc.

◆ dumpOn()

std::ostream & zypp::target::rpm::RpmHeader::dumpOn ( std::ostream &  str) const
virtual

Overload to realize std::ostream & operator<<.

Reimplemented from zypp::target::rpm::BinHeader.

Definition at line 264 of file RpmHeader.cc.

◆ readPackage()

RpmHeader::constPtr zypp::target::rpm::RpmHeader::readPackage ( const Pathname path,
VERIFICATION  verification = VERIFY 
)
static

Get an accessible packages data from disk.

Returns NULL on any error.

Definition at line 208 of file RpmHeader.cc.


The documentation for this class was generated from the following files: