rpm 5.3.12
Data Structures | Files | Functions | Variables
RPMCLI.
Collaboration diagram for RPMCLI.:

Data Structures

struct  rpmQVKArguments_s
 Command line option information. More...
struct  rpmBuildArguments_s
 Describe build command line request. More...

Files

file  poptBT.c
 

Popt tables for build modes.


file  manifest.c
file  poptALL.c
 

Popt tables for all rpm modes.


file  poptI.c
 

Popt tables for install modes.


file  poptQV.c
 

Popt tables for query/verify modes.


file  query.c
 

Display tag values from package metadata.


file  rpmchecksig.c
 

Verify the signature of a package.


file  rpmcli.h
file  rpminstall.c
file  rpmlib.h
 

In Memoriam: Steve Taylor <staylor@redhat.com> was here, now he's not.


file  rpmrollback.c
file  verify.c
 

Verify installed payload files from package metadata.


file  poptDB.c
 

Popt tables for database modes.


Functions

static int checkSpec (rpmts ts, Header h)
 Parse spec file and build package.
static int rpmcliShowMatches (QVA_t qva, rpmts ts)
 Display query/verify information for each header in iterator.
static int rpmReSign (rpmts ts, QVA_t qva, const char **argv)
 Create/modify elements in signature header.
static int rpmcliImportPubkeys (const rpmts ts, QVA_t qva, const char **argv)
 Import public key(s).
static int rpmvfVerify (rpmvf vf, int spew)
 Verify file attributes (including file digest).

Variables

int _noDirTokens
 Should version 3 packages be produced?
struct poptOption rpmcliAllPoptTable []
 Popt option table for options shared by all modes and executables.
struct rpmQVKArguments_s rpmQVKArgs
struct rpmQVKArguments_s rpmIArgs
struct rpmQVKArguments_s rpmDBArgs

RPMQV

enum  rpmQVSources_e {
  RPMQV_PACKAGE = 0, RPMQV_PATH, RPMQV_ALL, RPMQV_RPM,
  RPMQV_GROUP = RPMTAG_GROUP, RPMQV_WHATPROVIDES, RPMQV_WHATREQUIRES, RPMQV_TRIGGEREDBY = RPMTAG_TRIGGERNAME,
  RPMQV_DBOFFSET, RPMQV_SPECFILE, RPMQV_PKGID, RPMQV_HDRID,
  RPMQV_FILEID, RPMQV_TID, RPMQV_HDLIST, RPMQV_FTSWALK,
  RPMQV_WHATNEEDS, RPMQV_SPECSRPM, RPMQV_SOURCEPKGID, RPMQV_WHATCONFLICTS = RPMTAG_CONFLICTNAME,
  RPMQV_WHATOBSOLETES = RPMTAG_OBSOLETENAME
}
 Query/Verify argument qualifiers. More...
enum  rpmVerifyAttrs_e {
  RPMVERIFY_NONE = 0, RPMVERIFY_FDIGEST = (1 << 0), RPMVERIFY_FILESIZE = (1 << 1), RPMVERIFY_LINKTO = (1 << 2),
  RPMVERIFY_USER = (1 << 3), RPMVERIFY_GROUP = (1 << 4), RPMVERIFY_MTIME = (1 << 5), RPMVERIFY_MODE = (1 << 6),
  RPMVERIFY_RDEV = (1 << 7), RPMVERIFY_CAPS = (1 << 8), RPMVERIFY_HMAC = (1 << 14), RPMVERIFY_CONTEXTS = (1 << 15),
  RPMVERIFY_READLINKFAIL = (1 << 28), RPMVERIFY_READFAIL = (1 << 29), RPMVERIFY_LSTATFAIL = (1 << 30), RPMVERIFY_LGETFILECONFAIL = (1 << 31)
}
 Bit(s) for rpmVerifyFile() attributes and result. More...
