rpm 5.2.1
Defines | Typedefs | Enumerations | Variables

lib/rpmfi.h File Reference

Structure(s) used for file info tag sets. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define RPMFILE_STATE_MISSING   -1
#define RPMFILE_SPOOK   (RPMFILE_GHOST|RPMFILE_TYPED)
#define RPMFILE_ALL   ~(RPMFILE_NONE)

Typedefs

typedef enum rpmFileTypes_e rpmFileTypes
 File types.
typedef enum rpmfileState_e rpmfileState
 File States (when installed).
typedef enum rpmfileAttrs_e rpmfileAttrs
 File Attributes.
typedef struct rpmfi_s * rpmfi
 File info tag sets from a header, so that a header can be discarded early.

Enumerations

enum  rpmFileTypes_e {
  PIPE = 1, CDEV = 2, XDIR = 4, BDEV = 6,
  REG = 8, LINK = 10, SOCK = 12
}
 

File types.

More...
enum  rpmfileState_e {
  RPMFILE_STATE_NORMAL = 0, RPMFILE_STATE_REPLACED = 1, RPMFILE_STATE_NOTINSTALLED = 2, RPMFILE_STATE_NETSHARED = 3,
  RPMFILE_STATE_WRONGCOLOR = 4
}
 

File States (when installed).

More...
enum  rpmfileAttrs_e {
  RPMFILE_NONE = 0, RPMFILE_CONFIG = (1 << 0), RPMFILE_DOC = (1 << 1), RPMFILE_ICON = (1 << 2),
  RPMFILE_MISSINGOK = (1 << 3), RPMFILE_NOREPLACE = (1 << 4), RPMFILE_SPECFILE = (1 << 5), RPMFILE_GHOST = (1 << 6),
  RPMFILE_LICENSE = (1 << 7), RPMFILE_README = (1 << 8), RPMFILE_EXCLUDE = (1 << 9), RPMFILE_UNPATCHED = (1 << 10),
  RPMFILE_PUBKEY = (1 << 11), RPMFILE_POLICY = (1 << 12), RPMFILE_EXISTS = (1 << 13), RPMFILE_SPARSE = (1 << 14),
  RPMFILE_TYPED = (1 << 15), RPMFILE_SOURCE = (1 << 16), RPMFILE_PATCH = (1 << 17), RPMFILE_OPTIONAL = (1 << 18),
  RPMFILE_REMOVE = (1 << 19)
}
 

File Attributes.

More...

Variables

int _rpmfi_debug

RPMFI

#define rpmfiUnlink(_fi, _msg)   ((rpmfi) rpmioUnlinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
#define rpmfiLink(_fi, _msg)   ((rpmfi) rpmioLinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
#define rpmfiFree(_fi)   ((rpmfi) rpmioFreePoolItem((rpmioItem)(_fi), __FUNCTION__, __FILE__, __LINE__))
rpmfi rpmfiUnlink (rpmfi fi, const char *msg)
 Unreference a file info set instance.
rpmfi rpmfiLink (rpmfi fi, const char *msg)
 Reference a file info set instance.
int rpmfiFC (rpmfi fi)
 Return file count from file info set.
int rpmfiFX (rpmfi fi)
 Return current file index from file info set.
int rpmfiSetFX (rpmfi fi, int fx)
 Set current file index in file info set.
int rpmfiDC (rpmfi fi)
 Return directory count from file info set.
int rpmfiDX (rpmfi fi)
 Return current directory index from file info set.
int rpmfiSetDX (rpmfi fi, int dx)
 Set current directory index in file info set.
int rpmfiIsSource (rpmfi fi)
 Return source rpm marker from file info set.
const char * rpmfiBN (rpmfi fi)
 Return current base name from file info set.
const char * rpmfiDN (rpmfi fi)
 Return current directory name from file info set.
const char * rpmfiFN (rpmfi fi)
 Return current file name from file info set.
size_t rpmfiFNMaxLen (rpmfi fi)
 Return maximum file name length from file info set.
rpmuint32_t rpmfiFFlags (rpmfi fi)
 Return current file flags from file info set.
rpmuint32_t rpmfiSetFFlags (rpmfi fi, rpmuint32_t FFlags)
 Set current file flags in file info set.
