rpm  5.4.15
rpmwf.h
Go to the documentation of this file.
1 #ifndef H_RPMWF
2 #define H_RPMWF
3 
9 #include <rpmxar.h>
10 
11 /*@unchecked@*/
12 extern int _rpmwf_debug;
13 
16 typedef /*@abstract@*/ /*@refcounted@*/ struct rpmwf_s * rpmwf;
17 
18 #ifdef _RPMWF_INTERNAL
19 struct rpmwf_s {
20  struct rpmioItem_s _item;
21 /*@relnull@*/
22  const char * fn;
23 /*@relnull@*/
24  FD_t fd;
25 /*@relnull@*/ /*@owned@*/
26  void * b;
27  size_t nb;
28 /*@relnull@*/ /*@dependent@*/
29  char * l;
30  size_t nl;
31 /*@relnull@*/ /*@dependent@*/
32  char * s;
33  size_t ns;
34 /*@relnull@*/ /*@dependent@*/
35  char * h;
36  size_t nh;
37 /*@relnull@*/ /*@dependent@*/
38  char * p;
39  size_t np;
40 /*@relnull@*/ /*@refcounted@*/
41  rpmxar xar;
42 };
43 #endif
44 
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
50 rpmRC rpmwfPushXAR(rpmwf wf, const char * fn)
51  /*@globals fileSystem @*/
52  /*@modifies wf, fileSystem @*/;
53 
54 rpmRC rpmwfPullXAR(rpmwf wf, const char * fn)
55  /*@globals fileSystem @*/
56  /*@modifies wf, fileSystem @*/;
57 
59  /*@globals fileSystem, internalState @*/
60  /*@modifies wf, fileSystem, internalState @*/;
61 
62 rpmRC rpmwfInit(rpmwf wf, const char * fn, const char * fmode)
63  /*@globals fileSystem, internalState @*/
64  /*@modifies wf, fileSystem, internalState @*/;
65 
66 rpmRC rpmwfPushRPM(rpmwf wf, const char * fn)
67  /*@globals fileSystem @*/
68  /*@modifies wf, fileSystem @*/;
69 
76 /*@unused@*/ /*@null@*/
77 rpmwf rpmwfUnlink (/*@killref@*/ /*@only@*/ /*@null@*/ rpmwf wf,
78  /*@null@*/ const char * msg)
79  /*@modifies wf @*/;
80 #define rpmwfUnlink(_wf, _msg) \
81  ((rpmwf)rpmioUnlinkPoolItem((rpmioItem)(_wf), _msg, __FILE__, __LINE__))
82 
89 /*@unused@*/ /*@newref@*/ /*@null@*/
90 rpmwf rpmwfLink (/*@null@*/ rpmwf wf, /*@null@*/ const char * msg)
91  /*@modifies wf @*/;
92 #define rpmwfLink(_wf, _msg) \
93  ((rpmwf)rpmioLinkPoolItem((rpmioItem)(_wf), _msg, __FILE__, __LINE__))
94 
95 /*@null@*/
96 rpmwf rpmwfFree(/*@only@*/ rpmwf wf)
97  /*@globals fileSystem, internalState @*/
98  /*@modifies wf, fileSystem, internalState @*/;
99 #define rpmwfFree(_wf) \
100  ((rpmwf)rpmioFreePoolItem((rpmioItem)(_wf), __FUNCTION__, __FILE__, __LINE__))
101 
102 /*@relnull@*/
103 rpmwf rpmwfNew(const char * fn)
104  /*@globals fileSystem, internalState @*/
105  /*@modifies fileSystem, internalState @*/;
106 
107 /*@relnull@*/
108 rpmwf rdRPM(const char * rpmfn)
109  /*@globals fileSystem, internalState @*/
110  /*@modifies fileSystem, internalState @*/;
111 
112 /*@relnull@*/
113 rpmwf rdXAR(const char * xarfn)
114  /*@globals fileSystem, internalState @*/
115  /*@modifies fileSystem, internalState @*/;
116 
117 rpmRC wrXAR(const char * xarfn, rpmwf wf)
118  /*@globals fileSystem @*/
119  /*@modifies wf, fileSystem @*/;
120 
121 rpmRC wrRPM(const char * rpmfn, rpmwf wf)
122  /*@globals fileSystem, internalState @*/
123  /*@modifies wf, fileSystem, internalState @*/;
124 
125 
126 #ifdef __cplusplus
127 }
128 #endif
129 
130 #endif /* H_RPMWF */
Structure(s)and methods for a XAR archive wrapper format.
const bson * b
Definition: bson.h:280
struct rpmxar_s * rpmxar
Definition: rpmxar.h:14
#define rpmwfLink(_wf, _msg)
Definition: rpmwf.h:92
rpmRC rpmwfPushXAR(rpmwf wf, const char *fn)
Definition: rpmwf.c:20
rpmRC rpmwfPushRPM(rpmwf wf, const char *fn)
Definition: rpmwf.c:156
rpmwf rpmwfNew(const char *fn)
Definition: rpmwf.c:230
rpmRC rpmwfPullXAR(rpmwf wf, const char *fn)
Definition: rpmwf.c:52
rpmRC rpmwfInit(rpmwf wf, const char *fn, const char *fmode)
Definition: rpmwf.c:112
int _rpmwf_debug
Definition: rpmwf.c:18
struct rpmwf_s * rpmwf
Definition: rpmwf.h:16
rpmRC wrXAR(const char *xarfn, rpmwf wf)
Definition: rpmwf.c:314
The FD_t File Handle data structure.
#define rpmwfFree(_wf)
Definition: rpmwf.h:99
rpmRC rpmwfFini(rpmwf wf)
Definition: rpmwf.c:88
#define rpmwfUnlink(_wf, _msg)
Definition: rpmwf.h:80
enum rpmRC_e rpmRC
RPM return codes.
rpmwf rdXAR(const char *xarfn)
Definition: rpmwf.c:289
rpmRC wrRPM(const char *rpmfn, rpmwf wf)
Definition: rpmwf.c:340
rpmwf rdRPM(const char *rpmfn)
Definition: rpmwf.c:269
const char * ns
Definition: mongo.h:326