Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

RPMCLI.


Files

file  manifest.c
file  poptI.c
 Popt tables for install modes.

file  poptK.c
 Popt tables for signature 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
file  verify.c
 Verify installed payload files from package metadata.

file  poptDB.c
 Popt tables for database modes.


Data Structures

struct  rpmBuildArguments_s
struct  rpmQVArguments_s
struct  rpmInstallArguments_s
struct  rpmDatabaseArguments_s
struct  rpmSignArguments_s

RPMBT

typedef rpmBuildArguments_sBTA_t
rpmBuildArguments_s rpmBTArgs
poptOption rpmBuildPoptTable []

RPMQV

typedef enum rpmQueryFlags_e rpmQueryFlags
typedef enum rpmVerifyFlags_e rpmVerifyFlags
typedef int(* QVF_t )(QVA_t qva, rpmdb db, Header h)
enum  rpmQueryFlags_e {
  QUERY_FOR_DEFAULT = 0, QUERY_MD5 = (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_FILES = (1 << 16), QUERY_DEPS = (1 << 17), QUERY_SCRIPT = (1 << 18),
  QUERY_DIGEST = (1 << 19), 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)
}
enum  rpmVerifyFlags_e {
  VERIFY_DEFAULT = 0, VERIFY_MD5 = (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_FILES = (1 << 16), VERIFY_DEPS = (1 << 17), VERIFY_SCRIPT = (1 << 18),
  VERIFY_DIGEST = (1 << 19), 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)
}
int showMatches (QVA_t qva, rpmdbMatchIterator mi, QVF_t showPackage)
void rpmDisplayQueryTags (FILE *fp)
int rpmQueryVerify (QVA_t qva, rpmQVSources source, const char *arg, rpmdb db, QVF_t showPackage)
int showQueryPackage (QVA_t qva, rpmdb db, Header h)
int rpmQuery (QVA_t qva, rpmQVSources source, const char *arg)
int showVerifyPackage (QVA_t qva, rpmdb db, Header h)
int rpmVerify (QVA_t qva, rpmQVSources source, const char *arg)
rpmQVArguments_s rpmQVArgs
poptOption rpmQVSourcePoptTable []
 Common query/verify mode options.

int specedit
poptOption rpmQueryPoptTable []
 Query mode options.

poptOption rpmVerifyPoptTable []
 Verify mode options.


RPMK

typedef enum rpmCheckSigFlags_e rpmCheckSigFlags
typedef enum rpmResignFlags_e rpmResignFlags
enum  rpmCheckSigFlags_e { CHECKSIG_NONE = 0, CHECKSIG_PGP = (1 << 0), CHECKSIG_MD5 = (1 << 1), CHECKSIG_GPG = (1 << 2) }
enum  rpmResignFlags_e { RESIGN_NONE = 0, RESIGN_CHK_SIGNATURE = 1, RESIGN_NEW_SIGNATURE, RESIGN_ADD_SIGNATURE }
int rpmCheckSig (rpmCheckSigFlags flags, const char **argv)
int rpmReSign (rpmResignFlags add, char *passPhrase, const char **argv)
rpmSignArguments_s rpmKArgs
poptOption rpmSignPoptTable []

RPMQV

typedef rpmQVArguments_sQVA_t
typedef enum rpmQVSources_e rpmQVSources
typedef enum rpmVerifyAttrs_e rpmVerifyAttrs
enum  rpmQVSources_e {
  RPMQV_PACKAGE = 0, RPMQV_PATH, RPMQV_ALL, RPMQV_RPM,
  RPMQV_GROUP, RPMQV_WHATPROVIDES, RPMQV_WHATREQUIRES, RPMQV_TRIGGEREDBY,
  RPMQV_DBOFFSET, RPMQV_SPECFILE, RPMQV_PKGID, RPMQV_HDRID,
  RPMQV_FILEID, RPMQV_TID
}
enum  rpmVerifyAttrs_e {
  RPMVERIFY_NONE = 0, RPMVERIFY_MD5 = (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_READLINKFAIL = (1 << 28), RPMVERIFY_READFAIL = (1 << 29), RPMVERIFY_LSTATFAIL = (1 << 30)
}
int rpmVerifyFile (const char *root, Header h, int filenum, rpmVerifyAttrs *result, rpmVerifyAttrs omitMask)

RPMEIU

typedef enum rpmInstallInterfaceFlags_e rpmInstallInterfaceFlags
typedef enum rpmEraseInterfaceFlags_e rpmEraseInterfaceFlags
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)
}
enum  rpmEraseInterfaceFlags_e { UNINSTALL_NONE = 0, UNINSTALL_NODEPS = (1 << 0), UNINSTALL_ALLMATCHES = (1 << 1) }