rpmuint32_t rpmfiVFlags (rpmfi fi)
 Return current file verify flags from file info set.
rpmuint32_t rpmfiSetVFlags (rpmfi fi, rpmuint32_t VFlags)
 Set current file verify flags in file info set.
rpmuint16_t rpmfiFMode (rpmfi fi)
 Return current file mode from file info set.
rpmfileState rpmfiFState (rpmfi fi)
 Return current file state from file info set.
rpmfileState rpmfiSetFState (rpmfi fi, rpmfileState fstate)
 Set current file state in file info set.
const unsigned char * rpmfiDigest (rpmfi fi, int *algop, size_t *lenp)
 Return current file (binary) digest from file info set.
const char * rpmfiFLink (rpmfi fi)
 Return current file linkto (i.e.
rpmuint32_t rpmfiFSize (rpmfi fi)
 Return current file size from file info set.
rpmuint16_t rpmfiFRdev (rpmfi fi)
 Return current file rdev from file info set.
rpmuint32_t rpmfiFInode (rpmfi fi)
 Return current file inode from file info set.
rpmuint32_t rpmfiColor (rpmfi fi)
 Return union of all file color bits from file info set.
rpmuint32_t rpmfiFColor (rpmfi fi)
 Return current file color bits from file info set.
const char * rpmfiFClass (rpmfi fi)
 Return current file class from file info set.
const char * rpmfiFContext (rpmfi fi)
 Return current file security context from file info set.
rpmuint32_t rpmfiFDepends (rpmfi fi, const rpmuint32_t **fddictp)
 Return current file depends dictionary from file info set.
rpmuint32_t rpmfiFNlink (rpmfi fi)
 Return (calculated) current file nlink count from file info set.
rpmuint32_t rpmfiFMtime (rpmfi fi)
 Return current file modify time from file info set.
const char * rpmfiFUser (rpmfi fi)
 Return current file owner from file info set.
const char * rpmfiFGroup (rpmfi fi)
 Return current file group from file info set.
void * rpmfiExclude (const rpmfi fi)
 Return file info exclude patterns.
int rpmfiNExclude (const rpmfi fi)
 Return no.
void * rpmfiInclude (const rpmfi fi)
 Return file info include patterns.
int rpmfiNInclude (const rpmfi fi)
 Return no.
int rpmfiNext (rpmfi fi)
 Return next file iterator index.
rpmfi rpmfiInit (rpmfi fi, int fx)
 Initialize file iterator index.
int rpmfiNextD (rpmfi fi)
 Return next directory iterator index.
rpmfi rpmfiInitD (rpmfi fi, int dx)
 Initialize directory iterator index.
int rpmfiSetHeader (rpmfi fi, Header h)
 Link a header to a file info set.
rpmfi rpmfiFree (rpmfi fi)
 Destroy a file info set.
rpmfi rpmfiNew (const void *_ts, Header h, rpmTag tagN, int flags)
 Create and load a file info set.
int rpmfiFStat (rpmfi fi, struct stat *st)
 Return current stat(2) data from file info set.
int rpmfiStat (rpmfi fi, const char *path, struct stat *st)
 Return lstat(2) data of path from file info set.
DIR * rpmfiOpendir (rpmfi fi, const char *name)
 Return directory stream onto file info set.
void rpmfiBuildFClasses (Header h, const char ***fclassp, rpmuint32_t *fcp)
 Retrieve file classes from header.
void rpmfiBuildFContexts (Header h, const char ***fcontextp, rpmuint32_t *fcp)
 Retrieve file security contexts from header.
void rpmfiBuildFSContexts (Header h, const char ***fcontextp, rpmuint32_t *fcp)
 Retrieve file security contexts from file system.
void rpmfiBuildREContexts (Header h, const char ***fcontextp, rpmuint32_t *fcp)
 Retrieve file security contexts from policy RE's.
void rpmfiBuildFDeps (Header h, rpmTag tagN, const char ***fdepsp, rpmuint32_t *fcp)
 Retrieve per-file dependencies from header.
int rpmfiCompare (const rpmfi afi, const rpmfi bfi)
 Return file info comparison.
int rpmfiDecideFate (const rpmfi ofi, rpmfi nfi, int skipMissing)
 Return file disposition.
const char * rpmfiTypeString (rpmfi fi)
 Return formatted string representation of package disposition.
rpmRelocation rpmfiFreeRelocations (rpmRelocation relocs)
 Free relocation array.
rpmRelocation rpmfiDupeRelocations (rpmRelocation relocs, int *nrelocsp)
 Duplicate a relocation array.
int rpmfiAddRelocation (rpmRelocation *relp, int *nrelp, const char *oldPath, const char *newPath)
 Add relocation element to array.

Detailed Description

Structure(s) used for file info tag sets.

Definition in file rpmfi.h.


Define Documentation

#define rpmfiFree (   _fi)    ((rpmfi) rpmioFreePoolItem((rpmioItem)(_fi), __FUNCTION__, __FILE__, __LINE__))

Definition at line 650 of file rpmfi.h.

#define RPMFILE_ALL   ~(RPMFILE_NONE)

Definition at line 73 of file rpmfi.h.

#define RPMFILE_SPOOK   (RPMFILE_GHOST|RPMFILE_TYPED)

Definition at line 72 of file rpmfi.h.

#define RPMFILE_STATE_MISSING   -1

Definition at line 41 of file rpmfi.h.

Referenced by rpmfiFState(), and showQueryPackage().

#define rpmfiLink (   _fi,
  _msg 
)    ((rpmfi) rpmioLinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))