enum  rpmQueryFlags_e {
  QUERY_FOR_DEFAULT = 0, QUERY_FDIGEST = (1 << 0), QUERY_SIZE = (1 << 1), QUERY_LINKTO = (1 << 2),
  QUERY_USER = (1 << 3), QUERY_GROUP = (1 << 4), QUERY_MTIME = (1 << 5), QUERY_MODE = (1 << 6),
  QUERY_RDEV = (1 << 7), QUERY_CAPS = (1 << 8), QUERY_HMAC = (1 << 14), QUERY_CONTEXTS = (1 << 15),
  QUERY_FILES = (1 << 16), QUERY_DEPS = (1 << 17), QUERY_SCRIPT = (1 << 18), QUERY_DIGEST = (1 << 19),
  QUERY_SIGNATURE = (1 << 20), QUERY_PATCHES = (1 << 21), QUERY_HDRCHK = (1 << 22), QUERY_FOR_LIST = (1 << 23),
  QUERY_FOR_STATE = (1 << 24), QUERY_FOR_DOCS = (1 << 25), QUERY_FOR_CONFIG = (1 << 26), QUERY_FOR_DUMPFILES = (1 << 27)
}
 Bit(s) to control rpmQuery() operation, stored in qva_flags. More...
enum  rpmVerifyFlags_e {
  VERIFY_DEFAULT = 0, VERIFY_FDIGEST = (1 << 0), VERIFY_SIZE = (1 << 1), VERIFY_LINKTO = (1 << 2),
  VERIFY_USER = (1 << 3), VERIFY_GROUP = (1 << 4), VERIFY_MTIME = (1 << 5), VERIFY_MODE = (1 << 6),
  VERIFY_RDEV = (1 << 7), VERIFY_CAPS = (1 << 8), VERIFY_HMAC = (1 << 14), VERIFY_CONTEXTS = (1 << 15),
  VERIFY_FILES = (1 << 16), VERIFY_DEPS = (1 << 17), VERIFY_SCRIPT = (1 << 18), VERIFY_DIGEST = (1 << 19),
  VERIFY_SIGNATURE = (1 << 20), VERIFY_PATCHES = (1 << 21), VERIFY_HDRCHK = (1 << 22), VERIFY_FOR_LIST = (1 << 23),
  VERIFY_FOR_STATE = (1 << 24), VERIFY_FOR_DOCS = (1 << 25), VERIFY_FOR_CONFIG = (1 << 26), VERIFY_FOR_DUMPFILES = (1 << 27)
}
 Bit(s) to control rpmVerify() operation, stored in qva_flags. More...
typedef enum rpmQVSources_e rpmQVSources
 Query/Verify argument qualifiers.
typedef enum rpmVerifyAttrs_e rpmVerifyAttrs
 Bit(s) for rpmVerifyFile() attributes and result.
typedef enum rpmQueryFlags_e rpmQueryFlags
 Bit(s) to control rpmQuery() operation, stored in qva_flags.
typedef enum rpmVerifyFlags_e rpmVerifyFlags
 Bit(s) to control rpmVerify() operation, stored in qva_flags.
typedef struct rpmQVKArguments_sQVA_t
typedef int(* QVF_t )(QVA_t qva, rpmts ts, Header h)
 Function to display iterator matches.
typedef int(* QSpecF_t )(rpmts ts, QVA_t qva, const char *arg)
 Function to query spec file.
rpmQueryFlags rpmcliQueryFlags
 Bit(s) from common command line options.
struct poptOption rpmQVSourcePoptTable []
 Common query/verify mode options.
int specedit
struct poptOption rpmQueryPoptTable []
 Query mode options.
struct poptOption rpmVerifyPoptTable []
 Verify mode options.
int rpmQueryVerify (QVA_t qva, rpmts ts, const char *arg)
 Common query/verify source interface, called once for each CLI arg.
int showQueryPackage (QVA_t qva, rpmts ts, Header h)
 Display results of package query.
int rpmcliArgIter (rpmts ts, QVA_t qva, const char **argv)
 Iterate over query/verify arg list.
int rpmcliQuery (rpmts ts, QVA_t qva, const char **argv)
 Display package information.
int showVerifyPackage (QVA_t qva, rpmts ts, Header h)
 Display results of package verify.
int rpmcliVerify (rpmts ts, QVA_t qva, const char **argv)
 Verify package install.

RPMEIU

enum  rpmInstallInterfaceFlags_e {
  INSTALL_NONE = 0, INSTALL_PERCENT = (1 << 0), INSTALL_HASH = (1 << 1), INSTALL_NODEPS = (1 << 2),
  INSTALL_NOORDER = (1 << 3), INSTALL_LABEL = (1 << 4), INSTALL_UPGRADE = (1 << 5), INSTALL_FRESHEN = (1 << 6),
  INSTALL_INSTALL = (1 << 7), INSTALL_ERASE = (1 << 8), INSTALL_ALLMATCHES = (1 << 9)
}
 Bit(s) to control rpmcliInstall() and rpmErase() operation. More...