RPMEIU

int rpmInstall (const char *rootdir, const char **fileArgv, rpmtransFlags transFlags, rpmInstallInterfaceFlags interfaceFlags, rpmprobFilterFlags probFilter, rpmRelocation *relocations)
int rpmInstallSource (const char *rootdir, const char *arg, const char **specFile, char **cookie)
int rpmErase (const char *rootdir, const char **argv, rpmtransFlags transFlags, rpmEraseInterfaceFlags interfaceFlags)
int rpmRollback (struct rpmInstallArguments_s *ia, const char **argv)
rpmInstallArguments_s rpmIArgs
poptOption rpmInstallPoptTable []

RPMTS

void rpmShowRpmlibProvides (FILE *fp)

RPMDB

rpmDatabaseArguments_s rpmDBArgs
poptOption rpmDatabasePoptTable []

Functions

int checkSpec (Header h)

Variables

int _noDirTokens
int _noDirTokens
int _noDirTokens
int _noDirTokens = 0
int _noDirTokens
rpmBuildArguments_s rpmBTArgs
poptOption rpmBuildPoptTable []
rpmQVArguments_s rpmQVArgs
poptOption rpmQVSourcePoptTable []
 Common query/verify mode options.

int specedit
int specedit = 0
poptOption rpmQueryPoptTable []
 Query mode options.

poptOption rpmVerifyPoptTable []
 Verify mode options.

rpmInstallArguments_s rpmIArgs
poptOption rpmInstallPoptTable []
rpmSignArguments_s rpmKArgs
poptOption rpmSignPoptTable []
int _noDirTokens
int _noDirTokens

Typedef Documentation

typedef struct rpmBuildArguments_s* BTA_t
 

Definition at line 52 of file rpmcli.h.

Referenced by build(), buildArgCallback(), buildForTarget(), and main().

typedef struct rpmQVArguments_s* QVA_t
 

Definition at line 1637 of file rpmlib.h.

Referenced by main(), queryArgCallback(), rpmQuery(), rpmQueryVerify(), rpmQVSourceArgCallback(), rpmVerify(), showMatches(), showQueryPackage(), showVerifyPackage(), and verifyHeader().

typedef int(* QVF_t)(QVA_t qva, rpmdb db, Header h)
 

Parameters:
qva parsed query/verify options
db rpm database
h header to use for query/verify

Definition at line 141 of file rpmcli.h.

Referenced by rpmQueryVerify(), and showMatches().

typedef enum rpmCheckSigFlags_e rpmCheckSigFlags
 

Bit(s) to control rpmCheckSig() operation.

Referenced by rpmCheckSig().

typedef enum rpmEraseInterfaceFlags_e rpmEraseInterfaceFlags
 

Bit(s) to control rpmErase() operation.

Referenced by rpmErase().

typedef enum rpmInstallInterfaceFlags_e rpmInstallInterfaceFlags
 

Bit(s) to control rpmInstall() operation.

Todo:
Move to rpmcli.h

Referenced by rpmInstall().

typedef enum rpmQueryFlags_e rpmQueryFlags
 

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

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.

Referenced by main(), and showQueryPackage().

typedef enum rpmQVSources_e rpmQVSources
 

The command line argument will be used to retrieve header(s) ...

Todo:
Move to rpmcli.h

Referenced by rpmQuery(), rpmQueryVerify(), and rpmVerify().

typedef enum rpmResignFlags_e rpmResignFlags
 

Bit(s) to control rpmReSign() operation.

Referenced by rpmReSign().

typedef enum rpmVerifyAttrs_e rpmVerifyAttrs
 

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

Todo:
Move to rpmcli.h.

Referenced by hdrVerifyFile(), rpmVerifyFile(), and verifyHeader().

typedef enum rpmVerifyFlags_e rpmVerifyFlags
 

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

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

Referenced by main().


Enumeration Type Documentation

enum rpmCheckSigFlags_e
 

Bit(s) to control rpmCheckSig() operation.

