rpm  5.4.10
Typedefs | Enumerations | Variables
rpmgi.h File Reference
#include <fts.h>
#include <argv.h>
#include <rpmtypes.h>
#include <rpmds.h>
#include <rpmte.h>
#include <rpmts.h>
Include dependency graph for rpmgi.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef enum rpmgiFlags_e rpmgiFlags
 

Enumerations

enum  rpmgiFlags_e {
  RPMGI_NONE = 0, RPMGI_TSADD = (1 << 0), RPMGI_TSORDER = (1 << 1), RPMGI_NOGLOB = (1 << 2),
  RPMGI_NOMANIFEST = (1 << 3), RPMGI_NOHEADER = (1 << 4), RPMGI_ERASING = (1 << 5)
}
 

Variables

int _rpmgi_debug
 
rpmgiFlags giFlags
 

RPMGI

#define rpmgiUnlink(_gi, _msg)   ((rpmgi)rpmioUnlinkPoolItem((rpmioItem)(_gi), _msg, __FILE__, __LINE__))
 
#define rpmgiLink(_gi, _msg)   ((rpmgi)rpmioLinkPoolItem((rpmioItem)(_gi), _msg, __FILE__, __LINE__))
 
#define rpmgiFree(_gi)   ((rpmgi)rpmioFreePoolItem((rpmioItem)(_gi), __FUNCTION__, __FILE__, __LINE__))
 
rpmgi rpmgiUnlink (rpmgi gi, const char *msg)
 Unreference a generalized iterator instance. More...
 
rpmgi rpmgiLink (rpmgi gi, const char *msg)
 Reference a generalized iterator instance. More...
 
rpmgi rpmgiFree (rpmgi gi)
 Destroy a generalized iterator. More...
 
rpmgi rpmgiNew (rpmts ts, int tag, const void *keyp, size_t keylen)
 Return a generalized iterator. More...
 
rpmRC rpmgiNext (rpmgi gi)
 Perform next iteration step. More...
 
rpmgiFlags rpmgiGetFlags (rpmgi gi)
 Return current iteration flags. More...
 
const char * rpmgiHdrPath (rpmgi gi)
 Return current header path. More...
 
Header rpmgiHeader (rpmgi gi)
 Return current iteration header. More...
 
rpmts rpmgiTs (rpmgi gi)
 Return current iteration transaction set. More...
 
int rpmgiRc (rpmgi gi)
 Return current iteration item(s) exit code. More...
 
const char * rpmgiEscapeSpaces (const char *s)
 Escape isspace(3) characters in string. More...
 
rpmRC rpmgiSetArgs (rpmgi gi, ARGV_t argv, int ftsOpts, rpmgiFlags flags)
 Load iterator args. More...
 
Header rpmgiReadHeader (rpmgi gi, const char *path)
 Return header from package. More...
 

Macro Definition Documentation

§ rpmgiFree

#define rpmgiFree (   _gi)    ((rpmgi)rpmioFreePoolItem((rpmioItem)(_gi), __FUNCTION__, __FILE__, __LINE__))

Definition at line 130 of file rpmgi.h.

§ rpmgiLink

#define rpmgiLink (   _gi,
  _msg 
)    ((rpmgi)rpmioLinkPoolItem((rpmioItem)(_gi), _msg, __FILE__, __LINE__))

Definition at line 119 of file rpmgi.h.

§ rpmgiUnlink

#define rpmgiUnlink (   _gi,
  _msg 
)    ((rpmgi)rpmioUnlinkPoolItem((rpmioItem)(_gi), _msg, __FILE__, __LINE__))

Definition at line 107 of file rpmgi.h.

Typedef Documentation

§ rpmgiFlags

typedef enum rpmgiFlags_e rpmgiFlags

Enumeration Type Documentation

§ rpmgiFlags_e

Enumerator
RPMGI_NONE 
RPMGI_TSADD 
RPMGI_TSORDER 
RPMGI_NOGLOB 
RPMGI_NOMANIFEST 
RPMGI_NOHEADER 
RPMGI_ERASING 

Definition at line 24 of file rpmgi.h.

Function Documentation

§ rpmgiEscapeSpaces()

const char* rpmgiEscapeSpaces ( const char *  s)

Escape isspace(3) characters in string.

Parameters
sstring
Returns
escaped string

Definition at line 364 of file rpmgi.c.

References xmalloc.

Referenced by IDTXglob(), and rpmgiGlobArgv().

§ rpmgiFree()

rpmgi rpmgiFree ( rpmgi  gi)

Destroy a generalized iterator.