typedef enum
rpmInstallInterfaceFlags_e 
rpmInstallInterfaceFlags
 Bit(s) to control rpmcliInstall() and rpmErase() operation.
struct poptOption rpmInstallPoptTable []
int rpmcliPackagesTotal
int rpmcliHashesCurrent
int rpmcliHashesTotal
rpmuint64_t rpmcliProgressCurrent
rpmuint64_t rpmcliProgressTotal
void * rpmShowProgress (const void *arg, const rpmCallbackType what, const rpmuint64_t amount, const rpmuint64_t total, fnpyKey key, void *data)
 The rpm CLI generic transaction callback handler.
int rpmInstallSource (rpmts ts, const char *arg, const char **specFilePtr, const char **cookie)
 Install source rpm package.
int rpmcliInstallProblems (rpmts ts, const char *msg, int rc)
 Report package problems (if any).
int rpmcliInstallSuggests (rpmts ts)
 Report packages(if any) that satisfy unresolved dependencies.
int rpmcliInstallCheck (rpmts ts)
 Check package element dependencies in a transaction set, reporting problems.
int rpmcliInstallOrder (rpmts ts)
 Order package elements in a transaction set, reporting problems.
int rpmcliInstallRun (rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet)
 Install/erase package elements in a transaction set, reporting problems.
int rpmcliInstall (rpmts ts, QVA_t ia, const char **argv)
 Install/upgrade/freshen binary rpm package.
int rpmErase (rpmts ts, QVA_t ia, const char **argv)
 Erase binary rpm package.

RPMDB

struct poptOption rpmDatabasePoptTable []

RPMK

enum  rpmSignFlags_e {
  RPMSIGN_NONE = 0, RPMSIGN_CHK_SIGNATURE = 'K', RPMSIGN_NEW_SIGNATURE = 'R', RPMSIGN_ADD_SIGNATURE = 'A',
  RPMSIGN_DEL_SIGNATURE = 'D', RPMSIGN_IMPORT_PUBKEY = 'I'
}
 Bit(s) to control rpmReSign() operation. More...
typedef enum rpmSignFlags_e rpmSignFlags
 Bit(s) to control rpmReSign() operation.
struct poptOption rpmSignPoptTable []
 Signature mode options.
rpmRC rpmcliImportPubkey (const rpmts ts, const unsigned char *pkt, ssize_t pktlen)
 Import public key packet(s).
int rpmcliSign (rpmts ts, QVA_t qva, const char **argv)
 Create/Modify/Check elements from signature header.

RPMBT

typedef struct
rpmBuildArguments_s
BTA_t
struct rpmBuildArguments_s rpmBTArgs
struct poptOption rpmBuildPoptTable []

Typedef Documentation

typedef struct rpmBuildArguments_s* BTA_t

Definition at line 739 of file rpmcli.h.

typedef int(* QSpecF_t)(rpmts ts, QVA_t qva, const char *arg)

Function to query spec file.

Parameters:
tstransaction set
qvaparsed query/verify options
argquery argument
Returns:
0 on success

Definition at line 277 of file rpmcli.h.

typedef struct rpmQVKArguments_s* QVA_t

Definition at line 255 of file rpmcli.h.

typedef int(* QVF_t)(QVA_t qva, rpmts ts, Header h)

Function to display iterator matches.

Parameters:
qvaparsed query/verify options
tstransaction set
hheader to use for query/verify
Returns:
0 on success

Definition at line 265 of file rpmcli.h.

Bit(s) to control rpmcliInstall() and rpmErase() operation.

Bit(s) to control rpmQuery() operation, stored in qva_flags.

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.

Query/Verify argument qualifiers.

Todo:
Reassign to tag values.

Bit(s) to control rpmReSign() operation.

Bit(s) for rpmVerifyFile() attributes and result.

Bit(s) to control rpmVerify() operation, stored in qva_flags.

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs values?.

Enumeration Type Documentation

Bit(s) to control rpmcliInstall() and rpmErase() operation.

Enumerator:
INSTALL_NONE 
INSTALL_PERCENT 

