Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

rpmdb/header_internal.h File Reference

More...

#include <header.h>
#include <netinet/in.h>

Go to the source code of this file.

Data Structures

struct  entryInfo_s
struct  headerToken_s
struct  indexEntry_s
struct  rpmec_s
struct  sprintfTag_s
struct  sprintfToken_s

Defines

#define INDEX_MALLOC_SIZE   8
#define HEADER_OLDFILENAMES   1027
#define HEADER_BASENAMES   1117
#define REGION_TAG_TYPE   RPM_BIN_TYPE
#define REGION_TAG_COUNT   sizeof(struct entryInfo_s)
#define ENTRY_IS_REGION(_e)   (((_e)->info.tag >= HEADER_IMAGE) && ((_e)->info.tag < HEADER_REGIONS))
#define ENTRY_IN_REGION(_e)   ((_e)->info.offset < 0)
#define HEADERFLAG_SORTED   (1 << 0)
#define HEADERFLAG_ALLOCATED   (1 << 1)
#define HEADERFLAG_LEGACY   (1 << 2)
#define HEADERFLAG_DEBUG   (1 << 3)
#define HEADER_DUMP_INLINE   1

Typedefs

typedef entryInfo_sentryInfo
typedef indexEntry_sindexEntry
typedef sprintfTag_ssprintfTag
typedef rpmec_srpmec
typedef sprintfToken_ssprintfToken

Functions

char ** headerGetLangs (Header h)
int headerGetRawEntry (Header h, int_32 tag, hTYP_t type, hPTR_t *p, hCNT_t c)
int headerUsageCount (Header h)
void headerDump (Header h, FILE *f, int flags, const struct headerTagTableEntry_s *tags)


Detailed Description

Definition in file header_internal.h.


Define Documentation

#define ENTRY_IN_REGION _e       ((_e)->info.offset < 0)
 

Definition at line 38 of file header_internal.h.

Referenced by headerAddI18NString(), headerAppendEntry(), headerFree(), headerModifyEntry(), and headerRemoveEntry().

#define ENTRY_IS_REGION _e       (((_e)->info.tag >= HEADER_IMAGE) && ((_e)->info.tag < HEADER_REGIONS))
 

Definition at line 36 of file header_internal.h.

Referenced by copyEntry(), doHeaderUnload(), headerFree(), headerNextIterator(), headerReload(), and headerSizeof().

#define HEADER_BASENAMES   1117
 

Definition at line 20 of file header_internal.h.

Referenced by headerLoad().

#define HEADER_DUMP_INLINE   1
 

Definition at line 203 of file header_internal.h.

Referenced by headerDump(), and main().

#define HEADER_OLDFILENAMES   1027
 

Definition at line 19 of file header_internal.h.

Referenced by headerLoad().

#define HEADERFLAG_ALLOCATED   (1 << 1)
 

Is 1st header region allocated?

Definition at line 66 of file header_internal.h.

Referenced by headerAllocated(), headerCopyLoad(), headerFree(), headerRead(), headerReload(), rpmdbNextIterator(), rpmReadHeader(), and rpmReadSignature().

#define HEADERFLAG_DEBUG   (1 << 3)
 

Debug this header?

Definition at line 68 of file header_internal.h.

#define HEADERFLAG_LEGACY   (1 << 2)
 

Header came from legacy source?

Definition at line 67 of file header_internal.h.

Referenced by doHeaderUnload(), headerLoad(), and headerSizeof().

#define HEADERFLAG_SORTED   (1 << 0)
 

Are header entries sorted?

Definition at line 65 of file header_internal.h.

Referenced by doHeaderUnload(), findEntry(), headerAddEntry(), headerLoad(), headerNew(), and headerSort().

#define INDEX_MALLOC_SIZE   8
 

Definition at line 14 of file header_internal.h.

Referenced by headerAddEntry(), and headerNew().

#define REGION_TAG_COUNT   sizeof(struct entryInfo_s)
 

Definition at line 34 of file header_internal.h.

Referenced by copyEntry(), headerCheck(), headerLoad(), regionSwab(), and rpmReadSignature().

#define REGION_TAG_TYPE   RPM_BIN_TYPE
 

Definition at line 33 of file header_internal.h.

Referenced by headerLoad().


Function Documentation

void headerDump Header    h,
FILE *    f,
int    flags,
const struct headerTagTableEntry_s   tags
 

Dump a header in human readable format (for debugging).

Parameters:
h  header
f  file handle
flags  0 or HEADER_DUMP_INLINE
tags  array of tag name/value pairs

Definition at line 35 of file header_internal.c.

References _, entryInfo_s::count, indexEntry_s::data, HEADER_DUMP_INLINE, headerToken_s::index, headerToken_s::indexUsed, indexEntry_s::info, int_16, int_32, int_8, headerTagTableEntry_s::name, entryInfo_s::offset, RPM_BIN_TYPE, RPM_CHAR_TYPE, RPM_I18NSTRING_TYPE, RPM_INT16_TYPE, RPM_INT32_TYPE, RPM_INT8_TYPE, RPM_NULL_TYPE, RPM_STRING_ARRAY_TYPE, RPM_STRING_TYPE, entryInfo_s::tag, entryInfo_s::type, and headerTagTableEntry_s::val.

Referenced by main().

char** headerGetLangs Header    h
 

Return array of locales found in header. The array is terminated with a NULL sentinel.

Parameters:
h  header
Returns:
array of locales (or NULL on error)

Definition at line 13 of file header_internal.c.

References HEADER_I18NTABLE, headerGetRawEntry(), and xcalloc().


Generated on Sun Oct 26 13:02:07 2003 for rpm by doxygen1.2.18