Parameters
gigeneralized iterator
Returns
NULL on last dereference

Referenced by main(), rpmcliArgIter(), rpmcliInstall(), rpmcliSign(), and rpmReSign().

§ rpmgiGetFlags()

rpmgiFlags rpmgiGetFlags ( rpmgi  gi)

Return current iteration flags.

Parameters
gigeneralized iterator
Returns
flags

Definition at line 835 of file rpmgi.c.

References RPMGI_NONE.

Referenced by rpmcliArgIter().

§ rpmgiHdrPath()

const char* rpmgiHdrPath ( rpmgi  gi)

Return current header path.

Parameters
gigeneralized iterator
Returns
header path

Definition at line 840 of file rpmgi.c.

Referenced by rpmcliArgIter(), rpmcliInstall(), rpmcliSign(), and rpmReSign().

§ rpmgiHeader()

Header rpmgiHeader ( rpmgi  gi)

Return current iteration header.

Parameters
gigeneralized iterator
Returns
header

Definition at line 845 of file rpmgi.c.

Referenced by rpmcliInstall(), and rpmgiShowMatches().

§ rpmgiLink()

rpmgi rpmgiLink ( rpmgi  gi,
const char *  msg 
)

Reference a generalized iterator instance.

Parameters
gigeneralized iterator
msg
Returns
new generalized iterator reference

Referenced by rpmgiNew().

§ rpmgiNew()

rpmgi rpmgiNew ( rpmts  ts,
int  tag,
const void *  keyp,
size_t  keylen 
)

Return a generalized iterator.

Parameters
tstransaction set
tagrpm tag
keypkey data (NULL for sequential access)
keylenkey data length (0 will use strlen(keyp))
Returns
new iterator

Definition at line 543 of file rpmgi.c.

References rpmcliInstallOrder(), rpmgiGetPool(), rpmgiLink(), rpmtsLink(), and xcalloc().

Referenced by main(), rpmcliArgIter(), rpmcliInstall(), rpmcliSign(), and rpmReSign().

§ rpmgiNext()

rpmRC rpmgiNext ( rpmgi  gi)

§ rpmgiRc()

int rpmgiRc ( rpmgi  gi)

Return current iteration item(s) exit code.

Parameters
gigeneralized iterator
Returns
transaction set

Definition at line 859 of file rpmgi.c.

References RPMRC_OK.

Referenced by rpmcliInstall(), rpmcliSign(), and rpmReSign().

§ rpmgiReadHeader()

Header rpmgiReadHeader ( rpmgi  gi,
const char *  path 
)

Return header from package.

Parameters
gigeneralized iterator
pathfile path
Returns
header (NULL on failure)

Definition at line 156 of file rpmgi.c.

References Fclose(), headerFree(), rpmgiOpen(), RPMRC_FAIL, RPMRC_NOKEY, RPMRC_NOSIG, RPMRC_NOTFOUND, RPMRC_NOTTRUSTED, RPMRC_OK, and rpmReadPackageFile().

Referenced by rpmcliInstall(), rpmgiLoadReadHeader(), and rpmgiWalkReadHeader().

§ rpmgiSetArgs()

rpmRC rpmgiSetArgs ( rpmgi  gi,
ARGV_t  argv,
int  ftsOpts,
rpmgiFlags  flags 
)

Load iterator args.

Parameters
gigeneralized iterator
argvarg list
ftsOptsfts(3) flags
flagsiterator flags
Returns
RPMRC_OK on success

Definition at line 864 of file rpmgi.c.

References rpmgiGlobArgv(), and RPMRC_FAIL.

Referenced by main(), rpmcliArgIter(), rpmcliInstall(), rpmcliSign(), and rpmReSign().

§ rpmgiTs()

rpmts rpmgiTs ( rpmgi  gi)

Return current iteration transaction set.

Parameters
gigeneralized iterator
Returns
transaction set

Definition at line 852 of file rpmgi.c.

§ rpmgiUnlink()

rpmgi rpmgiUnlink ( rpmgi  gi,
const char *  msg 
)

Unreference a generalized iterator instance.

Parameters
gigeneralized iterator
msg
Returns
NULL on last dereference

Variable Documentation

§ _rpmgi_debug

int _rpmgi_debug

Definition at line 37 of file rpmgi.c.

Referenced by rpmgiGetPool(), rpmgiInitFilter(), rpmgiNext(), and rpmgiWalkPathFilter().

§ giFlags

rpmgiFlags giFlags

Definition at line 42 of file rpmgi.c.

Referenced by main(), and rpmcliArgIter().