from --percent

INSTALL_HASH 

from --hash

INSTALL_NODEPS 

from --nodeps

INSTALL_NOORDER 

from --noorder

INSTALL_LABEL 

from --verbose (notify)

INSTALL_UPGRADE 

from --upgrade

INSTALL_FRESHEN 

from --freshen

INSTALL_INSTALL 

from --install

INSTALL_ERASE 

from --erase

INSTALL_ALLMATCHES 

from --allmatches (erase)

Definition at line 406 of file rpmcli.h.

Bit(s) to control rpmQuery() operation, stored in qva_flags.

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.
Enumerator:
QUERY_FOR_DEFAULT 
QUERY_FDIGEST 

from --nofdigest

QUERY_SIZE 

from --nosize

QUERY_LINKTO 

from --nolink

QUERY_USER 

from --nouser)

QUERY_GROUP 

from --nogroup)

QUERY_MTIME 

from --nomtime)

QUERY_MODE 

from --nomode)

QUERY_RDEV 

from --nodev

QUERY_CAPS 

(unimplemented)

QUERY_HMAC 
QUERY_CONTEXTS 

verify: from --nocontexts

QUERY_FILES 

verify: from --nofiles

QUERY_DEPS 

verify: from --nodeps

QUERY_SCRIPT 

verify: from --noscripts

QUERY_DIGEST 

verify: from --nodigest

QUERY_SIGNATURE 

verify: from --nosignature

QUERY_PATCHES 

verify: from --nopatches

QUERY_HDRCHK 

verify: from --nohdrchk

QUERY_FOR_LIST 

query: from --list

QUERY_FOR_STATE 

query: from --state

QUERY_FOR_DOCS 

query: from --docfiles

QUERY_FOR_CONFIG 

query: from --configfiles

QUERY_FOR_DUMPFILES 

query: from --dump

Definition at line 169 of file rpmcli.h.

Query/Verify argument qualifiers.

Todo:
Reassign to tag values.
Enumerator:
RPMQV_PACKAGE 

... from package name db search.

RPMQV_PATH 

... from file path db search.

RPMQV_ALL 

... from each installed package.

RPMQV_RPM 

... from reading binary rpm package.

RPMQV_GROUP 
RPMQV_WHATPROVIDES 

... from provides db search.

RPMQV_WHATREQUIRES 

... from requires db search.

RPMQV_TRIGGEREDBY 
RPMQV_DBOFFSET 

... from database header instance.

RPMQV_SPECFILE 

... from spec file parse (query only).

RPMQV_PKGID 

... from package id (header+payload MD5).

RPMQV_HDRID 

... from header id (immutable header SHA1).

RPMQV_FILEID 

... from file id (file digest, usually MD5).

RPMQV_TID 

... from install transaction id (time stamp).

RPMQV_HDLIST 

... from system hdlist.

RPMQV_FTSWALK 

... from fts(3) walk.

RPMQV_WHATNEEDS 

... from requires using contained provides.

RPMQV_SPECSRPM 

... srpm from spec file parse (query only).

RPMQV_SOURCEPKGID 

... from source package id (header+payload MD5).

RPMQV_WHATCONFLICTS 
RPMQV_WHATOBSOLETES 

Definition at line 113 of file rpmcli.h.

Bit(s) to control rpmReSign() operation.

Enumerator:
RPMSIGN_NONE 
RPMSIGN_CHK_SIGNATURE 

from --checksig

RPMSIGN_NEW_SIGNATURE 

from --resign

RPMSIGN_ADD_SIGNATURE 

from --addsign

RPMSIGN_DEL_SIGNATURE 

from --delsign

RPMSIGN_IMPORT_PUBKEY 

from --import

Definition at line 594 of file rpmcli.h.

Bit(s) for rpmVerifyFile() attributes and result.

Enumerator:
RPMVERIFY_NONE 
RPMVERIFY_FDIGEST 

from verify(digest)

RPMVERIFY_FILESIZE 

from verify(size)

RPMVERIFY_LINKTO 

from verify(link)

RPMVERIFY_USER 

from verify(user)

RPMVERIFY_GROUP 

from verify(group)

RPMVERIFY_MTIME 

from verify(mtime)

RPMVERIFY_MODE 

from verify(mode)

RPMVERIFY_RDEV 

from verify(rdev)

