Parsing RPM command line arguments.
More...
|
| poptContext | rpmcliInit (int argc, char *const argv[], struct poptOption *optionsTable) |
| | Initialize most everything needed by an rpm CLI executable context. More...
|
| |
| void | rpmcliConfigured (void) |
| | Make sure that rpm configuration has been read. More...
|
| |
| poptContext | rpmcliFini (poptContext optCon) |
| | Destroy most everything needed by an rpm CLI executable context. More...
|
| |
|
| enum | rpmQVSources_e {
RPMQV_PACKAGE = 0
, RPMQV_PATH
, RPMQV_ALL
, RPMQV_RPM
,
RPMQV_GROUP
, RPMQV_WHATPROVIDES
, RPMQV_WHATREQUIRES
, RPMQV_TRIGGEREDBY
,
RPMQV_DBOFFSET
, RPMQV_SPECRPMS
, RPMQV_SPECFILE = RPMQV_SPECRPMS
, RPMQV_PKGID
,
RPMQV_HDRID
, RPMQV_TID
, RPMQV_SPECSRPM
, RPMQV_WHATRECOMMENDS
,
RPMQV_WHATSUGGESTS
, RPMQV_WHATSUPPLEMENTS
, RPMQV_WHATENHANCES
, RPMQV_SPECBUILTRPMS
,
RPMQV_WHATOBSOLETES
, RPMQV_WHATCONFLICTS
, RPMQV_PATH_ALL
} |
| | Query/Verify argument qualifiers. More...
|
| |
| enum | rpmQueryFlags_e { QUERY_FOR_DEFAULT = 0
, QUERY_FOR_LIST = (1 << 23)
, QUERY_FOR_STATE = (1 << 24)
, QUERY_FOR_DUMPFILES = (1 << 27)
} |
| | Bit(s) to control rpmQuery() operation, stored in qva_flags. More...
|
| |
| typedef struct rpmQVKArguments_s * | QVA_t |
| |
| typedef int(* | QVF_t) (QVA_t qva, rpmts ts, Header h) |
| | Function to display iterator matches. More...
|
| |
| typedef int(* | QSpecF_t) (rpmts ts, QVA_t qva, const char *arg) |
| | Function to query spec file. More...
|
| |
| rpmQueryFlags | rpmcliQueryFlags |
| | Bit(s) from common command line options. More...
|
| |
| struct rpmQVKArguments_s | rpmQVKArgs |
| |
| struct poptOption | rpmQVSourcePoptTable [] |
| |
| struct poptOption | rpmQVFilePoptTable [] |
| |
| struct poptOption | rpmQueryPoptTable [] |
| |
| struct poptOption | rpmVerifyPoptTable [] |
| |
| void | rpmDisplayQueryTags (FILE *fp) |
| | Display list of tags that can be used in –queryformat. More...
|
| |
| int | showQueryPackage (QVA_t qva, rpmts ts, Header h) |
| | Display results of package query. More...
|
| |
| int | rpmcliArgIter (rpmts ts, QVA_t qva, ARGV_const_t argv) |
| | Iterate over query/verify arg list. More...
|
| |
| int | rpmcliQuery (rpmts ts, QVA_t qva, ARGV_const_t argv) |
| | Display package information. More...
|
| |
| int | showVerifyPackage (QVA_t qva, rpmts ts, Header h) |
| | Display results of package verify. More...
|
| |
| int | rpmcliVerify (rpmts ts, QVA_t qva, ARGV_const_t argv) |
| | Verify package install. More...
|
| |
|
| enum | rpmInstallFlags_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)
, INSTALL_REINSTALL = (1 << 10)
,
INSTALL_RESTORE = (1 << 11)
} |
| | Bit(s) to control rpmInstall() operation. More...
|
| |
| typedef rpmFlags | rpmInstallFlags |
| |
| struct rpmInstallArguments_s | rpmIArgs |
| |
| struct poptOption | rpmInstallPoptTable [] |
| |
| void * | rpmShowProgress (const void *arg, const rpmCallbackType what, const rpm_loff_t amount, const rpm_loff_t total, fnpyKey key, void *data) |
| | The rpm CLI generic transaction callback handler. More...
|
| |
| int | rpmInstallSource (rpmts ts, const char *arg, char **specFilePtr, char **cookie) |
| | Install source rpm package. More...
|
| |
| int | rpmInstall (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_t fileArgv) |
| | Install/upgrade/freshen/reinstall binary rpm package. More...
|
| |
| int | rpmErase (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_const_t argv) |
| | Erase binary rpm package. More...
|
| |
| int | rpmRestore (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_const_t argv) |
| | Restore file metadata (perms etc) of installed package(s). More...
|
| |
| #define | UNINSTALL_NONE INSTALL_NONE |
| | Bit(s) to control rpmErase() operation. More...
|
| |
| #define | UNINSTALL_NODEPS INSTALL_NODEPS |
| |
| #define | UNINSTALL_ALLMATCHES INSTALL_ALLMATCHES |
| |
Parsing RPM command line arguments.
◆ UNINSTALL_ALLMATCHES
◆ UNINSTALL_NODEPS
◆ UNINSTALL_NONE
◆ QSpecF_t
| typedef int(* QSpecF_t) (rpmts ts, QVA_t qva, const char *arg) |
Function to query spec file.
- Parameters
-
| ts | transaction set |
| qva | parsed query/verify options |
| arg | query argument |
- Returns
- 0 on success
Definition at line 160 of file rpmcli.h.
◆ QVA_t
◆ QVF_t
Function to display iterator matches.
- Parameters
-
| qva | parsed query/verify options |
| ts | transaction set |
| h | header to use for query/verify |
- Returns
- 0 on success
Definition at line 150 of file rpmcli.h.
◆ rpmInstallFlags
◆ rpmInstallFlags_e
Bit(s) to control rpmInstall() 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
|
| INSTALL_REINSTALL | from –reinstall
|
| INSTALL_RESTORE | from –restore
|
Definition at line 295 of file rpmcli.h.
◆ rpmQueryFlags_e
Bit(s) to control rpmQuery() operation, stored in qva_flags.
- Todo:
- Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.
| Enumerator |
|---|
| QUERY_FOR_DEFAULT | |
| QUERY_FOR_LIST | query: from –list
|
| QUERY_FOR_STATE | query: from –state
|
| QUERY_FOR_DUMPFILES | query: from –dump
|
Definition at line 113 of file rpmcli.h.
◆ rpmQVSources_e
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 | ... 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_SPECRPMS | ... from spec file binaries (query only).
|
| RPMQV_SPECFILE | ... backwards compatibility
|
| RPMQV_PKGID | ... from package id (header+payload MD5).
|
| RPMQV_HDRID | ... from header id (immutable header SHA1).
|
| RPMQV_TID | ... from install transaction id (time stamp).
|
| RPMQV_SPECSRPM | ... from spec file source (query only).
|
| RPMQV_WHATRECOMMENDS | ... from recommends db search.
|
| RPMQV_WHATSUGGESTS | ... from suggests db search.
|
| RPMQV_WHATSUPPLEMENTS | ... from supplements db search.
|
| RPMQV_WHATENHANCES | ... from enhances db search.
|
| RPMQV_SPECBUILTRPMS | ... from pkgs which would be built from spec
|
| RPMQV_WHATOBSOLETES | ... from obsoletes db search.
|
| RPMQV_WHATCONFLICTS | ... from conflicts db search.
|
| RPMQV_PATH_ALL | ... from file path db search (all states).
|
Definition at line 81 of file rpmcli.h.
◆ rpmcliArgIter()
Iterate over query/verify arg list.
- Parameters
-
| ts | transaction set |
| qva | parsed query/verify options |
| argv | query argument(s) (or NULL) |
- Returns
- 0 on success, else no. of failures
◆ rpmcliConfigured()
| void rpmcliConfigured |
( |
void |
| ) |
|
Make sure that rpm configuration has been read.
- Warning
- Options like –rcfile and –verbose must precede callers option.
◆ rpmcliFini()
| poptContext rpmcliFini |
( |
poptContext |
optCon | ) |
|
Destroy most everything needed by an rpm CLI executable context.
- Parameters
-
- Returns
- NULL always
◆ rpmcliInit()
| poptContext rpmcliInit |
( |
int |
argc, |
|
|
char *const |
argv[], |
|
|
struct poptOption * |
optionsTable |
|
) |
| |
Initialize most everything needed by an rpm CLI executable context.
- Parameters
-
| argc | no. of args |
| argv | arg array |
| optionsTable | popt option table |
- Returns
- popt context (or NULL)
◆ rpmcliQuery()
Display package information.
- Todo:
- hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
- Parameters
-
| ts | transaction set |
| qva | parsed query/verify options |
| argv | query argument(s) (or NULL) |
- Returns
- 0 on success, else no. of failures
◆ rpmcliVerify()
Verify package install.
- Todo:
- hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
- Parameters
-
| ts | transaction set |
| qva | parsed query/verify options |
| argv | verify argument(s) (or NULL) |
- Returns
- 0 on success, else no. of failures
◆ rpmcliVerifySignatures()
Verify package signatures.
- Parameters
-
| ts | transaction set |
| argv | array of package path arguments (NULL terminated) |
- Returns
- 0 on success
◆ rpmDisplayQueryTags()
| void rpmDisplayQueryTags |
( |
FILE * |
fp | ) |
|
Display list of tags that can be used in –queryformat.
- Parameters
-
| fp | file handle to use for display |
◆ rpmErase()
Erase binary rpm package.
- Parameters
-
| ts | transaction set |
| ia | control args/bits |
| argv | array of package file names (NULL terminated) |
- Returns
- 0 on success
◆ rpmInstall()
Install/upgrade/freshen/reinstall binary rpm package.
- Parameters
-
| ts | transaction set |
| ia | mode flags and parameters |
| fileArgv | array of package file names (NULL terminated) |
- Returns
- 0 on success
- Todo:
- fileArgv is modified on errors, should be ARGV_const_t
◆ rpmInstallSource()
| int rpmInstallSource |
( |
rpmts |
ts, |
|
|
const char * |
arg, |
|
|
char ** |
specFilePtr, |
|
|
char ** |
cookie |
|
) |
| |
Install source rpm package.
- Parameters
-
| ts | transaction set |
| arg | source rpm file name |
| [out] | *specFilePtr | (installed) spec file name |
| [out] | *cookie | |
- Returns
- 0 on success
◆ rpmRestore()
Restore file metadata (perms etc) of installed package(s).
- Parameters
-
| ts | transaction set |
| ia | control args/bits |
| argv | array of package names (NULL terminated) |
- Returns
- 0 on success
◆ rpmShowProgress()
The rpm CLI generic transaction callback handler.
- Todo:
- Remove headerFormat() from the progress callback.
- Deprecated:
- Transaction callback arguments need to change, so don't rely on this routine in the rpmcli API.
- Parameters
-
| arg | per-callback private data (e.g. an rpm header) |
| what | callback identifier |
| amount | per-callback progress info |
| total | per-callback progress info |
| key | opaque header key (e.g. file name or PyObject) |
| data | private data (e.g. rpmInstallInterfaceFlags) |
- Returns
- per-callback data (e.g. an opened FD_t)
◆ showQueryPackage()
Display results of package query.
- Todo:
- Devise a meaningful return code.
- Parameters
-
| qva | parsed query/verify options |
| ts | transaction set |
| h | header to use for query |
- Returns
- 0 always
◆ showVerifyPackage()
Display results of package verify.
- Parameters
-
| qva | parsed query/verify options |
| ts | transaction set |
| h | header to use for verify |
- Returns
- result of last non-zero verify return
◆ rpmcliAllPoptTable
| struct poptOption rpmcliAllPoptTable[] |
|
extern |
Popt option table for options shared by all modes and executables.
◆ rpmcliQueryFlags
Bit(s) from common command line options.
◆ rpmIArgs
◆ rpmInstallPoptTable
| struct poptOption rpmInstallPoptTable[] |
|
extern |
◆ rpmQueryPoptTable
| struct poptOption rpmQueryPoptTable[] |
|
extern |
◆ rpmQVFilePoptTable
| struct poptOption rpmQVFilePoptTable[] |
|
extern |
◆ rpmQVKArgs
◆ rpmQVSourcePoptTable
| struct poptOption rpmQVSourcePoptTable[] |
|
extern |
◆ rpmVerifyPoptTable
| struct poptOption rpmVerifyPoptTable[] |
|
extern |