#include "system.h"
#include <rpmlib.h>
#include <rpmmacro.h>
#include "fsm.h"
#include "psm.h"
#include "rpmdb.h"
#include "rpmds.h"
#include "rpmfi.h"
#include "rpmte.h"
#include "rpmts.h"
#include "cpio.h"
#include "fprint.h"
#include "legacy.h"
#include "misc.h"
#include "debug.h"
Go to the source code of this file.
Defines | |
#define | _RPMFI_INTERNAL |
#define | _RPMTE_INTERNAL |
#define | _RPMTS_INTERNAL |
#define | ISROOT(_d) (((_d)[0] == '/' && (_d)[1] == '\0') ? "" : (_d)) |
#define | NOTIFY(_ts, _al) if ((_ts)->notify) (void) (_ts)->notify _al |
Functions | |
int | archOkay (const char *pkgArch) |
int | osOkay (const char *pkgOs) |
int | sharedCmp (const void *one, const void *two) |
int | handleInstInstalledFiles (const rpmts ts, rpmte p, rpmfi fi, sharedFileInfo shared, int sharedCount, int reportConflicts) |
int | handleRmvdInstalledFiles (const rpmts ts, rpmfi fi, sharedFileInfo shared, int sharedCount) |
int | fpsCompare (const void *one, const void *two) |
int | findFps (const struct fingerPrint_s *fiFps, const struct fingerPrint_s *otherFps, int otherFc) |
void | handleOverlappedFiles (const rpmts ts, const rpmte p, rpmfi fi) |
Update disk space needs on each partition for this package's files. | |
int | ensureOlder (rpmts ts, const rpmte p, const Header h) |
Ensure that current package is newer than installed package. | |
void | skipFiles (const rpmts ts, rpmfi fi) |
Skip any files that do not match install policies. | |
rpmfi | rpmtsiFi (const rpmtsi tsi) |
Return transaction element's file info. | |
int | rpmtsRun (rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet) |
Variables | |
int | _fps_debug = 0 |
int | _linear_fps_search = 0 |
Definition in file transaction.c.
|
Definition at line 17 of file transaction.c. |
|
Definition at line 20 of file transaction.c. |
|
Definition at line 23 of file transaction.c. |
|
Definition at line 262 of file transaction.c. Referenced by findFps(), and fpsCompare(). |
|
Definition at line 932 of file transaction.c. Referenced by rpmtsRun(). |
|
Definition at line 50 of file transaction.c. References RPM_MACHTABLE_INSTARCH, and rpmMachineScore(). |
|
Ensure that current package is newer than installed package.
Definition at line 634 of file transaction.c. References _free(), alloca(), hGetNEVR(), int_32, rpmds, rpmdsFree(), rpmdsNVRMatchesDep(), rpmdsSingle(), RPMPROB_OLDPACKAGE, rpmpsAppend(), rpmpsFree(), RPMSENSE_EQUAL, RPMSENSE_LESS, RPMTAG_REQUIRENAME, rpmte, rpmteE(), rpmteKey(), rpmteN(), rpmteNEVR(), rpmteR(), rpmteV(), rpmts, rpmtsProblems(), and stpcpy(). Referenced by rpmtsRun(). |
|
Definition at line 322 of file transaction.c. References fingerPrint_s::baseName, fprintCacheEntry_s::dirName, fingerPrint_s::entry, FP_EQUAL, fpsCompare(), ISROOT, and fingerPrint_s::subDir. Referenced by handleOverlappedFiles(). |
|
Definition at line 267 of file transaction.c. References alloca(), fingerPrint_s::baseName, fprintCacheEntry_s::dirName, fingerPrint_s::entry, ISROOT, stpcpy(), and fingerPrint_s::subDir. Referenced by findFps(). |
|
Definition at line 92 of file transaction.c. References _free(), FA_CREATE, FA_SKIP, fileAction, hGetNEVR(), rpmdbFreeIterator(), RPMDBI_PACKAGES, rpmdbNextIterator(), rpmfi, rpmfiBN(), rpmfiCompare(), rpmfiDecideFate(), rpmfiDN(), rpmfiFColor(), rpmfiFFlags(), rpmfiFree(), rpmfiFSize(), rpmfiInit(), RPMFILE_CONFIG, RPMFILE_STATE_NORMAL, rpmfiNew(), rpmfiNext(), rpmfiSetFX(), RPMPROB_FILE_CONFLICT, rpmpsAppend(), rpmpsFree(), RPMTAG_BASENAMES, rpmte, rpmteColor(), rpmteKey(), rpmteNEVR(), RPMTRANS_FLAG_ALLFILES, rpmts, rpmtsColor(), rpmtsFlags(), rpmtsInitIterator(), rpmtsProblems(), uint_32, xcalloc(), XFA_SKIPPING, and xrealloc(). Referenced by rpmtsRun(). |
|
Update disk space needs on each partition for this package's files.
Definition at line 415 of file transaction.c. References fprintCacheEntry_s::dev, domd5(), fingerPrint_s::entry, FA_ALTNAME, FA_BACKUP, FA_CREATE, FA_ERASE, FA_SKIP, FA_UNKNOWN, findFps(), htGetEntry(), int_16, int_32, rpmfi, rpmfiCompare(), rpmfiFC(), rpmfiFColor(), rpmfiFFlags(), rpmfiFMode(), rpmfiFN(), rpmfiFSize(), rpmfiFState(), rpmfiInit(), RPMFILE_CONFIG, RPMFILE_NOREPLACE, RPMFILE_STATE_NORMAL, rpmfiMD5(), rpmfiNext(), rpmfiSetFX(), RPMPROB_FILTER_REPLACENEWFILES, RPMPROB_NEW_FILE_CONFLICT, rpmpsAppend(), rpmpsFree(), rpmte, rpmteKey(), rpmteNEVR(), rpmteType(), rpmts, rpmtsColor(), rpmtsFilterFlags(), rpmtsProblems(), rpmtsUpdateDSI(), TR_ADDED, TR_REMOVED, uint_32, and XFA_SKIPPING. Referenced by rpmtsRun(). |
|
Definition at line 222 of file transaction.c. References FA_SKIP, HGE_t, rpmdbFreeIterator(), RPMDBI_PACKAGES, rpmdbNextIterator(), rpmfi, RPMFILE_STATE_NORMAL, RPMTAG_FILESTATES, rpmts, and rpmtsInitIterator(). Referenced by rpmtsRun(). |
|
Definition at line 59 of file transaction.c. References RPM_MACHTABLE_INSTOS, and rpmMachineScore(). |
|
Return transaction element's file info.
Definition at line 913 of file transaction.c. References rpmfi, rpmte, rpmtsElement(), and rpmtsi. Referenced by rpmtsRun(). |
|
|
Definition at line 68 of file transaction.c. Referenced by rpmtsRun(). |
|
Skip any files that do not match install policies.
Definition at line 687 of file transaction.c. References _, _free(), alloca(), FA_SKIPCOLOR, FA_SKIPNETSHARED, FA_SKIPNSTATE, freeSplitString(), int_16, rpmExpand(), rpmExpandNumeric(), rpmfi, rpmfiBN(), rpmfiDC(), rpmfiDN(), rpmfiDX(), rpmfiFColor(), rpmfiFFlags(), rpmfiFMode(), rpmfiInit(), rpmfiInitD(), RPMFILE_CONFIG, RPMFILE_DOC, rpmfiNext(), rpmfiNextD(), RPMMESS_DEBUG, rpmMessage, RPMTRANS_FLAG_NOCONFIGS, RPMTRANS_FLAG_NODOCS, rpmts, rpmtsColor(), rpmtsFlags(), splitString(), uint_32, whatis(), XDIR, and XFA_SKIPPING. Referenced by rpmtsRun(). |
|
Definition at line 265 of file transaction.c. |
|
Definition at line 320 of file transaction.c. |