#include "rpmlib.h"#include "rpmurl.h"#include "rpmmacro.h"#include "argv.h"Go to the source code of this file.
Data Structures | |
| struct | rpmQVKArguments_s |
| Describe query/verify/signature command line operation. More... | |
| struct | rpmBuildArguments_s |
| Describe build command line request. More... | |
| struct | rpmInstallArguments_s |
| Describe database command line requests. More... | |
| struct | IDT_s |
| A rollback transaction id element. More... | |
| struct | IDTindex_s |
| A rollback transaction id index. More... | |
| struct | rpmDatabaseArguments_s |
| Describe database command line requests. More... | |
Defines | |
| #define | RPMCLI_POPT_NODEPS -1025 |
| Common/global popt tokens used for command line option tables. | |
| #define | RPMCLI_POPT_FORCE -1026 |
| #define | RPMCLI_POPT_NOMD5 -1027 |
| #define | RPMCLI_POPT_NOSCRIPTS -1028 |
| #define | RPMCLI_POPT_NOSIGNATURE -1029 |
| #define | RPMCLI_POPT_NODIGEST -1030 |
| #define | RPMCLI_POPT_NOHDRCHK -1031 |
| #define | RPMCLI_POPT_NOCONTEXTS -1032 |
Functions | |
| poptContext | rpmcliInit (int argc, char *const argv[], struct poptOption *optionsTable) |
| Initialize most everything needed by an rpm CLI executable context. | |
| void | rpmcliConfigured (void) |
| Make sure that rpm configuration has been read. | |
| poptContext | rpmcliFini (poptContext optCon) |
| Destroy most everything needed by an rpm CLI executable context. | |
Variables | |
| int | _noDirTokens |
| Should version 3 packages be produced? | |
| struct poptOption | rpmcliAllPoptTable [] |
| Popt option table for options shared by all modes and executables. | |
| int | ftsOpts |
| struct poptOption | rpmcliFtsPoptTable [] |
| const char * | rpmcliPipeOutput |
| const char * | rpmcliRcfile |
| const char * | rpmcliRootDir |
RPMDB | |
| struct rpmDatabaseArguments_s | rpmDBArgs |
| struct poptOption | rpmDatabasePoptTable [] |
RPMQV | |
|
| |
| #define | RPMVERIFY_ALL ~(RPMVERIFY_NONE) |
| #define | RPMVERIFY_FAILURES (RPMVERIFY_LSTATFAIL|RPMVERIFY_READFAIL|RPMVERIFY_READLINKFAIL|RPMVERIFY_LGETFILECONFAIL) |
| #define | _QUERY_FOR_BITS |
| #define | VERIFY_ATTRS |
| #define | VERIFY_ALL |
| 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, RPMQV_HDLIST, RPMQV_FTSWALK } |
Query/Verify argument qualifiers. More... | |
| 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_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_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_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_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_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_s * | QVA_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 rpmQVKArguments_s | rpmQVKArgs |
| struct poptOption | rpmQVSourcePoptTable [] |
| Common query/verify mode options. | |
| int | specedit |
| struct poptOption | rpmQueryPoptTable [] |
| Query mode options. | |
| struct poptOption | rpmVerifyPoptTable [] |
| Verify mode options. | |
| int | rpmcliShowMatches (QVA_t qva, rpmts ts) |
| Display query/verify information for each header in iterator. | |
| void | rpmDisplayQueryTags (FILE *fp) |
| Display list of tags that can be used in --queryformat. | |
| 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, ARGV_t argv) |
| Iterate over query/verify arg list. | |
| int | rpmcliQuery (rpmts ts, QVA_t qva, const char **argv) |
| Display package information. | |
| int | rpmVerifyFile (const rpmts ts, rpmfi fi, rpmVerifyAttrs *res, rpmVerifyAttrs omitMask) |
| Verify file attributes (including MD5 sum). | |
| int | showVerifyPackage (QVA_t qva, rpmts ts, Header h) |
| Display results of package verify. | |
| int | rpmVerifySignatures (QVA_t qva, rpmts ts, FD_t fd, const char *fn) |
| Check package and header signatures. | |
| int | rpmcliVerify (rpmts ts, QVA_t qva, const char **argv) |
| Verify package install. | |
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 [] |
RPMEIU | |
|
| |
| typedef struct IDT_s * | IDT |
| A rollback transaction id element. | |
| typedef struct IDTindex_s * | IDTX |
| A rollback transaction id index. | |
| int | rpmcliPackagesTotal |
| int | rpmcliHashesCurrent |
| int | rpmcliHashesTotal |
| int | rpmcliProgressCurrent |
| int | rpmcliProgressTotal |
| struct rpmInstallArguments_s | rpmIArgs |
| struct poptOption | rpmInstallPoptTable [] |
| void * | rpmShowProgress (const void *arg, const rpmCallbackType what, const unsigned long amount, const unsigned long 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 | rpmInstall (rpmts ts, struct rpmInstallArguments_s *ia, const char **fileArgv) |
| Install/upgrade/freshen binary rpm package. | |
| int | rpmErase (rpmts ts, struct rpmInstallArguments_s *ia, const char **argv) |
| Erase binary rpm package. | |
| 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 (rpmts ts, rpmTag tag) |
| Load tag (instance,value) pairs from rpm databse, and return sorted id index. | |
| IDTX | IDTXglob (rpmts ts, const char *globstr, rpmTag tag) |
| Load tag (instance,value) pairs from packages, and return sorted id index. | |
| int | rpmRollback (rpmts ts, struct rpmInstallArguments_s *ia, const char **argv) |
| Rollback transactions, erasing new, reinstalling old, package(s). | |
Definition in file rpmcli.h.
| #define _QUERY_FOR_BITS |
Definition at line 178 of file rpmcli.h.
Referenced by rpmcliQuery().
| #define RPMCLI_POPT_FORCE -1026 |
Definition at line 85 of file rpmcli.h.
Referenced by buildArgCallback(), installArgCallback(), and queryArgCallback().
| #define RPMCLI_POPT_NOCONTEXTS -1032 |
Definition at line 91 of file rpmcli.h.
Referenced by installArgCallback(), and queryArgCallback().
| #define RPMCLI_POPT_NODEPS -1025 |
Common/global popt tokens used for command line option tables.
Definition at line 84 of file rpmcli.h.
Referenced by buildArgCallback(), installArgCallback(), and queryArgCallback().
| #define RPMCLI_POPT_NODIGEST -1030 |
Definition at line 89 of file rpmcli.h.
Referenced by buildArgCallback(), installArgCallback(), queryArgCallback(), and rpmcliAllArgCallback().
| #define RPMCLI_POPT_NOHDRCHK -1031 |
Definition at line 90 of file rpmcli.h.
Referenced by buildArgCallback(), installArgCallback(), queryArgCallback(), and rpmcliAllArgCallback().
| #define RPMCLI_POPT_NOMD5 -1027 |
Definition at line 86 of file rpmcli.h.
Referenced by installArgCallback(), and queryArgCallback().
| #define RPMCLI_POPT_NOSCRIPTS -1028 |
Definition at line 87 of file rpmcli.h.
Referenced by installArgCallback(), and queryArgCallback().
| #define RPMCLI_POPT_NOSIGNATURE -1029 |
Definition at line 88 of file rpmcli.h.
Referenced by buildArgCallback(), installArgCallback(), queryArgCallback(), and rpmcliAllArgCallback().
| #define RPMVERIFY_ALL ~(RPMVERIFY_NONE) |
Definition at line 142 of file rpmcli.h.
Referenced by processPackageFiles(), and processSourceFiles().
| #define RPMVERIFY_FAILURES (RPMVERIFY_LSTATFAIL|RPMVERIFY_READFAIL|RPMVERIFY_READLINKFAIL|RPMVERIFY_LGETFILECONFAIL) |
Definition at line 143 of file rpmcli.h.
Referenced by rpmVerifyFile().
| #define VERIFY_ALL |
( VERIFY_ATTRS | VERIFY_FILES | VERIFY_DEPS | VERIFY_SCRIPT | VERIFY_DIGEST |\ VERIFY_SIGNATURE | VERIFY_HDRCHK )
Definition at line 226 of file rpmcli.h.
Referenced by main().
| #define VERIFY_ATTRS |
( VERIFY_MD5 | VERIFY_SIZE | VERIFY_LINKTO | VERIFY_USER | VERIFY_GROUP | \ VERIFY_MTIME | VERIFY_MODE | VERIFY_RDEV | VERIFY_CONTEXTS )
Definition at line 223 of file rpmcli.h.
Referenced by verifyHeader().
| typedef struct IDTindex_s * IDTX |
A rollback transaction id index.
Destroy id index.
| idtx | id index |
Definition at line 926 of file rpminstall.c.
References _free(), IDT_s::h, headerFree(), IDTindex_s::idt, IDT_s::key, and IDTindex_s::nidt.
Referenced by getRepackageHeaderFromTE(), rpmRollback(), rpmts_IDTXglob(), and rpmts_IDTXload().
Load tag (instance,value) pairs from packages, and return sorted id index.
| ts | transaction set | |
| globstr | glob expression | |
| tag | rpm tag |
Definition at line 1021 of file rpminstall.c.
References _, _free(), Fclose(), rpmEIU::fd, Ferror(), Fopen(), Fstrerror(), IDT_s::h, rpmEIU::h, headerFree(), headerGetEntry(), headerIsEntry(), headerLink(), IDTindex_s::idt, IDTXgrow(), IDTXsort(), IDT_s::instance, rpmEIU::isSource, IDT_s::key, IDTindex_s::nidt, RPMERR_OPEN, rpmError, rpmGlob(), rpmEIU::rpmrc, RPMRC_NOKEY, RPMRC_NOTTRUSTED, RPMRC_OK, rpmReadPackageFile(), IDT_s::u32, and IDT_s::val.
Referenced by getRepackageHeaderFromTE(), rpmRollback(), and rpmts_IDTXglob().
Insure that index has room for "need" elements.
| idtx | id index | |
| need | additional no. of elements needed |
Definition at line 950 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.
| ts | transaction set | |
| tag | rpm tag |
Definition at line 974 of file rpminstall.c.
References IDT_s::h, rpmEIU::h, headerGetEntry(), headerLink(), IDTindex_s::idt, IDTXgrow(), IDTXsort(), IDT_s::instance, IDT_s::key, IDTindex_s::nidt, rpmdbFreeIterator(), rpmdbGetIteratorOffset(), rpmdbNextIterator(), rpmdbSetIteratorRE(), RPMMIRE_DEFAULT, rpmtsInitIterator(), IDT_s::u32, and IDT_s::val.
Referenced by rpmRollback(), and rpmts_IDTXload().
| IDTX IDTXnew | ( | void | ) |
Create id index.
Definition at line 942 of file rpminstall.c.
References IDTindex_s::delta, IDTindex_s::size, and xcalloc().
Referenced by IDTXgrow().
Sort tag (instance,value) pairs.
| idtx | id index |
Definition at line 967 of file rpminstall.c.
References IDTindex_s::idt, IDTintcmp(), IDTindex_s::nidt, and IDTindex_s::size.
Referenced by IDTXglob(), and IDTXload().
| void rpmcliConfigured | ( | void | ) |
Make sure that rpm configuration has been read.
Make sure that rpm configuration has been read.
Definition at line 136 of file poptALL.c.
References EXIT_FAILURE, rpmcliInitialized, rpmcliRcfile, and rpmReadConfigFiles().
Referenced by main(), rpmcliAllArgCallback(), and rpmcliInit().
| poptContext rpmcliFini | ( | poptContext | optCon | ) |
| poptContext rpmcliInit | ( | int | argc, | |
| char *const | argv[], | |||
| struct poptOption * | optionsTable | |||
| ) |
Initialize most everything needed by an rpm CLI executable context.
| argc | no. of args | |
| argv | arg array | |
| optionsTable | popt option table |
Definition at line 400 of file poptALL.c.
References _, __progname, _debug, EXIT_FAILURE, LIBRPMALIAS_FILENAME, LOCALEDIR, PACKAGE, rpmcliConfigured(), RPMCONFIGDIR, rpmIncreaseVerbosity, RPMMESS_NORMAL, rpmSetVerbosity, and setprogname.
Referenced by main().
Check package and header signatures.
| qva | parsed query/verify options | |
| ts | transaction set | |
| fd | package file handle | |
| fn | package file name |
Definition at line 719 of file rpmchecksig.c.
References _, _free(), _print_pkts, fdInitDigest(), pgpDigParams_s::hash_algo, headerFreeData(), headerFreeIterator(), headerGetEntry(), headerInitIterator(), headerIsEntry(), headerNextIterator(), rpmlead::major, pgpCleanDig(), PGPHASHALGO_MD5, PGPHASHALGO_SHA1, pgpPrtPkts(), rpmQVKArguments_s::qva_flags, readFile(), readLead(), RPMERR_BADSIGTYPE, RPMERR_READLEAD, RPMERR_SIGGEN, RPMERR_SIGVFY, rpmError, rpmFreeSignature(), rpmIsDebug, rpmIsVerbose, RPMRC_NOKEY, RPMRC_NOTTRUSTED, RPMRC_OK, rpmReadSignature(), RPMSIGTAG_DSA, RPMSIGTAG_GPG, RPMSIGTAG_LEMD5_1, RPMSIGTAG_LEMD5_2, RPMSIGTAG_MD5, RPMSIGTAG_PGP, RPMSIGTAG_PGP5, RPMSIGTAG_RSA, RPMSIGTAG_SHA1, RPMSIGTAG_SIZE, rpmtsCleanDig(), rpmtsDig(), rpmtsSetSig(), rpmtsSignature(), rpmVerifySignature(), pgpDig_s::signature, rpmlead::signature_type, VERIFY_DIGEST, VERIFY_SIGNATURE, and pgpDigParams_s::version.
Referenced by rpmcliSign().
| int ftsOpts |
Definition at line 234 of file poptALL.c.
Referenced by main(), and rpmcliArgIter().
| struct poptOption rpmcliFtsPoptTable[] |
Definition at line 27 of file rpminstall.c.
Referenced by printHash(), and rpmShowProgress().
Definition at line 29 of file rpminstall.c.
Referenced by printHash().
Definition at line 25 of file rpminstall.c.
Referenced by rpmInstall(), rpmRollback(), rpmShowProgress(), and rpmtsAddInstallElement().
| const char* rpmcliPipeOutput |
Definition at line 31 of file rpminstall.c.
Referenced by printHash(), and rpmShowProgress().
Definition at line 33 of file rpminstall.c.
Referenced by printHash(), and rpmShowProgress().
| const char* rpmcliRcfile |
Definition at line 95 of file poptALL.c.
Referenced by main(), and rpmcliConfigured().
| const char* rpmcliRootDir |
1.6.1