Definition at line 276 of file rpmfi.h.

#define rpmfiUnlink (   _fi,
  _msg 
)    ((rpmfi) rpmioUnlinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))

Definition at line 264 of file rpmfi.h.


Typedef Documentation

File Attributes.

File States (when installed).


Enumeration Type Documentation

File Attributes.

Enumerator:
RPMFILE_NONE 
RPMFILE_CONFIG 

from %config

RPMFILE_DOC 

from %doc

RPMFILE_ICON 

from Icon:

RPMFILE_MISSINGOK 

from %config(missingok)

RPMFILE_NOREPLACE 

from %config(noreplace)

RPMFILE_SPECFILE 

the specfile (srpm only).

RPMFILE_GHOST 

from %ghost

RPMFILE_LICENSE 

from %license

RPMFILE_README 

from %readme

RPMFILE_EXCLUDE 

from %exclude, internal

RPMFILE_UNPATCHED 

(deprecated) placeholder (SuSE)

RPMFILE_PUBKEY 

from %pubkey

RPMFILE_POLICY 

from %policy

RPMFILE_EXISTS 

did lstat(fn, st) succeed?

RPMFILE_SPARSE 

was ((512*st->st_blocks) < st->st_size) ?

RPMFILE_TYPED 

(unimplemented) from %spook

RPMFILE_SOURCE 

from SourceN: (srpm only).

RPMFILE_PATCH 

from PatchN: (srpm only).

RPMFILE_OPTIONAL 

from %optional.

RPMFILE_REMOVE 

remove file (after post).

Definition at line 46 of file rpmfi.h.

File States (when installed).

Enumerator:
RPMFILE_STATE_NORMAL 
RPMFILE_STATE_REPLACED 
RPMFILE_STATE_NOTINSTALLED 
RPMFILE_STATE_NETSHARED 
RPMFILE_STATE_WRONGCOLOR 

Definition at line 34 of file rpmfi.h.


Function Documentation

int rpmfiAddRelocation ( rpmRelocation relp,
int *  nrelp,
const char *  oldPath,
const char *  newPath 
)

Add relocation element to array.

Return values:
*relocationsrelocation array
*nrelocationsno. of elements
Parameters:
oldPathold path
newPathnew path
Returns:
0 on success

Definition at line 1654 of file rpmfi.c.

References xrealloc(), and xstrdup().

Referenced by installArgCallback(), and main().

const char* rpmfiBN ( rpmfi  fi)

Return current base name from file info set.

Parameters:
fifile info set
Returns:
current base name, NULL on invalid

Definition at line 128 of file rpmfi.c.

Referenced by arSetup(), handleInstInstalledFiles(), rpmalAdd(), rpmfi_BN(), and skipFiles().