Enumeration values:
CHECKSIG_NONE  Don't check any signatures.
CHECKSIG_PGP  if not --nopgp
CHECKSIG_MD5  if not --nomd5
CHECKSIG_GPG  if not --nogpg

Definition at line 506 of file rpmcli.h.

enum rpmEraseInterfaceFlags_e
 

Bit(s) to control rpmErase() operation.

Enumeration values:
UNINSTALL_NONE 
UNINSTALL_NODEPS  from --nodeps
UNINSTALL_ALLMATCHES  from --allmatches

Definition at line 1739 of file rpmlib.h.

enum rpmInstallInterfaceFlags_e
 

Bit(s) to control rpmInstall() operation.

Todo:
Move to rpmcli.h
Enumeration values:
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

Definition at line 1723 of file rpmlib.h.

enum rpmQueryFlags_e
 

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

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.
Enumeration values:
QUERY_FOR_DEFAULT 
QUERY_MD5  from --nomd5
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_FILES  verify: from --nofiles
QUERY_DEPS  verify: from --nodeps
QUERY_SCRIPT  verify: from --noscripts
QUERY_DIGEST  verify: from --nodigest
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 73 of file rpmcli.h.

enum rpmQVSources_e
 

The command line argument will be used to retrieve header(s) ...

Todo:
Move to rpmcli.h
Enumeration values:
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  ... from group db search.
RPMQV_WHATPROVIDES  ... from provides db search.
RPMQV_WHATREQUIRES  ... from requires db search.
RPMQV_TRIGGEREDBY  ... from trigger db search.
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 MD5).
RPMQV_TID  ... from install transaction id (time stamp).

Definition at line 1643 of file rpmlib.h.

enum rpmResignFlags_e
 

Bit(s) to control rpmReSign() operation.

Enumeration values:
RESIGN_NONE 
RESIGN_CHK_SIGNATURE  from --checksig
RESIGN_NEW_SIGNATURE  from --resign
RESIGN_ADD_SIGNATURE  from --addsign

Definition at line 529 of file rpmcli.h.

enum rpmVerifyAttrs_e
 

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

Todo:
Move to rpmcli.h.
Enumeration values:
RPMVERIFY_NONE 
RPMVERIFY_MD5  from verify(md5)
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_READLINKFAIL 
RPMVERIFY_READFAIL 
RPMVERIFY_LSTATFAIL 

Definition at line 1664 of file rpmlib.h.

enum rpmVerifyFlags_e
 

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

Todo:
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs values?.
Enumeration values:
VERIFY_DEFAULT 
VERIFY_MD5  from --nomd5
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_FILES  verify: from --nofiles
VERIFY_DEPS  verify: from --nodeps
VERIFY_SCRIPT  verify: from --noscripts
VERIFY_DIGEST  verify: from --nodigest
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 102 of file rpmcli.h.


Function Documentation

int checkSpec Header  h  )  [static]
 

Definition at line 19 of file build.c.

References _, _free(), EXIT_FAILURE, Header, headerIsEntry(), printDepProblems(), rpmdbClose(), rpmdbOpen(), rpmdepCheck(), rpmDependencyConflict, rpmdepFreeConflicts(), RPMERR_OPEN, rpmError, rpmGetPath(), RPMMESS_ERROR, rpmMessage, RPMTAG_REQUIREFLAGS, rpmTransactionSet, rpmtransAddPackage(), rpmtransCreateSet(), and rpmtransFree().

Referenced by buildForTarget().

int rpmCheckSig rpmCheckSigFlags  flags,
const char **  argv
 

Check elements in signature header.

Parameters:
flags bit(s) to enable signature checks
argv array of package file names (NULL terminated)
Returns:
0 on success

Definition at line 250 of file rpmchecksig.c.

References _, _free(), CHECKSIG_GPG, CHECKSIG_MD5, CHECKSIG_PGP, copyFile(), FD_t, Header, headerFreeData(), headerFreeIterator(), headerInitIterator(), HeaderIterator, headerNextIterator(), int_32, manageFile(), readLead(), rpmCheckSigFlags, RPMERR_BADSIGTYPE, RPMERR_READLEAD, RPMERR_SIGGEN, RPMERR_SIGVFY, rpmError, rpmIsVerbose, rpmRC, RPMRC_BADSIZE, RPMRC_OK, rpmReadSignature(), RPMSIG_NOKEY, RPMSIG_NOTTRUSTED, RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PGP, RPMSIGTAG_PGP5, RPMSIGTAG_SIZE, and rpmVerifySignature().

