rpm 5.3.12
|
Routine(s) to handle a "rpmts" transaction sets. More...
#include "system.h"
#include <rpmio.h>
#include <rpmiotypes.h>
#include <rpmlog.h>
#include <iosm.h>
#include <rpmurl.h>
#include <rpmpgp.h>
#include <rpmmacro.h>
#include <rpmkeyring.h>
#include <rpmhkp.h>
#include <rpmsx.h>
#include <rpmtypes.h>
#include <rpmtag.h>
#include <pkgio.h>
#include "rpmdb.h"
#include "rpmal.h"
#include "rpmds.h"
#include "rpmfi.h"
#include "rpmlock.h"
#include "rpmns.h"
#include "rpmte.h"
#include "rpmts.h"
#include <rpmcli.h>
#include "fs.h"
#include "debug.h"
Go to the source code of this file.
Defines | |
#define | _RPMTAG_INTERNAL |
#define | _RPMDB_INTERNAL |
#define | _RPMTE_INTERNAL |
#define | _RPMTS_INTERNAL |
#define | _RPMBAG_INTERNAL |
#define | ST_RDONLY 1 |
Functions | |
int | rpmtsCloseDB (rpmts ts) |
Close the database used by the transaction. | |
int | rpmtsOpenDB (rpmts ts, int dbmode) |
Open the database used by the transaction. | |
int | rpmtsRebuildDB (rpmts ts) |
Rebuild the database used by the transaction. | |
rpmmi | rpmtsInitIterator (const rpmts ts, rpmTag rpmtag, const void *keyp, size_t keylen) |
Return transaction database iterator. | |
int | rpmtsCloseSDB (rpmts ts) |
Close the database used by the transaction to solve dependencies. | |
int | rpmtsOpenSDB (rpmts ts, int dbmode) |
Open the database used by the transaction to solve dependencies. | |
static int | sugcmp (const void *a, const void *b) |
Compare suggested package resolutions (qsort/bsearch). | |
int | rpmtsSolve (rpmts ts, rpmds ds, const void *data) |
Attempt to solve a needed dependency using the solve database. | |
int | rpmtsAvailable (rpmts ts, const rpmds ds) |
Attempt to solve a needed dependency using memory resident tables. | |
int | rpmtsSetSolveCallback (rpmts ts, int(*solve)(rpmts ts, rpmds key, const void *data), const void *solveData) |
rpmps | rpmtsProblems (rpmts ts) |
Return current transaction set problems. | |
void | rpmtsClean (rpmts ts) |
Free memory needed only for dependency checks and ordering. | |
void | rpmtsEmpty (rpmts ts) |
Re-create an empty transaction set. | |
static void | rpmtsPrintStat (const char *name, struct rpmop_s *op) |
static void | rpmtsPrintStats (rpmts ts) |
static void | rpmtsFini (void *_ts) |
static rpmts | rpmtsGetPool (rpmioPool pool) |
void * | rpmtsGetKeyring (rpmts ts, int autoload) |
Get transaction keyring. | |
int | rpmtsSetKeyring (rpmts ts, void *_keyring) |
Set transaction keyring. | |
rpmVSFlags | rpmtsVSFlags (rpmts ts) |
Get verify signatures flag(s). | |
rpmVSFlags | rpmtsSetVSFlags (rpmts ts, rpmVSFlags vsflags) |
Set verify signatures flag(s). | |
rpmTSType | rpmtsType (rpmts ts) |
Return the type of a transaction. | |
void | rpmtsSetType (rpmts ts, rpmTSType type) |
Set transaction type. | |
rpmuint32_t | rpmtsARBGoal (rpmts ts) |
Return the autorollback goal. | |
void | rpmtsSetARBGoal (rpmts ts, rpmuint32_t goal) |
Set autorollback goal. | |
int | rpmtsUnorderedSuccessors (rpmts ts, int first) |
Set index of 1st element of successors. | |
const char * | rpmtsRootDir (rpmts ts) |
Get transaction rootDir, i.e. | |
void | rpmtsSetRootDir (rpmts ts, const char *rootDir) |
Set transaction rootDir, i.e. | |
const char * | rpmtsCurrDir (rpmts ts) |
Get transaction currDir, i.e. | |
void | rpmtsSetCurrDir (rpmts ts, const char *currDir) |
Set transaction currDir, i.e. | |
FD_t | rpmtsScriptFd (rpmts ts) |
void | rpmtsSetScriptFd (rpmts ts, FD_t scriptFd) |
int | rpmtsSELinuxEnabled (rpmts ts) |
Get selinuxEnabled flag, i.e. | |
int | rpmtsChrootDone (rpmts ts) |
Get chrootDone flag, i.e. | |
int | rpmtsSetChrootDone (rpmts ts, int chrootDone) |
Set chrootDone flag, i.e. | |
rpmuint32_t | rpmtsGetTid (rpmts ts) |
Get transaction id, i.e. | |
rpmuint32_t | rpmtsSetTid (rpmts ts, rpmuint32_t tid) |
Set transaction id, i.e. | |
rpmPRCO | rpmtsPRCO (rpmts ts) |
Get transaction set dependencies. | |
int | rpmtsInitDSI (const rpmts ts) |
Initialize disk space info for each and every mounted file systems. | |
void | rpmtsUpdateDSI (const rpmts ts, dev_t dev, rpmuint32_t fileSize, rpmuint32_t prevSize, rpmuint32_t fixupSize, int _action) |
Update disk space info for a file. | |
void | rpmtsCheckDSIProblems (const rpmts ts, const rpmte te) |
Check a transaction element for disk space problems. | |
void * | rpmtsNotify (rpmts ts, rpmte te, rpmCallbackType what, rpmuint64_t amount, rpmuint64_t total) |
Perform transaction progress notify callback. | |
int | rpmtsNElements (rpmts ts) |
Return number of (ordered) transaction set elements. | |
rpmte | rpmtsElement (rpmts ts, int ix) |
Return (ordered) transaction set element. | |
rpmprobFilterFlags | rpmtsFilterFlags (rpmts ts) |
Get problem ignore bit mask, i.e. | |
rpmtransFlags | rpmtsFlags (rpmts ts) |
Get transaction flags, i.e. | |
rpmtransFlags | rpmtsSetFlags (rpmts ts, rpmtransFlags transFlags) |
Set transaction flags, i.e. | |
rpmdepFlags | rpmtsDFlags (rpmts ts) |
Get dependency flags, i.e. | |
rpmdepFlags | rpmtsSetDFlags (rpmts ts, rpmdepFlags depFlags) |
Set dependency flags, i.e. | |
Spec | rpmtsSpec (rpmts ts) |
Get spec control structure from transaction set. | |
Spec | rpmtsSetSpec (rpmts ts, Spec spec) |
Set a spec control structure in transaction set. | |
rpmte | rpmtsRelocateElement (rpmts ts) |
Get current relocate transaction element. | |
rpmte | rpmtsSetRelocateElement (rpmts ts, rpmte relocateElement) |
Set current relocate transaction element. | |
tsmStage | rpmtsGoal (rpmts ts) |
Retrieve goal of transaction set. | |
tsmStage | rpmtsSetGoal (rpmts ts, tsmStage goal) |
Set goal of transaction set. | |
int | rpmtsDBMode (rpmts ts) |
Retrieve dbmode of transaction set. | |
int | rpmtsSetDBMode (rpmts ts, int dbmode) |
Set dbmode of transaction set. | |
rpmuint32_t | rpmtsColor (rpmts ts) |
Retrieve color bits of transaction set. | |
rpmuint32_t | rpmtsSetColor (rpmts ts, rpmuint32_t color) |
Set color bits of transaction set. | |
rpmuint32_t | rpmtsPrefColor (rpmts ts) |
Retrieve prefered file color. | |
int | rpmtsSetNotifyCallback (rpmts ts, rpmCallbackFunction notify, rpmCallbackData notifyData) |
Set transaction notify callback function and argument. | |
rpmts | rpmtsCreate (void) |
Create an empty transaction set. | |
Variables | |
int | _rpmts_debug = 0 |
int | _rpmts_stats = 0 |
int | _rpmts_macros = 0 |
rpmop | _hdr_loadops |
rpmop | _hdr_getops |
rpmioPool | _rpmtsPool |
Routine(s) to handle a "rpmts" transaction sets.
Definition in file rpmts.c.
#define ST_RDONLY 1 |
Referenced by rpmtsCheckDSIProblems(), and rpmtsInitDSI().
static void rpmtsFini | ( | void * | _ts | ) | [static] |
Definition at line 700 of file rpmts.c.
References _free(), _rpmts_macros, _rpmts_stats, argvFree(), argvPrint(), fdFree(), rpmalFree(), rpmdsFreePRCO(), rpmGetMacroEntries(), rpmtsCloseDB(), rpmtsCloseSDB(), rpmtsEmpty(), and rpmtsPrintStats().
Referenced by rpmtsGetPool().
Definition at line 767 of file rpmts.c.
References _rpmts_debug, _rpmtsPool, rpmioGetPool(), rpmioNewPool(), and rpmtsFini().
Referenced by rpmtsCreate().
static void rpmtsPrintStat | ( | const char * | name, |
struct rpmop_s * | op | ||
) | [static] |
Definition at line 647 of file rpmts.c.
References rpmop_s::bytes, rpmop_s::count, and rpmop_s::usecs.
Referenced by rpmtsPrintStats().
static void rpmtsPrintStats | ( | rpmts | ts | ) | [static] |
Definition at line 664 of file rpmts.c.
References _hdr_getops, _hdr_loadops, rpmswAdd(), rpmswExit(), RPMTS_OP_CHECK, RPMTS_OP_COMPRESS, RPMTS_OP_DBADD, RPMTS_OP_DBDEL, RPMTS_OP_DBGET, RPMTS_OP_DBPUT, RPMTS_OP_DBREMOVE, RPMTS_OP_DIGEST, RPMTS_OP_ERASE, RPMTS_OP_FINGERPRINT, RPMTS_OP_HDRGET, RPMTS_OP_HDRLOAD, RPMTS_OP_INSTALL, RPMTS_OP_ORDER, RPMTS_OP_READHDR, RPMTS_OP_REPACKAGE, RPMTS_OP_SCRIPTLETS, RPMTS_OP_SIGNATURE, RPMTS_OP_TOTAL, RPMTS_OP_UNCOMPRESS, rpmtsOp(), and rpmtsPrintStat().
Referenced by rpmtsFini().
Definition at line 961 of file rpmts.c.
Referenced by runScript().
Definition at line 972 of file rpmts.c.
References fdFree(), and fdLink().
Referenced by rpmts_setattro(), and rpmVerifyScript().
int rpmtsSetSolveCallback | ( | rpmts | ts, |
int(*)(rpmts ts, rpmds key, const void *data) | solve, | ||
const void * | solveData | ||
) |
Definition at line 560 of file rpmts.c.
Referenced by rpmts_Check().
static int sugcmp | ( | const void * | a, |
const void * | b | ||
) | [static] |
Compare suggested package resolutions (qsort/bsearch).
a | 1st instance address |
b | 2nd instance address |
Definition at line 336 of file rpmts.c.
Referenced by rpmtsSolve().
Definition at line 83 of file header.c.
Referenced by rpmtsPrintStats().
Definition at line 79 of file header.c.
Referenced by rpmtsPrintStats().
int _rpmts_debug = 0 |
Definition at line 86 of file rpmts.c.
Referenced by _rpmtsCheck(), _rpmtsRun(), rpmts_AddErase(), rpmts_AddInstall(), rpmts_alloc(), rpmts_Check(), rpmts_Clean(), rpmts_CloseDB(), rpmts_dealloc(), rpmts_Debug(), rpmts_free(), rpmts_HdrCheck(), rpmts_HdrFromFdno(), rpmts_IDTXglob(), rpmts_IDTXload(), rpmts_InitDB(), rpmts_iter(), rpmts_iternext(), rpmts_Match(), rpmts_new(), rpmts_Next(), rpmts_OpenDB(), rpmts_Order(), rpmts_PgpImportPubkey(), rpmts_PgpPrtPkts(), rpmts_Problems(), rpmts_RebuildDB(), rpmts_Rollback(), rpmts_Run(), rpmts_SetColor(), rpmts_SetDFlags(), rpmts_SetFlags(), rpmts_SetProbFilter(), rpmts_SetVSFlags(), rpmts_SolveCallback(), rpmts_VerifyDB(), rpmtsCallback(), rpmtsGetPool(), rpmtsOpenSDB(), and rpmtsSolve().
int _rpmts_macros = 0 |
Definition at line 92 of file rpmts.c.
Referenced by rpmtsFini().
int _rpmts_stats = 0 |
Definition at line 89 of file rpmts.c.
Referenced by main(), rpmcliInit(), rpmtsFini(), and setStats().
Definition at line 765 of file rpmts.c.
Referenced by rpmtsGetPool().