void rpmfiBuildFClasses ( Header  h,
const char ***  fclassp,
rpmuint32_t fcp 
)

Retrieve file classes from header.

This function is used to retrieve file classes from the header.

Parameters:
hheader
Return values:
*fclassparray of file classes
*fcpnumber of files

Definition at line 1806 of file rpmfi.c.

References _free(), rpmfiFC(), rpmfiFClass(), rpmfiFree(), rpmfiInit(), rpmfiNew(), rpmfiNext(), stpcpy(), and xmalloc().

Referenced by fileclassTag().

void rpmfiBuildFContexts ( Header  h,
const char ***  fcontextp,
rpmuint32_t fcp 
)

Retrieve file security contexts from header.

This function is used to retrieve file contexts from the header.

Parameters:
hheader
Return values:
*fcontextparray of file contexts
*fcpnumber of files

Definition at line 1858 of file rpmfi.c.

References _free(), rpmfiFC(), rpmfiFContext(), rpmfiFree(), rpmfiInit(), rpmfiNew(), rpmfiNext(), stpcpy(), and xmalloc().

Referenced by filecontextsTag().

void rpmfiBuildFDeps ( Header  h,
rpmTag  tagN,
const char ***  fdepsp,
rpmuint32_t fcp 
)

Retrieve per-file dependencies from header.

This function is used to retrieve per-file dependencies from the header.

Parameters:
hheader
tagNRPMTAG_PROVIDENAME | RPMTAG_REQUIRENAME
Return values:
*fdepsparray of file dependencies
*fcpnumber of files

Definition at line 2063 of file rpmfi.c.

References _free(), rpmdsDNEVR(), rpmdsFree(), rpmdsNew(), rpmdsNext(), rpmdsSetIx(), rpmfiFC(), rpmfiFDepends(), rpmfiFree(), rpmfiInit(), rpmfiNew(), rpmfiNext(), stpcpy(), and xmalloc().

Referenced by fileprovideTag(), and filerequireTag().

void rpmfiBuildFSContexts ( Header  h,
const char ***  fcontextp,
rpmuint32_t fcp 
)

Retrieve file security contexts from file system.

This function is used to retrieve file contexts from the file system.

Parameters:
hheader
Return values:
*fcontextparray of file contexts
*fcpnumber of files

Definition at line 1910 of file rpmfi.c.

References _free(), alloca(), freecon, lgetfilecon, rpmfiFC(), rpmfiFN(), rpmfiFree(), rpmfiInit(), rpmfiNew(), rpmfiNext(), xmalloc(), and xrealloc().

Referenced by fscontextsTag().

void rpmfiBuildREContexts ( Header  h,
const char ***  fcontextp,
rpmuint32_t fcp 
)

Retrieve file security contexts from policy RE's.

This function is used to retrieve file contexts from policy RE's.

Parameters:
hheader
Return values:
*fcontextparray of file contexts
*fcpnumber of files

Definition at line 1978 of file rpmfi.c.

References _free(), alloca(), freecon, matchpathcon, matchpathcon_fini, matchpathcon_init, rpmfiFC(), rpmfiFMode(), rpmfiFN(), rpmfiFree(), rpmfiInit(), rpmfiNew(), rpmfiNext(), rpmGetPath(), xmalloc(), and xrealloc().

Referenced by recontextsTag().

rpmuint32_t rpmfiColor ( rpmfi  fi)

Return union of all file color bits from file info set.

Parameters:
fifile info set
Returns:
current color

Definition at line 319 of file rpmfi.c.

int rpmfiCompare ( const rpmfi  afi,
const rpmfi  bfi 
)

Return file info comparison.

Parameters:
afi1st file info
bfi2nd file info
Returns:
0 if identical

Definition at line 571 of file rpmfi.c.

References LINK, REG, rpmfiDigest(), rpmfiFLink(), rpmfiFMode(), and rpmfiWhatis().

Referenced by handleInstInstalledFiles(), and handleOverlappedFiles().

int rpmfiDC ( rpmfi  fi)

Return directory count from file info set.

Parameters:
fifile info set
Returns:
current directory count

Definition at line 79 of file rpmfi.c.