Referenced by checkSig(), and main().

void rpmDisplayQueryTags FILE *  fp  ) 
 

Display list of tags that can be used in --queryformat.

Parameters:
fp file handle to use for display

Definition at line 507 of file query.c.

References HEADER_EXT_MORE, HEADER_EXT_TAG, rpmHeaderFormats, rpmTagTable, and rpmTagTableSize.

Referenced by main().

int rpmErase const char *  rootdir,
const char **  argv,
rpmtransFlags  transFlags,
rpmEraseInterfaceFlags  interfaceFlags
 

Erase binary rpm package.

Parameters:
rootdir path to top of install tree
argv array of package file names (NULL terminated)
transFlags bits to control rpmRunTransactions()
interfaceFlags bits to control rpmInstall()
Returns:
0 on success

Definition at line 593 of file rpminstall.c.

References _, _free(), Header, printDepProblems(), rpmdbClose(), rpmdbFreeIterator(), rpmdbGetIteratorCount(), rpmdbGetIteratorOffset(), RPMDBI_LABEL, rpmdbInitIterator(), rpmdbNextIterator(), rpmdbOpen(), rpmdepCheck(), rpmDependencyConflict, rpmdepFreeConflicts(), rpmEraseInterfaceFlags, rpmGetPath(), RPMMESS_ERROR, rpmMessage, rpmProblemSet, rpmRunTransactions(), RPMTRANS_FLAG_REVERSE, RPMTRANS_FLAG_TEST, rpmTransactionSet, rpmtransCreateSet(), rpmtransFlags, rpmtransFree(), rpmtransRemovePackage(), UNINSTALL_ALLMATCHES, and UNINSTALL_NODEPS.

Referenced by main().

int rpmInstall const char *  rootdir,
const char **  fileArgv,
rpmtransFlags  transFlags,
rpmInstallInterfaceFlags  interfaceFlags,
rpmprobFilterFlags  probFilter,
rpmRelocation relocations
 

Todo:
Generalize --freshen policies.

Definition at line 201 of file rpminstall.c.

References _, _free(), alloca(), Fclose(), Ferror(), Fopen(), Fstrerror(), ftpStrerror(), Header, headerFree(), headerFreeData(), headerGetEntry(), headerNVR(), INSTALL_FRESHEN, INSTALL_LABEL, INSTALL_NODEPS, INSTALL_NOORDER, INSTALL_UPGRADE, packagesTotal, printDepProblems(), rpmdbClose(), rpmdbFreeIterator(), rpmdbGetIteratorCount(), rpmdbInitIterator(), rpmdbNextIterator(), rpmdbOpen(), rpmdepCheck(), rpmDependencyConflict, rpmdepFreeConflicts(), rpmdepOrder(), RPMERR_MANIFEST, RPMERR_OPEN, rpmError, rpmGenPath(), rpmGetPath(), rpmGlob(), rpmInstallInterfaceFlags, rpmInstallSourcePackage(), rpmIsVerbose, RPMMESS_DEBUG, RPMMESS_ERROR, rpmMessage, rpmprobFilterFlags, rpmProblemSet, rpmProblemSetFree(), rpmProblemSetPrint(), RPMRC_BADMAGIC, RPMRC_BADSIZE, RPMRC_FAIL, RPMRC_OK, RPMRC_SHORTREAD, rpmReadPackageHeader(), rpmReadPackageManifest(), rpmRelocation, rpmRunTransactions(), rpmShowProgress(), RPMTAG_NAME, RPMTAG_PREFIXES, RPMTRANS_FLAG_TEST, rpmtransAddPackage(), rpmtransCreateSet(), rpmtransFlags, rpmtransFree(), rpmVersionCompare(), Unlink(), URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, urlGetFile(), urlIsURL(), urlPath(), xrealloc(), and xstrdup().

Referenced by main().

int rpmInstallSource const char *  rootdir,
const char *  arg,
const char **  specFile,
char **  cookie
 

Install source rpm package.

Parameters:
rootdir path to top of install tree
arg source rpm file name
Return values:
specFile address of (installed) spec file name
cookie 
Returns:
0 on success

Definition at line 681 of file rpminstall.c.

References _, _free(), Fclose(), FD_t, Ferror(), Fopen(), Fstrerror(), rpmInstallSourcePackage(), rpmIsVerbose, RPMMESS_ERROR, rpmMessage, rpmRC, and RPMRC_OK.