RPMVERIFY_CAPS 

from verify(caps) (unimplemented)

RPMVERIFY_HMAC 
RPMVERIFY_CONTEXTS 

verify: from --nocontexts

RPMVERIFY_READLINKFAIL 

readlink failed

RPMVERIFY_READFAIL 

file read failed

RPMVERIFY_LSTATFAIL 

lstat failed

RPMVERIFY_LGETFILECONFAIL 

lgetfilecon failed

Definition at line 140 of file rpmcli.h.

Bit(s) to control rpmVerify() operation, stored in qva_flags.

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs values?.
Enumerator:
VERIFY_DEFAULT 
VERIFY_FDIGEST 

from --nofdigest

VERIFY_SIZE 

from --nosize

VERIFY_LINKTO 

from --nolinkto

VERIFY_USER 

from --nouser

VERIFY_GROUP 

from --nogroup

VERIFY_MTIME 

from --nomtime

VERIFY_MODE 

from --nomode

VERIFY_RDEV 

from --nodev

VERIFY_CAPS 

(unimplemented)

VERIFY_HMAC 
VERIFY_CONTEXTS 

verify: from --nocontexts

VERIFY_FILES 

verify: from --nofiles

VERIFY_DEPS 

verify: from --nodeps

VERIFY_SCRIPT 

verify: from --noscripts

VERIFY_DIGEST 

verify: from --nodigest

VERIFY_SIGNATURE 

verify: from --nosignature

VERIFY_PATCHES 

verify: from --nopatches

VERIFY_HDRCHK 

verify: from --nohdrchk

VERIFY_FOR_LIST 

query: from --list

VERIFY_FOR_STATE 

query: from --state

VERIFY_FOR_DOCS 

query: from --docfiles

VERIFY_FOR_CONFIG 

query: from --configfiles

VERIFY_FOR_DUMPFILES 

query: from --dump

Definition at line 213 of file rpmcli.h.


Function Documentation

static int checkSpec ( rpmts  ts,
Header  h 
) [static]

Parse spec file and build package.

Definition at line 33 of file build.c.

References _free(), F_OK, and rpmGetPath().

int rpmcliArgIter ( rpmts  ts,
QVA_t  qva,
const char **  argv 
)

Iterate over query/verify arg list.

Parameters:
tstransaction set
qvaparsed query/verify options
argvquery argument(s) (or NULL)
Returns:
0 on success, else no. of failures
rpmRC rpmcliImportPubkey ( const rpmts  ts,
const unsigned char *  pkt,
ssize_t  pktlen 
)
static int rpmcliImportPubkeys ( const rpmts  ts,
QVA_t  qva,
const char **  argv 
) [static]

Import public key(s).

Todo:
Implicit --update policy for gpg-pubkey headers.
Parameters:
tstransaction set
qvamode flags and parameters
argvarray of pubkey file names (NULL terminated)
Returns:
0 on success

Definition at line 858 of file rpmchecksig.c.

References _, _free(), pgpReadPkts(), rpmcliImportPubkey(), rpmExpand(), rpmlog(), RPMLOG_ERR, RPMRC_OK, and rpmtsClean().

Referenced by rpmcliSign().

int rpmcliInstall ( rpmts  ts,
QVA_t  ia,
const char **  argv 
)

Install/upgrade/freshen binary rpm package.

Todo:
Use rpmdsCompare rather than rpmVersionCompare.
Parameters:
tstransaction set
iamode flags and parameters
argvarray of package file names (NULL terminated)
Returns:
0 on success
Todo:
Generalize --freshen policies.

Definition at line 505 of file rpminstall.c.