Referenced by rpmalAdd(), rpmalDel(), rpmfi_DC(), and skipFiles().

int rpmfiDecideFate ( const rpmfi  ofi,
rpmfi  nfi,
int  skipMissing 
)

Return file disposition.

Parameters:
ofiold file info
nfinew file info
skipMissingOK to skip missing files?
Returns:
file dispostion

Definition at line 605 of file rpmfi.c.

References D_, dodigest(), FA_ALTNAME, FA_CREATE, FA_SAVE, FA_SKIP, LINK, Lstat(), Readlink(), REG, rpmfiDigest(), rpmfiFFlags(), rpmfiFLink(), rpmfiFMode(), rpmfiFN(), RPMFILE_MISSINGOK, RPMFILE_NOREPLACE, RPMFILE_SPARSE, rpmfiWhatis(), rpmlog(), RPMLOG_DEBUG, and XDIR.

Referenced by handleInstInstalledFiles().

const unsigned char* rpmfiDigest ( rpmfi  fi,
int *  algop,
size_t *  lenp 
)

Return current file (binary) digest from file info set.

Parameters:
fifile info set
Return values:
*algopdigest algorithm
*lenpdigest length (in bytes)
Returns:
current file digest, NULL on invalid

Definition at line 258 of file rpmfi.c.

Referenced by handleOverlappedFiles(), rpmfi_Digest(), rpmfiCompare(), rpmfiDecideFate(), rpmVerifyFile(), and showQueryPackage().

const char* rpmfiDN ( rpmfi  fi)

Return current directory name from file info set.

Parameters:
fifile info set
Returns:
current directory, NULL on invalid

Definition at line 139 of file rpmfi.c.

Referenced by handleInstInstalledFiles(), rpmalAdd(), rpmalDel(), rpmfi_DN(), and skipFiles().

rpmRelocation rpmfiDupeRelocations ( rpmRelocation  relocs,
int *  nrelocsp 
)

Duplicate a relocation array.

Parameters:
relocsrelocation array
Return values:
*nrelocspno. of elements
Returns:
duplicate relocation array

Definition at line 1679 of file rpmfi.c.

References rpmRelocation_s::newPath, rpmRelocation_s::oldPath, xmalloc(), and xstrdup().

Referenced by addTE().

int rpmfiDX ( rpmfi  fi)

Return current directory index from file info set.

Parameters:
fifile info set
Returns:
current directory index

Definition at line 107 of file rpmfi.c.

Referenced by rpmalAdd(), rpmfi_DX(), and skipFiles().

int rpmfiFC ( rpmfi  fi)
const char* rpmfiFClass ( rpmfi  fi)

Return current file class from file info set.

Parameters:
fifile info set
Returns:
current file class, 0 on invalid

Definition at line 341 of file rpmfi.c.

Referenced by rpmfi_FClass(), and rpmfiBuildFClasses().

rpmuint32_t rpmfiFColor ( rpmfi  fi)

Return current file color bits from file info set.

Parameters:
fifile info set
Returns:
current file color

Definition at line 329 of file rpmfi.c.

Referenced by handleInstInstalledFiles(), handleOverlappedFiles(), rpmalAdd(), rpmfi_FColor(), rpmteColorDS(), and skipFiles().

const char* rpmfiFContext ( rpmfi  fi)

Return current file security context from file info set.

Parameters:
fifile info set
Returns:
current file context, 0 on invalid

Definition at line 353 of file rpmfi.c.

Referenced by rpmfiBuildFContexts().

rpmuint32_t rpmfiFDepends ( rpmfi  fi,
const rpmuint32_t **  fddictp 
)

Return current file depends dictionary from file info set.

Parameters:
fifile info set
Return values:
*fddictpfile depends dictionary array (or NULL)
Returns:
no. of file depends entries, 0 on invalid

Definition at line 364 of file rpmfi.c.

Referenced by rpmfiBuildFDeps(), and rpmteColorDS().

rpmuint32_t rpmfiFFlags ( rpmfi  fi)

Return current file flags from file info set.

Parameters:
fifile info set
Returns:
current file flags, 0 on invalid

Definition at line 175 of file rpmfi.c.