Referenced by main().

int rpmQuery QVA_t  qva,
rpmQVSources  source,
const char *  arg
 

Display package information.

Todo:
hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
Parameters:
qva parsed query/verify options
source type of source to query
arg name of source to query
Returns:
rpmQueryVerify() result, or 1 on rpmdbOpen() failure

Definition at line 953 of file query.c.

References rpmQVArguments_s::qva_prefix, QVA_t, rpmdb, rpmdbClose(), rpmdbOpen(), rpmQueryVerify(), RPMQV_RPM, RPMQV_SPECFILE, rpmQVSources, and showQueryPackage().

Referenced by main().

int rpmQueryVerify QVA_t  qva,
rpmQVSources  source,
const char *  arg,
rpmdb  db,
QVF_t  showPackage
 

Common query/verify source interface, called once for each CLI arg.

Parameters:
qva parsed query/verify options
source type of source to query/verify
arg name of source to query/verify
db rpm database
showPackage query/verify specific display routine
Returns:
showPackage() result, 1 if rpmdbInitIterator() is NULL

Definition at line 580 of file query.c.

References _, _free(), errno, F_OK, Fclose(), FD_t, Ferror(), Fopen(), freeSpecVec, Fstrerror(), PackageStruct::header, Header, headerFree(), PackageStruct::next, nibble(), Package, SpecStruct::packages, parseSpecVec, PATH_MAX, printNewSpecfile(), QVA_t, QVF_t, realpath(), rpmCleanPath(), rpmdb, rpmdbFreeIterator(), RPMDBI_LABEL, RPMDBI_PACKAGES, rpmdbInitIterator(), rpmdbSetIteratorRE(), RPMERR_MANIFEST, RPMERR_OPEN, RPMERR_QUERY, RPMERR_QUERYINFO, rpmError, rpmGlob(), RPMMESS_DEBUG, rpmMessage, RPMMIRE_DEFAULT, RPMQV_ALL, RPMQV_DBOFFSET, RPMQV_FILEID, RPMQV_GROUP, RPMQV_HDRID, RPMQV_PACKAGE, RPMQV_PATH, RPMQV_PKGID, RPMQV_RPM, RPMQV_SPECFILE, RPMQV_TID, RPMQV_TRIGGEREDBY, RPMQV_WHATPROVIDES, RPMQV_WHATREQUIRES, rpmQVSources, rpmRC, RPMRC_BADMAGIC, RPMRC_OK, rpmReadPackageHeader(), rpmReadPackageManifest(), RPMTAG_BASENAMES, RPMTAG_FILEMD5S, RPMTAG_GROUP, RPMTAG_INSTALLTID, RPMTAG_NAME, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, RPMTAG_SHA1HEADER, RPMTAG_SIGMD5, RPMTAG_TRIGGERNAME, showMatches(), showQueryPackage(), Spec, specedit, strerror(), and xstrdup().

Referenced by rpmQuery(), and rpmVerify().

int rpmReSign rpmResignFlags  add,
char *  passPhrase,
const char **  argv
 

Create/modify elements in signature header.

Parameters:
add type of signature operation
passPhrase 
argv array of package file names (NULL terminated)
Returns:
0 on success

Definition at line 105 of file rpmchecksig.c.

References _, _free(), copyFile(), EXIT_FAILURE, FD_t, Fstrerror(), Header, headerCopyLoad(), headerFree(), headerGetEntry(), headerLink(), headerRemoveEntry(), int_32, manageFile(), readLead(), RESIGN_ADD_SIGNATURE, rpmAddSignature(), RPMERR_BADSIGTYPE, RPMERR_READLEAD, RPMERR_SIGGEN, RPMERR_WRITELEAD, rpmError, rpmFreeSignature(), RPMLOOKUPSIG_QUERY, rpmLookupSignatureType(), rpmRC, RPMRC_BADSIZE, RPMRC_OK, rpmReadSignature(), rpmResignFlags, RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PGP, RPMSIGTAG_PGP5, RPMSIGTAG_SIZE, RPMSIGTYPE_HEADERSIG, RPMTAG_HEADERSIGNATURES, rpmWriteSignature(), and writeLead().

Referenced by main().

int rpmRollback struct rpmInstallArguments_s ia,
const char **  argv
 

Rollback transactions, erasing new, reinstalling old, package(s).

