#include "system.h"
#include <rpmcli.h>
#include "manifest.h"
#include "misc.h"
#include "debug.h"
Go to the source code of this file.
Data Structures | |
struct | rpmEIU |
Typedefs | |
typedef const char * | str_t |
Functions | |
static void | printHash (const unsigned long amount, const unsigned long total) |
void * | rpmShowProgress (const void *arg, const rpmCallbackType what, const unsigned long amount, const unsigned long total, const void *pkgKey, void *data) |
The rpm CLI generic transaction callback. | |
int | rpmInstall (const char *rootdir, const char **fileArgv, rpmtransFlags transFlags, rpmInstallInterfaceFlags interfaceFlags, rpmprobFilterFlags probFilter, rpmRelocation *relocations) |
Install/upgrade/freshen binary rpm package. | |
int | rpmErase (const char *rootdir, const char **argv, rpmtransFlags transFlags, rpmEraseInterfaceFlags interfaceFlags) |
Erase binary rpm package. | |
int | rpmInstallSource (const char *rootdir, const char *arg, const char **specFile, char **cookie) |
Install source rpm package. | |
static int | IDTintcmp (const void *a, const void *b) |
IDTX | IDTXfree (IDTX idtx) |
Destroy id index. | |
IDTX | IDTXnew (void) |
Create id index. | |
IDTX | IDTXgrow (IDTX idtx, int need) |
Insure that index has room for "need" elements. | |
IDTX | IDTXsort (IDTX idtx) |
Sort tag (instance,value) pairs. | |
IDTX | IDTXload (rpmdb db, rpmTag tag) |
Load tag (instance,value) pairs from rpm databse, and return sorted id index. | |
IDTX | IDTXglob (const char *globstr, rpmTag tag) |
Load tag (instance,value) pairs from packages, and return sorted id index. | |
int | rpmRollback (struct rpmInstallArguments_s *ia, const char **argv) |
Rollback transactions, erasing new, reinstalling old, package(s). | |
Variables | |
static int | hashesPrinted = 0 |
int | packagesTotal = 0 |
static int | progressTotal = 0 |
static int | progressCurrent = 0 |
static int | reverse = -1 |
Definition in file rpminstall.c.
typedef const char* str_t |
Definition at line 176 of file rpminstall.c.
static int IDTintcmp | ( | const void * | a, | |
const void * | b | |||
) | [static] |
Definition at line 724 of file rpminstall.c.
References IDT_s::n, IDT_s::u32, and IDT_s::val.
Referenced by IDTXsort().
Destroy id index.
idtx | id index |
Definition at line 738 of file rpminstall.c.
References _free(), IDT_s::h, headerFree(), IDTindex_s::idt, and IDTindex_s::nidt.
Referenced by rpmRollback().
Load tag (instance,value) pairs from packages, and return sorted id index.
db | glob expression | |
tag | rpm tag |
Definition at line 831 of file rpminstall.c.
References _, _free(), Fclose(), rpmEIU::fd, Ferror(), Fopen(), Fstrerror(), IDT_s::h, rpmEIU::h, headerFree(), headerGetEntry(), headerLink(), headerNVR(), IDTindex_s::idt, IDTXgrow(), IDTXsort(), IDT_s::instance, rpmEIU::isSource, IDT_s::key, IDT_s::n, IDTindex_s::nidt, IDT_s::r, RPMERR_OPEN, rpmError, rpmGlob(), rpmEIU::rpmrc, RPMRC_OK, rpmReadPackageHeader(), IDT_s::u32, IDT_s::v, IDT_s::val, and xstrdup().
Referenced by rpmRollback().
Insure that index has room for "need" elements.
idtx | id index | |
need | additional no. of elements needed |
Definition at line 762 of file rpminstall.c.
References IDTindex_s::alloced, IDTindex_s::delta, IDTindex_s::idt, IDTXnew(), IDTindex_s::nidt, IDTindex_s::size, and xrealloc().
Referenced by IDTXglob(), and IDTXload().
Load tag (instance,value) pairs from rpm databse, and return sorted id index.
db | rpm database | |
tag | rpm tag |
Definition at line 786 of file rpminstall.c.
References rpmEIU::db, IDT_s::h, rpmEIU::h, headerGetEntry(), headerLink(), headerNVR(), IDTindex_s::idt, IDTXgrow(), IDTXsort(), IDT_s::instance, IDT_s::key, IDT_s::n, IDTindex_s::nidt, IDT_s::r, RPM_INT32_TYPE, RPM_NULL_TYPE, rpmdbFreeIterator(), rpmdbGetIteratorOffset(), rpmdbInitIterator(), rpmdbNextIterator(), IDT_s::u32, IDT_s::v, and IDT_s::val.
Referenced by rpmRollback().
IDTX IDTXnew | ( | void | ) |
Create id index.
Definition at line 754 of file rpminstall.c.
References xcalloc().
Referenced by IDTXgrow().
Sort tag (instance,value) pairs.
idtx | id index |
Definition at line 779 of file rpminstall.c.
References IDTindex_s::idt, IDTintcmp(), IDTindex_s::nidt, and IDTindex_s::size.
Referenced by IDTXglob(), and IDTXload().
static void printHash | ( | const unsigned long | amount, | |
const unsigned long | total | |||
) | [static] |
Definition at line 33 of file rpminstall.c.
References hashesPrinted, progressCurrent, and progressTotal.
Referenced by rpmShowProgress().
void* rpmShowProgress | ( | const void * | arg, | |
const rpmCallbackType | what, | |||
const unsigned long | amount, | |||
const unsigned long | total, | |||
const void * | pkgKey, | |||
void * | data | |||
) |
The rpm CLI generic transaction callback.
arg | per-callback private data (e.g. an rpm header) | |
what | callback identifier | |
amount | per-callback progress info | |
total | per-callback progress info | |
pkgkey | opaque header key (e.g. file name or PyObject) | |
data | private data (e.g. rpmInstallInterfaceFlags) |
Definition at line 75 of file rpminstall.c.
References _, _free(), Fclose(), fdFree, fdLink, Fopen(), hashesPrinted, headerSprintf(), INSTALL_HASH, INSTALL_LABEL, INSTALL_PERCENT, packagesTotal, printHash(), progressCurrent, progressTotal, RPMCALLBACK_INST_CLOSE_FILE, RPMCALLBACK_INST_OPEN_FILE, RPMCALLBACK_INST_PROGRESS, RPMCALLBACK_INST_START, RPMCALLBACK_TRANS_PROGRESS, RPMCALLBACK_TRANS_START, RPMCALLBACK_TRANS_STOP, RPMCALLBACK_UNINST_PROGRESS, RPMCALLBACK_UNINST_START, RPMCALLBACK_UNINST_STOP, rpmHeaderFormats, and rpmTagTable.
Referenced by rpmInstall(), and rpmRollback().
int hashesPrinted = 0 [static] |
int packagesTotal = 0 |
Definition at line 25 of file rpminstall.c.
Referenced by rpmInstall(), rpmRollback(), and rpmShowProgress().
int progressCurrent = 0 [static] |
int progressTotal = 0 [static] |
int reverse = -1 [static] |
Definition at line 720 of file rpminstall.c.