rpm  4.8.1
rpmgi.h
Go to the documentation of this file.
1 #ifndef H_RPMGI
2 #define H_RPMGI
3 
8 #include <rpm/rpmtypes.h>
9 #include <rpm/argv.h>
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14 
17 extern int _rpmgi_debug;
18 
21 typedef enum rpmgiFlags_e {
23  RPMGI_TSADD = (1 << 0),
24  RPMGI_TSORDER = (1 << 1),
25  RPMGI_NOGLOB = (1 << 2),
26  RPMGI_NOMANIFEST = (1 << 3),
27  RPMGI_NOHEADER = (1 << 4)
28 } rpmgiFlags;
29 
33 #define RPMGI_COMFOLLOW 0x0001 /* follow command line symlinks */
34 #define RPMGI_LOGICAL 0x0002 /* logical walk */
35 #define RPMGI_NOCHDIR 0x0004 /* don't change directories */
36 #define RPMGI_NOSTAT 0x0008 /* don't get stat info */
37 #define RPMGI_PHYSICAL 0x0010 /* physical walk */
38 #define RPMGI_SEEDOT 0x0020 /* return dot and dot-dot */
39 #define RPMGI_XDEV 0x0040 /* don't cross devices */
40 #define RPMGI_WHITEOUT 0x0080 /* return whiteout information */
41 
42 extern rpmgiFlags giFlags;
43 
50 rpmgi rpmgiUnlink (rpmgi gi, const char * msg);
51 
58 rpmgi rpmgiLink (rpmgi gi, const char * msg);
59 
66 
75 rpmgi rpmgiNew(rpmts ts, rpmTag tag, const void * keyp,
76  size_t keylen);
77 
84 
90 const char * rpmgiHdrPath(rpmgi gi);
91 
98 
104 rpmts rpmgiTs(rpmgi gi);
105 
115  int ftsOpts, rpmgiFlags flags);
116 
117 
124 
130 int rpmgiNumErrors(rpmgi gi);
131 
132 #ifdef __cplusplus
133 }
134 #endif
135 
136 #endif /* H_RPMGI */
Header rpmgiHeader(rpmgi gi)
Return current iteration header.
rpmgi rpmgiUnlink(rpmgi gi, const char *msg)
Unreference a generalized iterator instance.
rpmgi rpmgiFree(rpmgi gi)
Destroy a generalized iterator.
int _rpmgi_debug
rpmgi rpmgiLink(rpmgi gi, const char *msg)
Reference a generalized iterator instance.
enum rpmTag_e rpmTag
Tags identify data in package headers.
rpmgiFlags rpmgiGetFlags(rpmgi gi)
Retrieve iterator flags.
enum rpmgiFlags_e rpmgiFlags
const char * rpmgiHdrPath(rpmgi gi)
Return current header path.
int rpmgiNumErrors(rpmgi gi)
Return number of errors (file not found etc) encountered during iteration.
rpmts rpmgiTs(rpmgi gi)
Return current iteration transaction set.
rpmRC rpmgiNext(rpmgi gi)
Perform next iteration step.
struct rpmgi_s * rpmgi
Definition: rpmtypes.h:72
rpmgi rpmgiNew(rpmts ts, rpmTag tag, const void *keyp, size_t keylen)
Return a generalized iterator.
char *const * ARGV_const_t
Definition: argv.h:15
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
Definition: rpmtypes.h:59
rpmRC rpmgiSetArgs(rpmgi gi, ARGV_const_t argv, int ftsOpts, rpmgiFlags flags)
Load iterator args.
rpmgiFlags_e
Definition: rpmgi.h:21
enum rpmRC_e rpmRC
Package read return codes.
rpmgiFlags giFlags
int ftsOpts
struct headerToken_s * Header
RPM header and data retrieval types.
Definition: rpmtypes.h:24