Returns:
0 on success

Definition at line 902 of file rpminstall.c.

References _, _free(), IDT_s::h, headerFree(), IDT, IDTindex_s::idt, IDTX, IDTXfree(), IDTXglob(), IDTXload(), INSTALL_ERASE, INSTALL_FRESHEN, INSTALL_INSTALL, INSTALL_UPGRADE, rpmInstallArguments_s::installInterfaceFlags, IDT_s::instance, IDT_s::key, IDT_s::n, IDTindex_s::nidt, packagesTotal, printDepProblems(), rpmInstallArguments_s::probFilter, IDT_s::r, rpmInstallArguments_s::rbtid, rpmInstallArguments_s::relocations, rpmInstallArguments_s::rootdir, rpmdbClose(), rpmdbOpen(), rpmdepCheck(), rpmDependencyConflict, rpmdepFreeConflicts(), rpmdepOrder(), rpmExpand(), rpmIsDebug, RPMMESS_DEBUG, RPMMESS_ERROR, rpmMessage, RPMPROB_FILTER_OLDPACKAGE, rpmProblemSet, rpmProblemSetFree(), rpmProblemSetPrint(), rpmRunTransactions(), rpmShowProgress(), RPMTAG_INSTALLTID, RPMTAG_REMOVETID, rpmTransactionSet, rpmtransAddPackage(), rpmtransCreateSet(), rpmtransFree(), rpmtransRemovePackage(), rpmInstallArguments_s::transFlags, IDT_s::v, and IDT_s::val.

Referenced by main().

void rpmShowRpmlibProvides FILE *  fp  ) 
 

Display current rpmlib feature provides.

Parameters:
fp output file handle

Definition at line 43 of file rpmlibprov.c.

References rpmlibProvides_s::featureName, printDepFlags(), and rpmlibProvides.

Referenced by rpmShowRC().

int rpmVerify QVA_t  qva,
rpmQVSources  source,
const char *  arg
 

Verify package install.

Parameters:
qva parsed query/verify options
source type of source to verify
arg name of source to verify
Returns:
rpmQueryVerify() result, or 1 on rpmdbOpen() failure

Definition at line 554 of file verify.c.

References rpmQVArguments_s::qva_flags, rpmQVArguments_s::qva_prefix, QVA_t, rpmdb, rpmdbClose(), rpmdbOpen(), rpmQueryVerify(), RPMQV_RPM, rpmQVSources, showVerifyPackage(), and VERIFY_DEPS.

Referenced by main().

int rpmVerifyFile const char *  root,
Header  h,
int  filenum,
rpmVerifyAttrs result,
rpmVerifyAttrs  omitMask
 

Verify file attributes (including MD5 sum).

Todo:
gnorpm and python bindings prevent this from being static.
Parameters:
root path to top of install tree
h header
filenum index of file in header file info arrays
Return values:
result address of bit(s) returned to indicate failure
Parameters:
omitMask bit(s) to disable verify checks
Returns:
0 on success (or not installed), 1 on error

Definition at line 22 of file verify.c.

References _, alloca(), domd5(), gnameToGid(), Header, HFD_t, HGE_t, int_32, Lstat(), Readlink(), RPMERR_INTERNAL, rpmError, RPMFILE_GHOST, RPMFILE_NONE, RPMFILE_STATE_NETSHARED, RPMFILE_STATE_NORMAL, RPMFILE_STATE_NOTINSTALLED, RPMFILE_STATE_REPLACED, rpmfileAttrs, rpmfileState, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_FILEFLAGS, RPMTAG_FILEGIDS, RPMTAG_FILEGROUPNAME, RPMTAG_FILELINKTOS, RPMTAG_FILEMD5S, RPMTAG_FILEMODES, RPMTAG_FILEMTIMES, RPMTAG_FILERDEVS, RPMTAG_FILESIZES, RPMTAG_FILESTATES, RPMTAG_FILEUIDS, RPMTAG_FILEUSERNAME, RPMTAG_FILEVERIFYFLAGS, rpmTagType, RPMVERIFY_ALL, RPMVERIFY_FILESIZE, RPMVERIFY_GROUP, RPMVERIFY_LINKTO, RPMVERIFY_LSTATFAIL, RPMVERIFY_MD5, RPMVERIFY_MODE, RPMVERIFY_MTIME, RPMVERIFY_NONE, RPMVERIFY_RDEV, RPMVERIFY_READFAIL, RPMVERIFY_READLINKFAIL, RPMVERIFY_USER, rpmVerifyAttrs, S_ISDEV, S_ISLNK, stpcpy(), and uidToUname().