References _, _free(), _RPMVSF_NODIGESTS, _RPMVSF_NOSIGNATURES, addMacro(), alloca(), rpmQVKArguments_s::arbtid, rpmDataType_u::argv, argvAdd(), argvFree(), _HE_s::c, D_, delMacro(), rpmQVKArguments_s::depFlags, FTS_COMFOLLOW, FTS_LOGICAL, FTS_NOSTAT, headerFree(), headerGet(), headerLink(), INSTALL_FRESHEN, INSTALL_LABEL, INSTALL_NODEPS, INSTALL_NOORDER, INSTALL_UPGRADE, rpmQVKArguments_s::installInterfaceFlags, rpmRelocation_s::newPath, rpmRelocation_s::oldPath, _HE_s::p, rpmQVKArguments_s::probFilter, rpmDataType_u::ptr, rpmQVKArguments_s::qva_flags, rpmQVKArguments_s::qva_source, rpmQVKArguments_s::relocations, RMIL_GLOBAL, rpmcliEraseElement(), rpmcliInstallCheck(), rpmcliInstallElementPath(), rpmcliInstallOrder(), rpmcliInstallRun(), rpmcliInstallSuggests(), rpmcliPackagesTotal, RPMDBI_ARGLIST, RPMDBI_FTSWALK, rpmExpandNumeric(), RPMGI_NONE, rpmgiFree(), rpmgiHdrPath(), rpmgiHeader(), rpmgiNew(), rpmgiNext(), rpmgiRc(), rpmgiReadHeader(), rpmgiSetArgs(), rpmioFtsOpts, rpmIsVerbose, rpmlog(), RPMLOG_DEBUG, RPMLOG_ERR, rpmmiCount(), rpmmiFree(), rpmmiNext(), RPMQV_FTSWALK, RPMRC_NOTFOUND, RPMRC_OK, rpmShowProgress(), RPMTRANS_FLAG_NOCONTEXTS, RPMTRANS_FLAG_REPACKAGE, rpmtsAddInstallElement(), rpmtsClean(), rpmtsEmpty(), rpmtsInitIterator(), rpmtsNElements(), rpmtsSetARBGoal(), rpmtsSetDFlags(), rpmtsSetFlags(), rpmtsSetGoal(), rpmtsSetNotifyCallback(), rpmtsSetVSFlags(), rpmVersionCompare(), RPMVSF_NEEDPAYLOAD, RPMVSF_NOHDRCHK, rpmDataType_u::str, _HE_s::tag, rpmQVKArguments_s::transFlags, TSM_INSTALL, VERIFY_DIGEST, VERIFY_HDRCHK, VERIFY_SIGNATURE, vsflags, and xstrdup().

Referenced by main().

int rpmcliInstallCheck ( rpmts  ts)

Check package element dependencies in a transaction set, reporting problems.

Parameters:
tstransaction set
Returns:
no. of (added) packages

Definition at line 314 of file rpminstall.c.

References _, rpmcliInstallProblems(), and rpmtsCheck.

Referenced by main(), rpmcliInstall(), rpmErase(), and rpmgiNext().

int rpmcliInstallOrder ( rpmts  ts)

Order package elements in a transaction set, reporting problems.

Parameters:
tstransaction set
Returns:
no. of (added) packages

Definition at line 321 of file rpminstall.c.

References _, rpmcliInstallProblems(), and rpmtsOrder.

Referenced by main(), rpmcliInstall(), rpmErase(), and rpmgiNew().

int rpmcliInstallProblems ( rpmts  ts,
const char *  msg,
int  rc 
)

Report package problems (if any).

Parameters:
tstransaction set
msgproblem context string to display
rcresult of a tranbsaction operation
Returns:
no. of (added) packages

Definition at line 282 of file rpminstall.c.

References rpmlog(), RPMLOG_ERR, rpmpsFree(), rpmpsNumProblems(), rpmpsPrint(), and rpmtsProblems().

Referenced by rpmcliInstallCheck(), rpmcliInstallOrder(), rpmcliInstallRun(), and rpmRollback().

int rpmcliInstallRun ( rpmts  ts,
rpmps  okProbs,
rpmprobFilterFlags  ignoreSet 
)

Install/erase package elements in a transaction set, reporting problems.

Parameters:
tstransaction set
okProbspreviously known problems (or NULL)
ignoreSetbits to filter problem types
Returns:
0 on success, -1 on error, >0 no, of failed elements

Definition at line 328 of file rpminstall.c.

References _, rpmcliInstallProblems(), and rpmtsRun.

Referenced by main(), rpmcliInstall(), and rpmErase().

int rpmcliInstallSuggests ( rpmts  ts)

Report packages(if any) that satisfy unresolved dependencies.

Parameters:
tstransaction set
Returns:
0 always

Definition at line 297 of file rpminstall.c.

References _, _free(), rpmlog(), and RPMLOG_NOTICE.

Referenced by rpmcliInstall(), and rpmgiNext().

int rpmcliQuery ( rpmts  ts,
QVA_t  qva,
const char **  argv 
)