Referenced by handleInstInstalledFiles(), handleOverlappedFiles(), rpmfcGenerateDepends(), rpmfi_FFlags(), rpmfi_iternext(), rpmfiDecideFate(), rpmtsRun(), rpmVerifyFile(), showQueryPackage(), skipFiles(), and verifyHeader().

const char* rpmfiFGroup ( rpmfi  fi)

Return current file group from file info set.

Parameters:
fifile info set
Returns:
current file group, NULL on invalid

Definition at line 428 of file rpmfi.c.

Referenced by rpmfi_FGroup(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

rpmuint32_t rpmfiFInode ( rpmfi  fi)

Return current file inode from file info set.

Parameters:
fifile info set
Returns:
current file inode, 0 on invalid

Definition at line 308 of file rpmfi.c.

Referenced by rpmfi_iternext().

const char* rpmfiFLink ( rpmfi  fi)

Return current file linkto (i.e.

symlink(2) target) from file info set.

Parameters:
fifile info set
Returns:
current file linkto, NULL on invalid

Definition at line 275 of file rpmfi.c.

Referenced by rpmfi_FLink(), rpmfiCompare(), rpmfiDecideFate(), rpmVerifyFile(), and showQueryPackage().

rpmuint16_t rpmfiFMode ( rpmfi  fi)

Return current file mode from file info set.

Parameters:
fifile info set
Returns:
current file mode, 0 on invalid

Definition at line 223 of file rpmfi.c.

Referenced by fiIntersect(), handleInstInstalledFiles(), handleOverlappedFiles(), packagedDir(), rpmfcGenerateDepends(), rpmfi_FMode(), rpmfi_iternext(), rpmfiBuildREContexts(), rpmfiCompare(), rpmfiDecideFate(), rpmVerifyFile(), showQueryPackage(), and skipFiles().

rpmuint32_t rpmfiFMtime ( rpmfi  fi)

Return current file modify time from file info set.

Parameters:
fifile info set
Returns:
current file modify time, 0 on invalid

Definition at line 405 of file rpmfi.c.

Referenced by rpmfi_FMtime(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

const char* rpmfiFN ( rpmfi  fi)
rpmuint32_t rpmfiFNlink ( rpmfi  fi)

Return (calculated) current file nlink count from file info set.

Parameters:
fifile info set
Returns:
current file nlink count, 0 on invalid

Definition at line 385 of file rpmfi.c.

Referenced by rpmfi_iternext(), rpmfiFStat(), and showQueryPackage().

size_t rpmfiFNMaxLen ( rpmfi  fi)

Return maximum file name length from file info set.

Parameters:
fifile info set
Returns:
maximum file name length (not including '\0')

Definition at line 168 of file rpmfi.c.

Referenced by pkgUnpackagedSubdirs().

rpmuint16_t rpmfiFRdev ( rpmfi  fi)

Return current file rdev from file info set.

Parameters:
fifile info set
Returns:
current file rdev, 0 on invalid

Definition at line 297 of file rpmfi.c.

Referenced by rpmfi_FRdev(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

rpmfi rpmfiFree ( rpmfi  fi)
rpmRelocation rpmfiFreeRelocations ( rpmRelocation  relocs)

Free relocation array.

Parameters:
relocsrelocation array
Returns:
NULL always

Definition at line 1666 of file rpmfi.c.

References _free(), rpmRelocation_s::newPath, and rpmRelocation_s::oldPath.

Referenced by delTE(), and main().

rpmuint32_t rpmfiFSize ( rpmfi  fi)

Return current file size from file info set.

Parameters:
fifile info set
Returns:
current file size, 0 on invalid

Definition at line 286 of file rpmfi.c.

Referenced by handleInstInstalledFiles(), handleOverlappedFiles(), rpmfi_FSize(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

int rpmfiFStat ( rpmfi  fi,
struct stat *  st 
)

Return current stat(2) data from file info set.

Parameters:
fifile info set
Return values:
*ststat(2) data
Returns:
-1 on error, 0 on success

Definition at line 1704 of file rpmfi.c.

References gnameToGid(), rpmfiFNlink(), and unameToUid().

Referenced by rpmfiStat().

rpmfileState rpmfiFState ( rpmfi  fi)

Return current file state from file info set.

Parameters:
fifile info set
Returns:
current file state, 0 on invalid

Definition at line 234 of file rpmfi.c.

References RPMFILE_STATE_MISSING.

Referenced by handleOverlappedFiles(), rpmfi_FState(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

const char* rpmfiFUser ( rpmfi  fi)

Return current file owner from file info set.

Parameters:
fifile info set
Returns:
current file owner, NULL on invalid

Definition at line 416 of file rpmfi.c.

Referenced by rpmfi_FUser(), rpmfi_iternext(), rpmVerifyFile(), and showQueryPackage().

int rpmfiFX ( rpmfi  fi)

Return current file index from file info set.

Parameters:
fifile info set
Returns:
current file index

Definition at line 90 of file rpmfi.c.

Referenced by rpmfi_FX().

rpmfi rpmfiInit ( rpmfi  fi,
int  fx 
)
rpmfi rpmfiInitD ( rpmfi  fi,
int  dx 
)

Initialize directory iterator index.

Parameters:
fifile info set
dxdirectory iterator index
Returns:
file info set, NULL if dx is out of range

Definition at line 516 of file rpmfi.c.

Referenced by skipFiles().

int rpmfiIsSource ( rpmfi  fi)

Return source rpm marker from file info set.

Parameters:
fifile info set
Returns:
source rpm?

Definition at line 123 of file rpmfi.c.

rpmfi rpmfiLink ( rpmfi  fi,
const char *  msg 
)

Reference a file info set instance.

Parameters:
fifile info set
msg
Returns:
new file info set reference

Referenced by mapInitIterator(), packageBinaries(), packageSources(), rpmalAdd(), rpmfiNew(), rpmInstallSourcePackage(), rpmpsmNew(), rpmte_FI(), rpmtsRun(), and verifyHeader().

rpmfi rpmfiNew ( const void *  _ts,
Header  h,
rpmTag  tagN,
int  flags 
)

Create and load a file info set.

Parameters:
_tstransaction set (NULL skips path relocation)
hheader
tagNRPMTAG_BASENAMES
flagsscareMem(0x1), nofilter(0x2)
Returns:
new file info set

Definition at line 1333 of file rpmfi.c.

References _fdupedata, _fdupestring, _free(), _rpmfi_debug, alloca(), rpmDataType_u::argv, argvFree(), _HE_s::c, FA_UNKNOWN, headerFree(), headerGet(), headerIsEntry(), headerLink(), headerMacrosLoad(), headerMacrosUnload(), headerSprintf(), IOSM_MAP_GID, IOSM_MAP_MODE, IOSM_MAP_PATH, IOSM_MAP_UID, newFSM(), rpmRelocation_s::newPath, nibble(), _HE_s::p, PGPHASHALGO_CRC32, PGPHASHALGO_ERROR, PGPHASHALGO_MD2, PGPHASHALGO_MD5, PGPHASHALGO_RIPEMD128, PGPHASHALGO_RIPEMD160, PGPHASHALGO_RIPEMD256, PGPHASHALGO_RIPEMD320, PGPHASHALGO_SHA1, PGPHASHALGO_SHA224, PGPHASHALGO_SHA256, PGPHASHALGO_SHA384, PGPHASHALGO_SHA512, rpmDataType_u::ptr, relocateFileList(), rpmfiGetPool(), RPMFILE_ICON, RPMFILE_PATCH, RPMFILE_SOURCE, RPMFILE_SPECFILE, rpmfiLink(), rpmGenPath(), rpmGetPath(), rpmHeaderFormats, rpmteType(), rpmtsRelocateElement(), rpmtsRootDir(), stpcpy(), _HE_s::tag, TR_ADDED, rpmDataType_u::ui32p, xcalloc(), xmalloc(), xrealloc(), and xstrdup().

Referenced by addTE(), checkDuplicateFiles(), checkUnpackagedFiles(), genCpioListAndHeader(), handleInstInstalledFiles(), hdr_fiFromHeader(), packagedDir(), pkgUnpackagedSubdirs(), rpmfi_init(), rpmfiBuildFClasses(), rpmfiBuildFContexts(), rpmfiBuildFDeps(), rpmfiBuildFSContexts(), rpmfiBuildREContexts(), rpmInstallSourcePackage(), rpmtsRun(), showQueryPackage(), and showVerifyPackage().

int rpmfiNext ( rpmfi  fi)
int rpmfiNextD ( rpmfi  fi)

Return next directory iterator index.

Parameters:
fifile info set
Returns:
directory iterator index, -1 on termination

Definition at line 496 of file rpmfi.c.

References _rpmfi_debug.

Referenced by skipFiles().

DIR* rpmfiOpendir ( rpmfi  fi,
const char *  name 
)

Return directory stream onto file info set.

Parameters:
fifile info set
namedirectory path
Returns:
NULL on error

Definition at line 1762 of file rpmfi.c.

References _free(), _rpmfi_debug, argvAdd(), argvFree(), avOpendir(), name, rpmfiFN(), rpmfiInit(), rpmfiNext(), and xcalloc().

int rpmfiSetDX ( rpmfi  fi,
int  dx 
)

Set current directory index in file info set.

Parameters:
fifile info set
dxnew directory index
Returns:
current directory index

Definition at line 112 of file rpmfi.c.

Referenced by rpmalAdd(), and rpmalDel().

rpmuint32_t rpmfiSetFFlags ( rpmfi  fi,
rpmuint32_t  FFlags 
)

Set current file flags in file info set.

Parameters:
fifile info set
FFlagsnew file flags
Returns:
previous file flags, 0 on invalid

Definition at line 186 of file rpmfi.c.

Referenced by rpmtsRun().

rpmfileState rpmfiSetFState ( rpmfi  fi,
rpmfileState  fstate 
)

Set current file state in file info set.

Parameters:
fifile info set
fstatenew file state
Returns:
previous file state, 0 on invalid

Definition at line 245 of file rpmfi.c.

int rpmfiSetFX ( rpmfi  fi,
int  fx 
)

Set current file index in file info set.

Parameters:
fifile info set
fxnew file index
Returns:
current file index

Definition at line 95 of file rpmfi.c.

Referenced by handleInstInstalledFiles(), handleOverlappedFiles(), and rpmfi_subscript().

int rpmfiSetHeader ( rpmfi  fi,
Header  h 
)

Link a header to a file info set.

Parameters:
fifile info set
hheader
Returns:
0 always

Definition at line 1209 of file rpmfi.c.

References headerFree(), and headerLink().

Referenced by showVerifyPackage().

rpmuint32_t rpmfiSetVFlags ( rpmfi  fi,
rpmuint32_t  VFlags 
)

Set current file verify flags in file info set.

Parameters:
fifile info set
VFlagsnew file verify flags
Returns:
previous file verify flags, 0 on invalid

Definition at line 210 of file rpmfi.c.

int rpmfiStat ( rpmfi  fi,
const char *  path,
struct stat *  st 
)

Return lstat(2) data of path from file info set.

Parameters:
fifile info set
pathfile path
Return values:
*ststat(2) data
Returns:
-1 on error, 0 on success

Definition at line 1731 of file rpmfi.c.

References _rpmfi_debug, rpmfiFN(), rpmfiFStat(), rpmfiInit(), and rpmfiNext().

const char* rpmfiTypeString ( rpmfi  fi)

Return formatted string representation of package disposition.

Parameters:
fifile info set
Returns:
formatted string

Definition at line 701 of file rpmfi.c.

References rpmteType(), TR_ADDED, and TR_REMOVED.

Referenced by fsmStage().

rpmfi rpmfiUnlink ( rpmfi  fi,
const char *  msg 
)

Unreference a file info set instance.

Parameters:
fifile info set
msg
Returns:
NULL on last dereference

Referenced by mapFreeIterator(), rpmalAdd(), and verifyHeader().

rpmuint32_t rpmfiVFlags ( rpmfi  fi)

Return current file verify flags from file info set.

Parameters:
fifile info set
Returns:
current file verify flags, 0 on invalid

Definition at line 199 of file rpmfi.c.

Referenced by rpmfi_iternext(), rpmfi_VFlags(), and rpmVerifyFile().


Variable Documentation

Definition at line 54 of file rpmfi.c.