Referenced by hdrVerifyFile(), and verifyHeader().

int showMatches QVA_t  qva,
rpmdbMatchIterator  mi,
QVF_t  showPackage
 

Display query/verify information for each header in iterator.

Parameters:
qva parsed query/verify options
mi rpm database iterator
showPackage query/verify display routine
Returns:
result of last non-zero showPackage() return

Definition at line 534 of file query.c.

References Header, QVA_t, QVF_t, rpmdbFreeIterator(), rpmdbGetIteratorRpmDB(), and rpmdbNextIterator().

Referenced by rpmQueryVerify().

int showQueryPackage QVA_t  qva,
rpmdb  db,
Header  h
 

Display results of package query.

Todo:
Devise a meaningful return code.
Parameters:
qva parsed query/verify options
db rpm database (unused for queries)
h header to use for query
Returns:
0 always

Definition at line 150 of file query.c.

References _, _free(), countLinks(), Header, headerNVR(), HFD_t, HGE_t, int_32, printFileInfo(), QUERY_FOR_CONFIG, QUERY_FOR_DEFAULT, QUERY_FOR_DOCS, QUERY_FOR_DUMPFILES, QUERY_FOR_LIST, QUERY_FOR_STATE, queryHeader(), rpmQVArguments_s::qva_fflags, rpmQVArguments_s::qva_flags, rpmQVArguments_s::qva_queryFormat, QVA_t, RPMERR_INTERNAL, rpmError, RPMFILE_CONFIG, RPMFILE_DOC, RPMFILE_GHOST, RPMFILE_STATE_NETSHARED, RPMFILE_STATE_NORMAL, RPMFILE_STATE_NOTINSTALLED, RPMFILE_STATE_REPLACED, rpmfileState, rpmIsVerbose, RPMMESS_NORMAL, rpmMessage, rpmQueryFlags, RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, RPMTAG_DIRNAMES, RPMTAG_FILEFLAGS, RPMTAG_FILEGIDS, RPMTAG_FILEGROUPNAME, RPMTAG_FILEINODES, RPMTAG_FILELINKTOS, RPMTAG_FILEMD5S, RPMTAG_FILEMODES, RPMTAG_FILEMTIMES, RPMTAG_FILERDEVS, RPMTAG_FILESIZES, RPMTAG_FILESTATES, RPMTAG_FILEUIDS, RPMTAG_FILEUSERNAME, rpmTagType, stpcpy(), uint_16, xmalloc(), and xrealloc().

Referenced by rpmQuery(), and rpmQueryVerify().

int showVerifyPackage QVA_t  qva,
rpmdb  db,
Header  h
 

Display results of package verify.

Parameters:
qva parsed query/verify options
db rpm database
h header to use for verify
Returns:
result of last non-zero verify return

Definition at line 520 of file verify.c.

References _, Fclose(), FD_t, fdDup(), Header, headerNVR(), rpmQVArguments_s::qva_flags, rpmQVArguments_s::qva_prefix, QVA_t, rpmdb, RPMMESS_NORMAL, rpmMessage, rpmVerifyDigest(), rpmVerifyScript(), VERIFY_DEPS, VERIFY_DIGEST, VERIFY_FILES, VERIFY_SCRIPT, verifyDependencies(), and verifyHeader().

Referenced by rpmVerify().


Variable Documentation

int _noDirTokens
 

Should version 3 packages be produced?

Definition at line 49 of file rpmdb.c.

int _noDirTokens
 

Should version 3 packages be produced?

Definition at line 15 of file poptDB.c.

int _noDirTokens
 

Should version 3 packages be produced?

Definition at line 17 of file rpmcli.h.

int _noDirTokens = 0
 

Should version 3 packages be produced?

Definition at line 289 of file misc.c.

int _noDirTokens
 

Definition at line 49 of file poptBT.c.

int _noDirTokens
 

Definition at line 18 of file pack.c.

int _noDirTokens
 

Definition at line 34 of file files.c.

Referenced by dbiUpdateRecord(), genCpioListAndHeader(), rpmdbAdd(), and rpmLeadVersion().

struct rpmBuildArguments_s rpmBTArgs
 