Display package information.

Todo:
hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
Parameters:
tstransaction set
qvaparsed query/verify options
argvquery argument(s) (or NULL)
Returns:
0 on success, else no. of failures

Definition at line 871 of file query.c.

References _free(), _QUERY_FOR_BITS, _RPMVSF_NODIGESTS, _RPMVSF_NOSIGNATURES, rpmQVKArguments_s::depFlags, rpmQVKArguments_s::qva_flags, rpmQVKArguments_s::qva_queryFormat, rpmQVKArguments_s::qva_showPackage, rpmcliArgIter(), rpmExpand(), rpmExpandNumeric(), rpmtsSetDFlags(), rpmtsSetFlags(), rpmtsSetVSFlags(), RPMVSF_NOHDRCHK, showQueryPackage(), rpmQVKArguments_s::transFlags, VERIFY_DIGEST, VERIFY_HDRCHK, VERIFY_SIGNATURE, vsflags, and xstrdup().

Referenced by main().

static int rpmcliShowMatches ( QVA_t  qva,
rpmts  ts 
) [static]

Display query/verify information for each header in iterator.

This routine uses:

  • qva->qva_mi rpm database iterator
  • qva->qva_showPackage query/verify display routine
Parameters:
qvaparsed query/verify options
tstransaction set
Returns:
result of last non-zero showPackage() return

Definition at line 428 of file query.c.

References rpmQVKArguments_s::qva_mi, rpmQVKArguments_s::qva_showFAIL, rpmQVKArguments_s::qva_showOK, rpmQVKArguments_s::qva_showPackage, rpmQVKArguments_s::qva_source, rpmmiFree(), rpmmiNext(), and RPMQV_DBOFFSET.

Referenced by rpmQueryVerify().

int rpmcliSign ( rpmts  ts,
QVA_t  qva,
const char **  argv 
)
int rpmcliVerify ( rpmts  ts,
QVA_t  qva,
const char **  argv 
)

Verify package install.

Todo:
hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
Parameters:
tstransaction set
qvaparsed query/verify options
argvverify argument(s) (or NULL)
Returns:
0 on success, else no. of failures

Definition at line 584 of file verify.c.

References _RPMVSF_NODIGESTS, _RPMVSF_NOSIGNATURES, rpmQVKArguments_s::depFlags, rpmQVKArguments_s::qva_flags, rpmQVKArguments_s::qva_showPackage, rpmcliArgIter(), rpmExpandNumeric(), rpmtsEmpty(), rpmtsSetDFlags(), rpmtsSetFlags(), rpmtsSetVSFlags(), RPMVSF_NEEDPAYLOAD, RPMVSF_NOHDRCHK, showVerifyPackage(), tagName(), rpmQVKArguments_s::transFlags, VERIFY_DIGEST, VERIFY_HDRCHK, VERIFY_SIGNATURE, and vsflags.

Referenced by main().

int rpmErase ( rpmts  ts,
QVA_t  ia,
const char **  argv 
)
int rpmInstallSource ( rpmts  ts,
const char *  arg,
const char **  specFilePtr,
const char **  cookie 
)

Install source rpm package.

Parameters:
tstransaction set
argsource rpm file name
Return values:
*specFilePtr(installed) spec file name
*cookie
Returns:
0 on success

Definition at line 833 of file rpminstall.c.

References _, Fclose(), Ferror(), Fopen(), Fstrerror(), rpmInstallSourcePackage(), rpmIsVerbose, rpmlog(), RPMLOG_ERR, RPMRC_FAIL, RPMRC_OK, rpmtsSetVSFlags(), rpmtsVSFlags(), and RPMVSF_NEEDPAYLOAD.

Referenced by main().

int rpmQueryVerify ( QVA_t  qva,
rpmts  ts,
const char *  arg 
)
static int rpmReSign ( rpmts  ts,
QVA_t  qva,
const char **  argv 
) [static]
void* rpmShowProgress ( const void *  arg,
const rpmCallbackType  what,
const rpmuint64_t  amount,
const rpmuint64_t  total,
fnpyKey  key,
void *  data 
)

The rpm CLI generic transaction callback handler.

