rpm  4.14.0
Data Structures | Macros | Functions | Variables

Parsing RPM command line arguments. More...

#include <popt.h>
#include <rpm/rpmlib.h>
#include <rpm/rpmurl.h>
#include <rpm/rpmmacro.h>
#include <rpm/rpmcallback.h>
#include <rpm/rpmts.h>
#include <rpm/rpmfi.h>
#include <rpm/rpmvf.h>
#include <rpm/argv.h>
Include dependency graph for rpmcli.h:

Go to the source code of this file.

Data Structures

struct  rpmQVKArguments_s
 Describe query/verify/signature command line operation. More...
 
struct  rpmInstallArguments_s
 Describe database command line requests. More...
 

Macros

#define RPMCLI_POPT_NODEPS   -1025
 Common/global popt tokens used for command line option tables. More...
 
#define RPMCLI_POPT_FORCE   -1026
 
#define RPMCLI_POPT_NOMD5   -1027
 
#define RPMCLI_POPT_NOFILEDIGEST   -1027 /* same as obsolete RPMCLI_POPT_NOMD5 */
 
#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
 
#define RPMCLI_POPT_NOCAPS   -1033
 
#define RPMCLI_POPT_TARGETPLATFORM   -1034
 

Functions

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...
 
RPMK
int rpmcliImportPubkeys (rpmts ts, ARGV_const_t argv)
 Import public key(s) to rpm keyring. More...
 
int rpmcliVerifySignatures (rpmts ts, ARGV_const_t argv)
 Verify package signatures. More...
 

Variables

struct poptOption rpmcliAllPoptTable []
 Popt option table for options shared by all modes and executables. More...
 
const char * rpmcliPipeOutput
 
const char * rpmcliRcfile
 
const char * rpmcliRootDir
 

RPMQV

#define _QUERY_FOR_BITS
 
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
}
 Query/Verify argument qualifiers. More...
 
enum  rpmQueryFlags_e {
  QUERY_FOR_DEFAULT = 0, QUERY_MD5 = (1 << 0), QUERY_FILEDIGEST = (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), QUERY_FOR_LICENSE = (1 << 28)
}
 Bit(s) to control rpmQuery() operation, stored in qva_flags. More...
 
typedef rpmFlags rpmQVSources
 
typedef rpmFlags rpmQueryFlags
 
typedef struct rpmQVKArguments_sQVA_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 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 rpmVerifySignatures (QVA_t qva, rpmts ts, FD_t fd, const char *fn)
 Check package and header signatures. More...
 
int rpmcliVerify (rpmts ts, QVA_t qva, ARGV_const_t argv)
 Verify package install. More...
 

RPMEIU

#define UNINSTALL_NONE   INSTALL_NONE
 Bit(s) to control rpmErase() operation. More...
 
#define UNINSTALL_NODEPS   INSTALL_NODEPS
 
#define UNINSTALL_ALLMATCHES   INSTALL_ALLMATCHES
 
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)
}
 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...
 

Detailed Description

Parsing RPM command line arguments.

Definition in file rpmcli.h.

Macro Definition Documentation

◆ _QUERY_FOR_BITS

#define _QUERY_FOR_BITS

◆ RPMCLI_POPT_FORCE

#define RPMCLI_POPT_FORCE   -1026

Definition at line 64 of file rpmcli.h.

◆ RPMCLI_POPT_NOCAPS

#define RPMCLI_POPT_NOCAPS   -1033

Definition at line 72 of file rpmcli.h.

◆ RPMCLI_POPT_NOCONTEXTS

#define RPMCLI_POPT_NOCONTEXTS   -1032

Definition at line 71 of file rpmcli.h.

◆ RPMCLI_POPT_NODEPS

#define RPMCLI_POPT_NODEPS   -1025

Common/global popt tokens used for command line option tables.

Definition at line 63 of file rpmcli.h.

◆ RPMCLI_POPT_NODIGEST

#define RPMCLI_POPT_NODIGEST   -1030

Definition at line 69 of file rpmcli.h.

◆ RPMCLI_POPT_NOFILEDIGEST

#define RPMCLI_POPT_NOFILEDIGEST   -1027 /* same as obsolete RPMCLI_POPT_NOMD5 */

Definition at line 66 of file rpmcli.h.

◆ RPMCLI_POPT_NOHDRCHK

#define RPMCLI_POPT_NOHDRCHK   -1031

Definition at line 70 of file rpmcli.h.

◆ RPMCLI_POPT_NOMD5

#define RPMCLI_POPT_NOMD5   -1027

Definition at line 65 of file rpmcli.h.

◆ RPMCLI_POPT_NOSCRIPTS

#define RPMCLI_POPT_NOSCRIPTS   -1028

Definition at line 67 of file rpmcli.h.

◆ RPMCLI_POPT_NOSIGNATURE

#define RPMCLI_POPT_NOSIGNATURE   -1029

Definition at line 68 of file rpmcli.h.

◆ RPMCLI_POPT_TARGETPLATFORM

#define RPMCLI_POPT_TARGETPLATFORM   -1034

Definition at line 73 of file rpmcli.h.

Typedef Documentation

◆ rpmQueryFlags

Definition at line 139 of file rpmcli.h.

◆ rpmQVSources

Definition at line 105 of file rpmcli.h.

Function Documentation

◆ rpmcliImportPubkeys()

int rpmcliImportPubkeys ( rpmts  ts,
ARGV_const_t  argv 
)

Import public key(s) to rpm keyring.

Parameters
tstransaction set
argvarray of pubkey path arguments (NULL terminated)
Returns
0 on success

◆ rpmVerifySignatures()

int rpmVerifySignatures ( QVA_t  qva,
rpmts  ts,
FD_t  fd,
const char *  fn 
)

Check package and header signatures.

Parameters
qvaparsed query/verify options
tstransaction set
fdpackage file handle
fnpackage file name
Returns
0 on success, 1 on failure

Variable Documentation

◆ rpmcliPipeOutput

const char* rpmcliPipeOutput

◆ rpmcliRcfile

const char* rpmcliRcfile

◆ rpmcliRootDir

const char* rpmcliRootDir