rpm  5.4.15
rpmfi.h
Go to the documentation of this file.
1 #ifndef H_RPMFI
2 #define H_RPMFI
3 
4 #include <sys/types.h> /* XXX size_t typedef */
5 #include <rpmtypes.h>
6 #include <rpmiotypes.h>
7 #include <rpmtag.h>
8 
14 /*@-exportlocal@*/
15 /*@unchecked@*/
16 extern int _rpmfi_debug;
17 /*@=exportlocal@*/
18 
26 typedef enum rpmFileTypes_e {
27  PIPE = 1,
28  CDEV = 2,
29  XDIR = 4,
30  BDEV = 6,
31  REG = 8,
32  LINK = 10,
33  SOCK = 12
34 } rpmFileTypes;
35 
39 typedef enum rpmfileState_e {
45 } rpmfileState;
46 #define RPMFILE_STATE_MISSING -1 /* XXX used for unavailable data */
47 
51 typedef enum rpmfileAttrs_e {
52 /*@-enummemuse@*/
54 /*@=enummemuse@*/
55  RPMFILE_CONFIG = (1 << 0),
56  RPMFILE_DOC = (1 << 1),
57  RPMFILE_ICON = (1 << 2),
58  RPMFILE_MISSINGOK = (1 << 3),
59  RPMFILE_NOREPLACE = (1 << 4),
60  RPMFILE_SPECFILE = (1 << 5),
61  RPMFILE_GHOST = (1 << 6),
62  RPMFILE_LICENSE = (1 << 7),
63  RPMFILE_README = (1 << 8),
64  RPMFILE_EXCLUDE = (1 << 9),
65  RPMFILE_UNPATCHED = (1 << 10),
66  RPMFILE_PUBKEY = (1 << 11),
67  RPMFILE_POLICY = (1 << 12),
68  RPMFILE_EXISTS = (1 << 13),
69  RPMFILE_SPARSE = (1 << 14),
70  RPMFILE_TYPED = (1 << 15),
71  RPMFILE_SOURCE = (1 << 16),
72  RPMFILE_PATCH = (1 << 17),
73  RPMFILE_OPTIONAL = (1 << 18),
74  RPMFILE_REMOVE = (1 << 19)
75 } rpmfileAttrs;
76 
77 #define RPMFILE_SPOOK (RPMFILE_GHOST|RPMFILE_TYPED)
78 #define RPMFILE_ALL ~(RPMFILE_NONE)
79 
83 typedef /*@abstract@*/ /*@refcounted@*/ struct rpmfi_s * rpmfi;
84 
85 #if defined(_RPMFI_INTERNAL)
86 
87 #include "mire.h"
88 
92 struct rpmfi_s {
93  struct rpmioItem_s _item;
94  int i;
95  int j;
97 /*@observer@*/
98  const char * Type;
100  rpmTag tagN;
101 /*@refcounted@*/ /*@null@*/
102  Header h;
104 /*@only@*/ /*@relnull@*/
105  const char ** bnl;
106 /*@only@*/ /*@relnull@*/
107  const char ** dnl;
109 /*@only@*/ /*@relnull@*/
110  const char ** fdigests;
111 /*@only@*/ /*@null@*/
112  rpmuint32_t * fdigestalgos;
113 /*@only@*/ /*@relnull@*/
114  const char ** flinks;
115 /*@only@*/ /*@null@*/
116  const char ** flangs;
118 /*@only@*/ /*@relnull@*/
119  rpmuint32_t * dil;
120 /*@only@*/ /*@relnull@*/
121  const rpmuint32_t * fflags;
122 /*@only@*/ /*@relnull@*/
123  const rpmuint32_t * fsizes;
124 /*@only@*/ /*@relnull@*/
125  const rpmuint32_t * fmtimes;
126 /*@only@*/ /*@relnull@*/
127  rpmuint16_t * fmodes;
128 /*@only@*/ /*@relnull@*/
129  const rpmuint16_t * frdevs;
130 /*@only@*/ /*@relnull@*/
131  const rpmuint32_t * finodes;
133 /*@only@*/ /*@null@*/
134  const char ** fuser;
135 /*@only@*/ /*@null@*/
136  const char ** fgroup;
138 /*@only@*/ /*@null@*/
139  rpmuint8_t * fstates;
141 /*@only@*/ /*@null@*/
142  const rpmuint32_t * fcolors;
144 /*@only@*/ /*@null@*/
145  const char ** fcaps;
147 /*@only@*/ /*@null@*/
148  const char ** fcontexts;
150 /*@only@*/ /*@null@*/
151  const char ** cdict;
152  rpmuint32_t ncdict;
153 /*@only@*/ /*@null@*/
154  const rpmuint32_t * fcdictx;
156 /*@only@*/ /*@null@*/
157  const rpmuint32_t * ddict;
158  rpmuint32_t nddict;
159 /*@only@*/ /*@null@*/
160  const rpmuint32_t * fddictx;
161 /*@only@*/ /*@null@*/
162  const rpmuint32_t * fddictn;
164 /*@only@*/ /*@relnull@*/
165  const rpmuint32_t * vflags;
167  rpmuint32_t dc;
168  rpmuint32_t fc;
170 /*=============================*/
171 /*@dependent@*/ /*@relnull@*/
172  void * te;
173 
174 /*@only@*/
175  void * _fnbf;
176 /*@only@*/ /*@null@*/
177  miRE exclude;
178  int nexclude;
179 /*@only@*/ /*@null@*/
180  miRE include;
181  int ninclude;
183 /*-----------------------------*/
184  uid_t uid;
185  gid_t gid;
187  int action;
188 /*@owned@*/ /*@relnull@*/
189  int * actions;
190 /*@owned@*/
191  struct fingerPrint_s * fps;
192 /*@owned@*/
193  const char ** obnl;
194 /*@owned@*/
195  const char ** odnl;
196 /*@unused@*/
197  rpmuint32_t * odil;
199 /*@only@*/ /*@relnull@*/
200  unsigned char * digests;
201  rpmuint32_t digestalgo;
202  rpmuint32_t digestlen;
204 /*@only@*/ /*@relnull@*/
205  const char * pretrans;
206 /*@only@*/ /*@relnull@*/
207  const char * pretransprog;
208 /*@only@*/ /*@relnull@*/
209  const char * posttrans;
210 /*@only@*/ /*@relnull@*/
211  const char * posttransprog;
212 /*@only@*/ /*@relnull@*/
213  const char * verifyscript;
214 /*@only@*/ /*@relnull@*/
215  const char * verifyscriptprog;
216 
217 /*@only@*/ /*@null@*/
218  char * fn;
219  size_t fnlen;
221  size_t astriplen;
222  size_t striplen;
223  unsigned long long archivePos;
224  unsigned long long archiveSize;
225  mode_t dperms;
226  mode_t fperms;
227 /*@only@*/ /*@null@*/
228  const char ** apath;
229  int mapflags;
230 /*@owned@*/ /*@null@*/
231  int * fmapflags;
232 /*@owned@*/
233  void * fsm;
234  rpmuint32_t color;
236  int isSource;
238 /*@owned@*/
239  rpmuint32_t * replacedSizes;
241  unsigned int record;
242  int magic;
243 #define RPMFIMAGIC 0x09697923
244 /*=============================*/
245 #if defined(__LCLINT__)
246 /*@refs@*/
247  int nrefs;
248 #endif
249 };
250 
251 #endif /* _RPMFI_INTERNAL */
252 
253 #ifdef __cplusplus
254 extern "C" {
255 #endif
256 
257 #if !defined(_RPMFI_NOMETHODS)
258 
260 
267 /*@unused@*/ /*@null@*/
268 rpmfi rpmfiUnlink (/*@killref@*/ /*@only@*/ /*@null@*/ rpmfi fi,
269  /*@null@*/ const char * msg)
270  /*@modifies fi @*/;
271 #define rpmfiUnlink(_fi, _msg) \
272  ((rpmfi) rpmioUnlinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
273 
280 /*@unused@*/ /*@null@*/
281 rpmfi rpmfiLink (/*@null@*/ rpmfi fi, /*@null@*/ const char * msg)
282  /*@modifies fi @*/;
283 #define rpmfiLink(_fi, _msg) \
284  ((rpmfi) rpmioLinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
285 
291 int rpmfiFC(/*@null@*/ rpmfi fi)
292  /*@*/;
293 
299 /*@unused@*/
300 int rpmfiFX(/*@null@*/ rpmfi fi)
301  /*@*/;
302 
309 /*@unused@*/
310 int rpmfiSetFX(/*@null@*/ rpmfi fi, int fx)
311  /*@modifies fi @*/;
312 
318 int rpmfiDC(/*@null@*/ rpmfi fi)
319  /*@*/;
320 
326 int rpmfiDX(/*@null@*/ rpmfi fi)
327  /*@*/;
328 
335 int rpmfiSetDX(/*@null@*/ rpmfi fi, int dx)
336  /*@modifies fi @*/;
337 
343 int rpmfiIsSource(/*@null@*/ rpmfi fi)
344  /*@*/;
345 
351 /*@observer@*/ /*@null@*/
352 extern const char * rpmfiBN(/*@null@*/ rpmfi fi)
353  /*@*/;
354 
360 /*@observer@*/ /*@null@*/
361 extern const char * rpmfiDN(/*@null@*/ rpmfi fi)
362  /*@*/;
363 
369 /*@observer@*/
370 extern const char * rpmfiFN(/*@null@*/ rpmfi fi)
371  /*@modifies fi @*/;
372 
378 extern size_t rpmfiFNMaxLen(/*@null@*/ rpmfi fi)
379  /*@*/;
380 
386 rpmuint32_t rpmfiFFlags(/*@null@*/ rpmfi fi)
387  /*@*/;
388 
395 rpmuint32_t rpmfiSetFFlags(/*@null@*/ rpmfi fi, rpmuint32_t FFlags)
396  /*@modifies fi @*/;
397 
403 rpmuint32_t rpmfiVFlags(/*@null@*/ rpmfi fi)
404  /*@*/;
405 
412 rpmuint32_t rpmfiSetVFlags(/*@null@*/ rpmfi fi, rpmuint32_t VFlags)
413  /*@modifies fi @*/;
414 
420 rpmuint16_t rpmfiFMode(/*@null@*/ rpmfi fi)
421  /*@*/;
422 
428 rpmfileState rpmfiFState(/*@null@*/ rpmfi fi)
429  /*@*/;
430 
437 rpmfileState rpmfiSetFState(/*@null@*/ rpmfi fi, rpmfileState fstate)
438  /*@modifies fi @*/;
439 
447 /*@observer@*/ /*@null@*/
448 extern const unsigned char * rpmfiDigest(/*@null@*/ rpmfi fi,
449  /*@out@*/ /*@null@*/ int * algop,
450  /*@out@*/ /*@null@*/ size_t * lenp)
451  /*@modifies *algop, *lenp @*/;
452 
458 /*@observer@*/ /*@null@*/
459 extern const char * rpmfiFLink(/*@null@*/ rpmfi fi)
460  /*@*/;
461 
467 rpmuint32_t rpmfiFSize(/*@null@*/ rpmfi fi)
468  /*@*/;
469 
475 rpmuint16_t rpmfiFRdev(/*@null@*/ rpmfi fi)
476  /*@*/;
477 
483 rpmuint32_t rpmfiFInode(/*@null@*/ rpmfi fi)
484  /*@*/;
485 
491 rpmuint32_t rpmfiColor(/*@null@*/ rpmfi fi)
492  /*@*/;
493 
499 rpmuint32_t rpmfiFColor(/*@null@*/ rpmfi fi)
500  /*@*/;
501 
507 /*@-exportlocal@*/
508 /*@observer@*/ /*@null@*/
509 extern const char * rpmfiFClass(/*@null@*/ rpmfi fi)
510  /*@*/;
511 /*@=exportlocal@*/
512 
518 /*@-exportlocal@*/
519 /*@observer@*/ /*@null@*/
520 extern const char * rpmfiFContext(/*@null@*/ rpmfi fi)
521  /*@*/;
522 /*@=exportlocal@*/
523 
530 rpmuint32_t rpmfiFDepends(/*@null@*/ rpmfi fi,
531  /*@out@*/ /*@null@*/ const rpmuint32_t ** fddictp)
532  /*@modifies *fddictp @*/;
533 
539 rpmuint32_t rpmfiFNlink(/*@null@*/ rpmfi fi)
540  /*@*/;
541 
547 rpmuint32_t rpmfiFMtime(/*@null@*/ rpmfi fi)
548  /*@*/;
549 
555 /*@observer@*/ /*@null@*/
556 extern const char * rpmfiFUser(/*@null@*/ rpmfi fi)
557  /*@*/;
558 
564 /*@observer@*/ /*@null@*/
565 extern const char * rpmfiFGroup(/*@null@*/ rpmfi fi)
566  /*@*/;
567 
573 void * rpmfiBloomFN(/*@null@*/ const rpmfi fi)
574  /*@*/;
575 
581 /*@null@*/
582 void * rpmfiExclude(/*@null@*/ const rpmfi fi)
583  /*@*/;
584 
590 int rpmfiNExclude(/*@null@*/ const rpmfi fi)
591  /*@*/;
592 
598 /*@null@*/
599 void * rpmfiInclude(/*@null@*/ const rpmfi fi)
600  /*@*/;
601 
607 int rpmfiNInclude(/*@null@*/ const rpmfi fi)
608  /*@*/;
609 
610 #if defined(_RPMFI_INTERNAL)
611 #include "fprint.h"
618 /*@null@*/
619 struct fingerPrint_s * rpmfiFpsIndex(rpmfi fi, int ix)
620  /*@*/;
621 
622 void rpmfiFpLookup(rpmfi fi, fingerPrintCache fpc)
623  /*@modifies fi, fpc @*/;
624 #endif
625 
631 /*@null@*/
632 void * rpmfiFNBF(rpmfi fi)
633  /*@*/;
634 
640 int rpmfiNext(/*@null@*/ rpmfi fi)
641  /*@modifies fi @*/;
642 
649 /*@null@*/
650 rpmfi rpmfiInit(/*@null@*/ rpmfi fi, int fx)
651  /*@modifies fi @*/;
652 
658 /*@unused@*/
659 int rpmfiNextD(/*@null@*/ rpmfi fi)
660  /*@modifies fi @*/;
661 
668 /*@unused@*/ /*@null@*/
669 rpmfi rpmfiInitD(/*@null@*/ rpmfi fi, int dx)
670  /*@modifies fi @*/;
671 
678 int rpmfiSetHeader(rpmfi fi, /*@null@*/ Header h)
679  /*@modifies fi, h @*/;
680 
686 /*@null@*/
687 rpmfi rpmfiFree(/*@killref@*/ /*@only@*/ /*@null@*/ rpmfi fi)
688  /*@globals fileSystem @*/
689  /*@modifies fi, fileSystem @*/;
690 #define rpmfiFree(_fi) \
691  ((rpmfi) rpmioFreePoolItem((rpmioItem)(_fi), __FUNCTION__, __FILE__, __LINE__))
692 
701 /*@null@*/
702 rpmfi rpmfiNew(/*@null@*/ const void * _ts, Header h, rpmTag tagN, int flags)
703  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
704  /*@modifies _ts, h, rpmGlobalMacroContext, fileSystem, internalState @*/;
705 
712 int rpmfiFStat(rpmfi fi, /*@out@*/ struct stat * st)
713  /*@modifies *st @*/;
714 
722 int rpmfiStat(rpmfi fi, const char * path, /*@out@*/ struct stat * st)
723  /*@modifies fi, *st @*/;
724 
731 /*@null@*/
732 void * rpmfiOpendir(rpmfi fi, const char * name)
733  /*@globals fileSystem, internalState @*/
734  /*@modifies fi, fileSystem, internalState @*/;
735 
746  /*@out@*/ const char *** fclassp, /*@out@*/ rpmuint32_t * fcp)
747  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
748  /*@modifies h, *fclassp, *fcp, rpmGlobalMacroContext,
749  fileSystem, internalState @*/;
750 
751 #ifdef DYING
752 
761 void rpmfiBuildFContexts(Header h,
762  /*@out@*/ const char *** fcontextp, /*@out@*/ rpmuint32_t * fcp)
763  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
764  /*@modifies h, *fcontextp, *fcp, rpmGlobalMacroContext,
765  fileSystem, internalState @*/;
766 
776 void rpmfiBuildFSContexts(Header h,
777  /*@out@*/ const char *** fcontextp, /*@out@*/ rpmuint32_t * fcp)
778  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
779  /*@modifies h, *fcontextp, *fcp, rpmGlobalMacroContext,
780  fileSystem, internalState @*/;
781 
791 void rpmfiBuildREContexts(Header h,
792  /*@out@*/ const char *** fcontextp, /*@out@*/ rpmuint32_t * fcp)
793  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
794  /*@modifies h, *fcontextp, *fcp, rpmGlobalMacroContext,
795  fileSystem, internalState @*/;
796 #endif
797 
808 void rpmfiBuildFDeps(Header h, rpmTag tagN,
809  /*@out@*/ const char *** fdepsp, /*@out@*/ rpmuint32_t * fcp)
810  /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
811  /*@modifies h, *fdepsp, *fcp,
812  rpmGlobalMacroContext, fileSystem, internalState @*/;
813 
820 int rpmfiCompare(const rpmfi afi, const rpmfi bfi)
821  /*@*/;
822 
830 int rpmfiDecideFate(const rpmfi ofi, rpmfi nfi, int skipMissing)
831  /*@globals h_errno, fileSystem, internalState @*/
832  /*@modifies nfi, fileSystem, internalState @*/;
833 
839 /*@-redef@*/
840 /*@observer@*/
841 const char * rpmfiTypeString(rpmfi fi)
842  /*@*/;
843 /*@=redef@*/
844 
850 /*@null@*/
852  /*@modifies relocs@*/;
853 
860 /*@only@*/ /*@null@*/
861 rpmRelocation rpmfiDupeRelocations(rpmRelocation relocs, int * nrelocsp)
862  /*@modifies *nrelocsp @*/;
863 
872 int rpmfiAddRelocation(rpmRelocation * relp, int * nrelp,
873  const char * oldPath, const char * newPath)
874  /*@modifies *relp, *nrelp @*/;
875 
877 #endif /* _RPMFI_NOMETHODS */
878 
879 #ifdef __cplusplus
880 }
881 #endif
882 
883 #endif /* H_RPMDS */
const char * rpmfiFClass(rpmfi fi)
Return current file class from file info set.
Definition: rpmfi.c:383
rpmuint32_t rpmfiFSize(rpmfi fi)
Return current file size from file info set.
Definition: rpmfi.c:328
int rpmfiAddRelocation(rpmRelocation *relp, int *nrelp, const char *oldPath, const char *newPath)
Add relocation element to array.
Definition: rpmfi.c:1726
rpmuint32_t rpmfiSetFFlags(rpmfi fi, rpmuint32_t FFlags)
Set current file flags in file info set.
Definition: rpmfi.c:228
rpmuint32_t rpmfiFInode(rpmfi fi)
Return current file inode from file info set.
Definition: rpmfi.c:350
void * rpmfiExclude(const rpmfi fi)
Return file info exclude patterns.
Definition: rpmfi.c:489
int rpmfiStat(rpmfi fi, const char *path, struct stat *st)
Return lstat(2) data of path from file info set.
Definition: rpmfi.c:1803
int rpmfiDX(rpmfi fi)
Return current directory index from file info set.
Definition: rpmfi.c:120
const char * rpmfiFContext(rpmfi fi)
Return current file security context from file info set.
Definition: rpmfi.c:395
void rpmfiFpLookup(rpmfi fi, fingerPrintCache fpc)
Definition: rpmfi.c:518
rpmfileState rpmfiSetFState(rpmfi fi, rpmfileState fstate)
Set current file state in file info set.
Definition: rpmfi.c:287
int rpmfiNextD(rpmfi fi)
Return next directory iterator index.
Definition: rpmfi.c:562
rpmuint32_t rpmfiFFlags(rpmfi fi)
Return current file flags from file info set.
Definition: rpmfi.c:217
rpmRelocation rpmfiFreeRelocations(rpmRelocation relocs)
Free relocation array.
Definition: rpmfi.c:1738
The Header data structure.
int rpmfiDC(rpmfi fi)
Return directory count from file info set.
Definition: rpmfi.c:92
#define rpmfiUnlink(_fi, _msg)
Definition: rpmfi.h:271
Definition: rpmfi.h:30
int rpmfiSetHeader(rpmfi fi, Header h)
Link a header to a file info set.
Definition: rpmfi.c:1275
rpmuint16_t rpmfiFMode(rpmfi fi)
Return current file mode from file info set.
Definition: rpmfi.c:265
rpmuint16_t rpmfiFRdev(rpmfi fi)
Return current file rdev from file info set.
Definition: rpmfi.c:339
unsigned short rpmuint16_t
Definition: rpmiotypes.h:27
Definition: rpmfi.h:33
int rpmfiFStat(rpmfi fi, struct stat *st)
Return current stat(2) data from file info set.
Definition: rpmfi.c:1776
rpmfi rpmfiNew(const void *_ts, Header h, rpmTag tagN, int flags)
Create and load a file info set.
Definition: rpmfi.c:1403
rpmFileTypes_e
File types.
Definition: rpmfi.h:26
void rpmfiBuildFDeps(Header h, rpmTag tagN, const char ***fdepsp, rpmuint32_t *fcp)
Retrieve per-file dependencies from header.
Definition: rpmfi.c:2137
const char * rpmfiTypeString(rpmfi fi)
Return formatted string representation of package disposition.
Definition: rpmfi.c:767
struct fingerPrint_s * rpmfiFpsIndex(rpmfi fi, int ix)
Definition: rpmfi.c:509
unsigned int rpmuint32_t
Definition: rpmiotypes.h:28
rpmRelocation rpmfiDupeRelocations(rpmRelocation relocs, int *nrelocsp)
Duplicate a relocation array.
Definition: rpmfi.c:1751
Definition: rpmfi.h:28
unsigned char rpmuint8_t
Private int typedefs to avoid C99 portability issues.
Definition: rpmiotypes.h:26
struct rpmfi_s * rpmfi
File info tag sets from a header, so that a header can be discarded early.
Definition: rpmfi.h:83
RPM pattern matching.
int rpmfiFX(rpmfi fi)
Return current file index from file info set.
Definition: rpmfi.c:103
const char * rpmfiFN(rpmfi fi)
Return current file name from file info set.
Definition: rpmfi.c:163
struct miRE_s * miRE
Definition: mire.h:60
void * rpmfiBloomFN(const rpmfi fi)
Return file path Bloom filter.
Definition: rpmfi.c:482
void * rpmfiInclude(const rpmfi fi)
Return file info include patterns.
Definition: rpmfi.c:499
rpmfileState rpmfiFState(rpmfi fi)
Return current file state from file info set.
Definition: rpmfi.c:276
int rpmfiSetFX(rpmfi fi, int fx)
Set current file index in file info set.
Definition: rpmfi.c:108
void * rpmfiOpendir(rpmfi fi, const char *name)
Return directory stream onto file info set.
Definition: rpmfi.c:1834
rpmuint32_t rpmfiSetVFlags(rpmfi fi, rpmuint32_t VFlags)
Set current file verify flags in file info set.
Definition: rpmfi.c:252
Definition: rpmfi.h:32
int _rpmfi_debug
Definition: rpmfi.c:67
int rpmfiNInclude(const rpmfi fi)
Return no.
Definition: rpmfi.c:504
Definition: rpmfi.h:27
rpmuint32_t rpmfiFColor(rpmfi fi)
Return current file color bits from file info set.
Definition: rpmfi.c:371
void * rpmfiFNBF(rpmfi fi)
Return FN Bloom filter from file info set.
Definition: rpmfi.c:181
rpmuint32_t rpmfiFMtime(rpmfi fi)
Return current file modify time from file info set.
Definition: rpmfi.c:447
rpmuint32_t rpmfiFNlink(rpmfi fi)
Return (calculated) current file nlink count from file info set.
Definition: rpmfi.c:427
Identify a file name path by a unique "finger print".
rpmfi rpmfiInitD(rpmfi fi, int dx)
Initialize directory iterator index.
Definition: rpmfi.c:582
static rpmdc dc
Definition: rpmdigest.c:91
rpmuint32_t rpmfiVFlags(rpmfi fi)
Return current file verify flags from file info set.
Definition: rpmfi.c:241
int rpmfiSetDX(rpmfi fi, int dx)
Set current directory index in file info set.
Definition: rpmfi.c:125
#define rpmfiFree(_fi)
Definition: rpmfi.h:690
int rpmfiIsSource(rpmfi fi)
Return source rpm marker from file info set.
Definition: rpmfi.c:136
const char const bson int mongo_write_concern int flags
Definition: mongo.h:485
const char * rpmfiFGroup(rpmfi fi)
Return current file group from file info set.
Definition: rpmfi.c:470
enum rpmfileAttrs_e rpmfileAttrs
File Attributes.
int rpmfiNext(rpmfi fi)
Return next file iterator index.
Definition: rpmfi.c:526
Associates a trailing sub-directory and final base name with an existing directory finger print...
Definition: fprint.h:50
rpmuint32_t rpmfiFDepends(rpmfi fi, const rpmuint32_t **fddictp)
Return current file depends dictionary from file info set.
Definition: rpmfi.c:406
int rpmfiNExclude(const rpmfi fi)
Return no.
Definition: rpmfi.c:494
rpmfileAttrs_e
File Attributes.
Definition: rpmfi.h:51
int rpmfiFC(rpmfi fi)
Return file count from file info set.
Definition: rpmfi.c:87
rpmfileState_e
File States (when installed).
Definition: rpmfi.h:39
enum rpmfileState_e rpmfileState
File States (when installed).
const char const int i
Definition: bson.h:778
int rpmfiCompare(const rpmfi afi, const rpmfi bfi)
Return file info comparison.
Definition: rpmfi.c:637
struct fprintCache_s * fingerPrintCache
Definition: fprint.h:13
rpmfi fi
Definition: filetriggers.h:15
rpmuint32_t rpmfiColor(rpmfi fi)
Return union of all file color bits from file info set.
Definition: rpmfi.c:361
const unsigned char * rpmfiDigest(rpmfi fi, int *algop, size_t *lenp)
Return current file (binary) digest from file info set.
Definition: rpmfi.c:300
Definition: rpmfi.h:29
Definition: rpmfi.h:31
static const char * name
const char * rpmfiFLink(rpmfi fi)
Return current file linkto (i.e.
Definition: rpmfi.c:317
rpmfi rpmfiInit(rpmfi fi, int fx)
Initialize file iterator index.
Definition: rpmfi.c:548
void rpmfiBuildFClasses(Header h, const char ***fclassp, rpmuint32_t *fcp)
Retrieve file classes from header.
Definition: rpmfi.c:1878
enum rpmTag_e rpmTag
Definition: rpmtag.h:470
size_t rpmfiFNMaxLen(rpmfi fi)
Return maximum file name length from file info set.
Definition: rpmfi.c:212
#define rpmfiLink(_fi, _msg)
Definition: rpmfi.h:283
const char * rpmfiBN(rpmfi fi)
Return current base name from file info set.
Definition: rpmfi.c:141
const char * rpmfiDN(rpmfi fi)
Return current directory name from file info set.
Definition: rpmfi.c:152
int rpmfiDecideFate(const rpmfi ofi, rpmfi nfi, int skipMissing)
Return file disposition.
Definition: rpmfi.c:671
const char * rpmfiFUser(rpmfi fi)
Return current file owner from file info set.
Definition: rpmfi.c:458
int j
Definition: mongo.h:438
enum rpmFileTypes_e rpmFileTypes
File types.