Parsing RPM command line arguments.  
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
 }
 | 
|  | 
| enum | rpmQueryFlags_e { QUERY_FOR_DEFAULT = 0
, QUERY_FOR_LIST = (1 << 23)
, QUERY_FOR_STATE = (1 << 24)
, QUERY_FOR_DUMPFILES = (1 << 27)
 } | 
|  | 
| typedef struct rpmQVKArguments_s * | QVA_t | 
|  | 
| typedef int(* | QVF_t) (QVA_t qva, rpmts ts, Header h) | 
|  | 
| typedef int(* | QSpecF_t) (rpmts ts, QVA_t qva, const char *arg) | 
|  | 
| rpmQueryFlags | rpmcliQueryFlags | 
|  | 
| struct rpmQVKArguments_s | rpmQVKArgs | 
|  | 
| struct poptOption | rpmQVSourcePoptTable [] | 
|  | 
| struct poptOption | rpmQVFilePoptTable [] | 
|  | 
| struct poptOption | rpmQueryPoptTable [] | 
|  | 
| struct poptOption | rpmVerifyPoptTable [] | 
|  | 
| void | rpmDisplayQueryTags (FILE *fp) | 
|  | 
| int | showQueryPackage (QVA_t qva, rpmts ts, Header h) | 
|  | 
| int | rpmcliArgIter (rpmts ts, QVA_t qva, ARGV_const_t argv) | 
|  | 
| int | rpmcliQuery (rpmts ts, QVA_t qva, ARGV_const_t argv) | 
|  | 
| int | showVerifyPackage (QVA_t qva, rpmts ts, Header h) | 
|  | 
| int | rpmcliVerify (rpmts ts, QVA_t qva, ARGV_const_t argv) | 
|  | 
|  | 
| 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)
 }
 | 
|  | 
| 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) | 
|  | 
| int | rpmInstallSource (rpmts ts, const char *arg, char **specFilePtr, char **cookie) | 
|  | 
| int | rpmInstall (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_t fileArgv) | 
|  | 
| int | rpmErase (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_const_t argv) | 
|  | 
| int | rpmRestore (rpmts ts, struct rpmInstallArguments_s *ia, ARGV_const_t argv) | 
|  | 
| #define | UNINSTALL_NONE   INSTALL_NONE | 
|  | 
| #define | UNINSTALL_NODEPS   INSTALL_NODEPS | 
|  | 
| #define | UNINSTALL_ALLMATCHES   INSTALL_ALLMATCHES | 
|  | 
Parsing RPM command line arguments. 
◆ UNINSTALL_NONE
      
        
          | #define UNINSTALL_NONE   INSTALL_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 
 
 
◆ 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 
 
 
◆ rpmInstallFlags_e
Bit(s) to control rpmInstall() operation. 
| Enumerator | 
|---|
| 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  | 
 
 
◆ rpmQueryFlags_e
Bit(s) to control rpmQuery() operation, stored in qva_flags. 
- Todo
- Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?. 
| Enumerator | 
|---|
| QUERY_FOR_LIST | query: from –list  | 
| QUERY_FOR_STATE | query: from –state  | 
| QUERY_FOR_DUMPFILES | query: from –dump  | 
 
 
◆ 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).  | 
 
 
◆ rpmcliArgIter()
      
        
          | int rpmcliArgIter | ( | rpmts | ts, | 
        
          |  |  | QVA_t | qva, | 
        
          |  |  | ARGV_const_t | argv ) | 
      
 
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()
      
        
          | int rpmcliQuery | ( | rpmts | ts, | 
        
          |  |  | QVA_t | qva, | 
        
          |  |  | ARGV_const_t | argv ) | 
      
 
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()
      
        
          | int rpmcliVerify | ( | rpmts | ts, | 
        
          |  |  | QVA_t | qva, | 
        
          |  |  | ARGV_const_t | argv ) | 
      
 
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()
      
        
          | int rpmcliVerifySignatures | ( | rpmts | ts, | 
        
          |  |  | ARGV_const_t | argv ) | 
      
 
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()
      
        
          | 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. 
- 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
  
  | 
        
          | rpmQueryFlags rpmcliQueryFlags |  | extern | 
 
Bit(s) from common command line options.