rpm 5.2.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

rpmns.h
Go to the documentation of this file.
1 #ifndef H_RPMNS
2 #define H_RPMNS
3
11 /*@-exportlocal@*/
12 /*@unchecked@*/
13 extern int _rpmns_debug;
14 /*@=exportlocal@*/
15
16 /*@unchecked@*/ /*@observer@*/ /*@relnull@*/
17 extern const char *_rpmns_N_at_A;
18
19 typedef /*@abstract@*/ struct rpmns_s * rpmns;
20
24 typedef enum nsType_e {
25 RPMNS_TYPE_UNKNOWN = 0,
26 RPMNS_TYPE_STRING = (1 << 0),
27 RPMNS_TYPE_PATH = (1 << 1),
28 RPMNS_TYPE_DSO = (1 << 2),
29 RPMNS_TYPE_FUNCTION = (1 << 3),
30 RPMNS_TYPE_ARCH = (1 << 4),
31 RPMNS_TYPE_VERSION = (1 << 5),
32 RPMNS_TYPE_COMPOUND = (1 << 6),
33 /* 7 unused */
34 RPMNS_TYPE_NAMESPACE= (1 << 8),
35 RPMNS_TYPE_RPMLIB = (1 << 9),
36 RPMNS_TYPE_CPUINFO = (1 << 10),
37 RPMNS_TYPE_GETCONF = (1 << 11),
38 RPMNS_TYPE_UNAME = (1 << 12),
39 RPMNS_TYPE_SONAME = (1 << 13),
40 RPMNS_TYPE_ACCESS = (1 << 14),
41 RPMNS_TYPE_TAG = (1 << 15),
42 RPMNS_TYPE_USER = (1 << 16),
43 RPMNS_TYPE_GROUP = (1 << 17),
44 RPMNS_TYPE_MOUNTED = (1 << 18),
45 RPMNS_TYPE_DISKSPACE= (1 << 19),
46 RPMNS_TYPE_DIGEST = (1 << 20),
47 RPMNS_TYPE_GNUPG = (1 << 21),
48 RPMNS_TYPE_MACRO = (1 << 22),
49 RPMNS_TYPE_ENVVAR = (1 << 23),
50 RPMNS_TYPE_RUNNING = (1 << 24),
51 RPMNS_TYPE_SANITY = (1 << 25),
52 RPMNS_TYPE_VCHECK = (1 << 26),
53 RPMNS_TYPE_SIGNATURE= (1 << 27),
54 RPMNS_TYPE_VERIFY = (1 << 28),
55 RPMNS_TYPE_CONFIG = (1 << 29),
56 } nsType;
57
58 #if defined(_RPMNS_INTERNAL)
59
62 struct rpmns_s {
63 /*@owned@*/
64 const char * str;
65 nsType Type;
66 /*@dependent@*/ /*@null@*/
67 const char * NS;
68 /*@dependent@*/ /*@relnull@*/
69 const char * N;
70 /*@dependent@*/ /*@null@*/
71 const char * A;
72 evrFlags Flags;
73 };
74 #endif /* _RPMNS_INTERNAL */
75
76 #ifdef __cplusplus
77 extern "C" {
78 #endif
79
85 nsType rpmnsArch(const char * str)
86 /*@*/;
87
93 nsType rpmnsProbe(const char * str)
94 /*@*/;
95
101 nsType rpmnsClassify(const char * str)
102 /*@*/;
103
110 int rpmnsParse(const char * str, rpmns ns)
111 /*@globals rpmGlobalMacroContext, h_errno, internalState @*/
112 /*@modifies ns, rpmGlobalMacroContext, internalState @*/;
113
117 void rpmnsClean(void)
118 /*@globals internalState @*/
119 /*@modifies internalState @*/;
120
131 rpmRC rpmnsProbeSignature(void * _ts, const char * fn,
132 /*@null@*/ const char * sigfn,
133 /*@null@*/ const char * pubfn,
134 /*@null@*/ const char * pubid,
135 int flags)
136 /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
137 /*@modifies _ts, rpmGlobalMacroContext, fileSystem, internalState @*/;
138
139 #ifdef __cplusplus
140 }
141 #endif
142
143 #endif /* H_RPMNS */