rpm  5.4.15
Typedefs | Enumerations | Variables
rpmgi.h File Reference
#include <fts.h>
#include <argv.h>
#include <rpmtypes.h>
#include <rpmiotypes.h>
#include <rpmds.h>
#include <rpmte.h>
#include <rpmts.h>
#include <rpmtag.h>
#include <rpmio.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

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

Definition at line 133 of file rpmgi.h.

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

Definition at line 122 of file rpmgi.h.

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

Definition at line 110 of file rpmgi.h.

Typedef Documentation

typedef enum rpmgiFlags_e rpmgiFlags

Enumeration Type Documentation

Enumerator
RPMGI_NONE 
RPMGI_TSADD 
RPMGI_TSORDER 
RPMGI_NOGLOB 
RPMGI_NOMANIFEST 
RPMGI_NOHEADER 
RPMGI_ERASING 

Definition at line 27 of file rpmgi.h.

Function Documentation

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().

rpmgi rpmgiFree ( rpmgi  gi)

Destroy a generalized iterator.

Parameters
gigeneralized iterator
Returns
NULL on last dereference

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

rpmgiFlags rpmgiGetFlags ( rpmgi  gi)

Return current iteration flags.

Parameters
gigeneralized iterator
Returns
flags

Definition at line 837 of file rpmgi.c.

References RPMGI_NONE.

Referenced by rpmcliArgIter().

const char* rpmgiHdrPath ( rpmgi  gi)

Return current header path.

Parameters
gigeneralized iterator
Returns
header path

Definition at line 842 of file rpmgi.c.

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

Header rpmgiHeader ( rpmgi  gi)

Return current iteration header.

Parameters
gigeneralized iterator
Returns
header

Definition at line 847 of file rpmgi.c.

Referenced by hdrLoadNext(), rpmcliInstall(), and rpmgiShowMatches().

rpmgi rpmgiLink ( rpmgi  gi,
const char *  msg 
)

Reference a generalized iterator instance.

Parameters
gigeneralized iterator
msg
Returns
new generalized iterator reference

Referenced by 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 hdrCreate(), main(), rpmcliArgIter(), rpmcliInstall(), rpmcliSign(), and rpmReSign().

rpmRC rpmgiNext ( rpmgi  gi)
int rpmgiRc ( rpmgi  gi)

Return current iteration item(s) exit code.

Parameters
gigeneralized iterator
Returns
transaction set

Definition at line 861 of file rpmgi.c.

References RPMRC_OK.

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

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().

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 866 of file rpmgi.c.

References flags, rpmgiGlobArgv(), and RPMRC_FAIL.

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

rpmts rpmgiTs ( rpmgi  gi)

Return current iteration transaction set.

Parameters
gigeneralized iterator
Returns
transaction set

Definition at line 854 of file rpmgi.c.

rpmgi rpmgiUnlink ( rpmgi  gi,
const char *  msg 
)

Unreference a generalized iterator instance.

Parameters
gigeneralized iterator
msg
Returns
NULL on last dereference

Variable Documentation

int _rpmgi_debug

Definition at line 37 of file rpmgi.c.

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

rpmgiFlags giFlags

Definition at line 42 of file rpmgi.c.

Referenced by main(), and rpmcliArgIter().