Definition at line 57 of file rpmcli.h.

Referenced by buildArgCallback(), and main().

struct rpmBuildArguments_s rpmBTArgs
 

Definition at line 15 of file poptBT.c.

Referenced by buildArgCallback(), and main().

struct poptOption rpmBuildPoptTable[]
 

Definition at line 62 of file rpmcli.h.

struct poptOption rpmBuildPoptTable[]
 

Definition at line 140 of file poptBT.c.

struct poptOption rpmDatabasePoptTable[]
 

Definition at line 496 of file rpmcli.h.

struct rpmDatabaseArguments_s rpmDBArgs
 

Definition at line 491 of file rpmcli.h.

Referenced by main().

struct rpmInstallArguments_s rpmIArgs
 

Definition at line 466 of file rpmcli.h.

Referenced by installArgCallback(), and main().

struct rpmInstallArguments_s rpmIArgs
 

Definition at line 17 of file poptI.c.

Referenced by installArgCallback(), and main().

struct poptOption rpmInstallPoptTable[]
 

Definition at line 471 of file rpmcli.h.

struct poptOption rpmInstallPoptTable[]
 

Definition at line 96 of file poptI.c.

struct rpmSignArguments_s rpmKArgs
 

Definition at line 561 of file rpmcli.h.

Referenced by main(), and signArgCallback().

struct rpmSignArguments_s rpmKArgs
 

Initial value:

        { RESIGN_NONE, CHECKSIG_ALL, 0, NULL }

Definition at line 13 of file poptK.c.

Referenced by main(), and signArgCallback().

struct poptOption rpmQueryPoptTable[]
 

Query mode options.

Definition at line 269 of file rpmcli.h.

struct poptOption rpmQueryPoptTable[]
 

Query mode options.

Definition at line 165 of file poptQV.c.

struct rpmQVArguments_s rpmQVArgs
 

Definition at line 254 of file rpmcli.h.

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

struct rpmQVArguments_s rpmQVArgs
 

Definition at line 14 of file poptQV.c.

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

struct poptOption rpmQVSourcePoptTable[]
 

Common query/verify mode options.

Definition at line 259 of file rpmcli.h.

struct poptOption rpmQVSourcePoptTable[]
 

Common query/verify mode options.

Definition at line 84 of file poptQV.c.

struct poptOption rpmSignPoptTable[]
 

Definition at line 566 of file rpmcli.h.

struct poptOption rpmSignPoptTable[]
 

Initial value:

 {
 { NULL, '\0', POPT_ARG_CALLBACK | POPT_CBFLAG_INC_DATA,
        signArgCallback, 0, NULL, NULL },
 { "addsign", '\0', 0, 0,  -1005 ,
         "add a signature to a package" , NULL },
 { "resign", '\0', 0, 0,  -1006 ,
         "sign a package (discard current signature)" , NULL },
 { "sign", '\0', POPT_ARGFLAG_DOC_HIDDEN, &rpmKArgs.sign, 0,
         "generate signature" , NULL },
 { "checksig", 'K', 0, 0, 'K',
         "verify package signature" , NULL },
 { "nogpg", '\0', POPT_BIT_CLR,
        &rpmKArgs.checksigFlags, CHECKSIG_GPG,
         "skip any GPG signatures" , NULL },
 { "nopgp", '\0', POPT_BIT_CLR|POPT_ARGFLAG_DOC_HIDDEN,
        &rpmKArgs.checksigFlags, CHECKSIG_PGP,
         "skip any PGP signatures" , NULL },
 { "nomd5", '\0', POPT_BIT_CLR,
        &rpmKArgs.checksigFlags, CHECKSIG_MD5,
         "do not verify file md5 checksums" , NULL },

   POPT_TABLEEND
}

Definition at line 50 of file poptK.c.

struct poptOption rpmVerifyPoptTable[]
 

Verify mode options.

Definition at line 274 of file rpmcli.h.

struct poptOption rpmVerifyPoptTable[]
 

Verify mode options.

Definition at line 209 of file poptQV.c.

int specedit
 

Definition at line 264 of file rpmcli.h.

int specedit = 0
 

Definition at line 17 of file poptQV.c.

int specedit
 

Definition at line 12 of file spec.c.

Referenced by main(), newSl(), newSt(), and rpmQueryVerify().


Generated on Fri Oct 15 05:31:24 2004 for rpm by doxygen 1.3.6