rpm 4.19.0
The RPM Package Manager
Loading...
Searching...
No Matches
Typedefs | Enumerations | Functions | Variables
header.h File Reference
#include <rpm/rpmio.h>
#include <rpm/rpmtypes.h>
#include <rpm/rpmtd.h>
#include <rpm/rpmutil.h>
Include dependency graph for header.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef rpmFlags headerImportFlags
 
typedef rpmFlags headerGetFlags
 
typedef rpmFlags headerPutFlags
 
typedef enum headerConvOps_e headerConvOps
 

Enumerations

enum  hMagic { HEADER_MAGIC_NO = 0 , HEADER_MAGIC_YES = 1 }
 
enum  headerImportFlags_e { HEADERIMPORT_COPY = (1 << 0) , HEADERIMPORT_FAST = (1 << 1) }
 
enum  headerGetFlags_e {
  HEADERGET_DEFAULT = 0 , HEADERGET_MINMEM = (1 << 0) , HEADERGET_EXT = (1 << 1) , HEADERGET_RAW = (1 << 2) ,
  HEADERGET_ALLOC = (1 << 3) , HEADERGET_ARGV = (1 << 4)
}
 
enum  headerPutFlags_e { HEADERPUT_DEFAULT = 0 , HEADERPUT_APPEND = (1 << 0) }
 
enum  headerConvOps_e { HEADERCONV_EXPANDFILELIST = 0 , HEADERCONV_COMPRESSFILELIST = 1 , HEADERCONV_RETROFIT_V3 = 2 }
 

Functions

Header headerNew (void)
 
Header headerFree (Header h)
 
Header headerLink (Header h)
 
unsigned int headerSizeof (Header h, int magicp)
 
void * headerExport (Header h, unsigned int *bsize)
 
Header headerReload (Header h, rpmTagVal tag)
 
Header headerCopy (Header h)
 
Header headerImport (void *blob, unsigned int bsize, headerImportFlags flags)
 
Header headerRead (FD_t fd, int magicp)
 
int headerWrite (FD_t fd, Header h, int magicp)
 
int headerIsEntry (Header h, rpmTagVal tag)
 
int headerGet (Header h, rpmTagVal tag, rpmtd td, headerGetFlags flags)
 
int headerPut (Header h, rpmtd td, headerPutFlags flags)
 
int headerAddI18NString (Header h, rpmTagVal tag, const char *string, const char *lang)
 
int headerMod (Header h, rpmtd td)
 
int headerDel (Header h, rpmTagVal tag)
 
char * headerFormat (Header h, const char *fmt, errmsg_t *errmsg)
 
void headerCopyTags (Header headerFrom, Header headerTo, const rpmTagVal *tagstocopy)
 
HeaderIterator headerFreeIterator (HeaderIterator hi)
 
HeaderIterator headerInitIterator (Header h)
 
int headerNext (HeaderIterator hi, rpmtd td)
 
rpmTagVal headerNextTag (HeaderIterator hi)
 
char * headerGetAsString (Header h, rpmTagVal tag)
 
const char * headerGetString (Header h, rpmTagVal tag)
 
uint64_t headerGetNumber (Header h, rpmTagVal tag)
 
int headerIsSource (Header h)
 
unsigned int headerGetInstance (Header h)
 
int headerConvert (Header h, int op)
 
int headerPutBin (Header h, rpmTagVal tag, const uint8_t *val, rpm_count_t size)
 
int headerPutString (Header h, rpmTagVal tag, const char *val)
 
int headerPutStringArray (Header h, rpmTagVal tag, const char **val, rpm_count_t size)
 
int headerPutChar (Header h, rpmTagVal tag, const char *val, rpm_count_t size)
 
int headerPutUint8 (Header h, rpmTagVal tag, const uint8_t *val, rpm_count_t size)
 
int headerPutUint16 (Header h, rpmTagVal tag, const uint16_t *val, rpm_count_t size)
 
int headerPutUint32 (Header h, rpmTagVal tag, const uint32_t *val, rpm_count_t size)
 
int headerPutUint64 (Header h, rpmTagVal tag, const uint64_t *val, rpm_count_t size)
 

Variables

const unsigned char rpm_header_magic [8]
 

Detailed Description

An rpm header carries all information about a package. A header is a collection of data elements called tags. Each tag has a data type, and includes 1 or more values.