Todo:
Remove headerSprintf() from the progress callback.
Warning:
This function's args have changed, so the function cannot be used portably
Deprecated:
Transaction callback arguments need to change, so don't rely on this routine in the rpmcli API.
Parameters:
argper-callback private data (e.g. an rpm header)
whatcallback identifier
amountper-callback progress info
totalper-callback progress info
keyopaque header key (e.g. file name or PyObject)
dataprivate data (e.g. rpmInstallInterfaceFlags)
Returns:
per-callback data (e.g. an opened FD_t)

Definition at line 104 of file rpminstall.c.

References _, _free(), Fadvise(), Fclose(), fdFree(), fdLink(), Ferror(), Fopen(), Fstrerror(), headerSprintf(), INSTALL_HASH, INSTALL_LABEL, INSTALL_PERCENT, printHash(), RPMCALLBACK_CPIO_ERROR, RPMCALLBACK_INST_CLOSE_FILE, RPMCALLBACK_INST_OPEN_FILE, RPMCALLBACK_INST_PROGRESS, RPMCALLBACK_INST_START, RPMCALLBACK_REPACKAGE_PROGRESS, RPMCALLBACK_REPACKAGE_START, RPMCALLBACK_REPACKAGE_STOP, RPMCALLBACK_SCRIPT_ERROR, RPMCALLBACK_TRANS_PROGRESS, RPMCALLBACK_TRANS_START, RPMCALLBACK_TRANS_STOP, RPMCALLBACK_UNINST_PROGRESS, RPMCALLBACK_UNINST_START, RPMCALLBACK_UNINST_STOP, RPMCALLBACK_UNKNOWN, RPMCALLBACK_UNPACK_ERROR, rpmcliHashesCurrent, rpmcliPackagesTotal, rpmcliProgressCurrent, rpmcliProgressTotal, rpmExpand(), rpmHeaderFormats, rpmlog(), RPMLOG_ERR, URL_IS_HTTP, URL_IS_HTTPS, and urlPath().

Referenced by rpmcliInstall(), rpmErase(), and rpmRollback().

static int rpmvfVerify ( rpmvf  vf,
int  spew 
) [static]
int showQueryPackage ( QVA_t  qva,
rpmts  ts,
Header  h 
)
int showVerifyPackage ( QVA_t  qva,
rpmts  ts,
Header  h 
)

Variable Documentation

Should version 3 packages be produced?

Definition at line 29 of file poptBT.c.

Referenced by buildArgCallback(), main(), prepFetch(), and prepFetchVerbose().

struct poptOption rpmBuildPoptTable[]

Definition at line 119 of file poptBT.c.

struct poptOption rpmcliAllPoptTable[]

Popt option table for options shared by all modes and executables.

Definition at line 381 of file poptALL.c.

Definition at line 43 of file rpminstall.c.

Referenced by printHash(), and rpmShowProgress().

Definition at line 45 of file rpminstall.c.

Referenced by printHash().

Definition at line 41 of file rpminstall.c.

Referenced by rpmcliInstall(), rpmRollback(), rpmShowProgress(), and rpmtsAddInstallElement().

Definition at line 47 of file rpminstall.c.

Referenced by printHash(), and rpmShowProgress().

Definition at line 49 of file rpminstall.c.

Referenced by printHash(), and rpmShowProgress().

Bit(s) from common command line options.

Definition at line 151 of file poptALL.c.

Referenced by main(), and rpmcliAllArgCallback().

struct poptOption rpmDatabasePoptTable[]

Definition at line 31 of file poptDB.c.

Definition at line 27 of file poptDB.c.

Referenced by main().

Definition at line 23 of file poptI.c.

Referenced by installArgCallback(), and main().

struct poptOption rpmInstallPoptTable[]

Definition at line 200 of file poptI.c.

struct poptOption rpmQueryPoptTable[]

Query mode options.

Definition at line 323 of file poptQV.c.

Definition at line 19 of file poptQV.c.

Referenced by main(), queryArgCallback(), and rpmQVSourceArgCallback().

struct poptOption rpmQVSourcePoptTable[]

Common query/verify mode options.

Definition at line 129 of file poptQV.c.

struct poptOption rpmSignPoptTable[]

Signature mode options.

Definition at line 487 of file poptQV.c.

struct poptOption rpmVerifyPoptTable[]

Verify mode options.

Definition at line 380 of file poptQV.c.

int specedit

Definition at line 22 of file poptQV.c.