24 #if defined(_RPMREPO_INTERNAL)
32 const char * xml_init;
34 const char * xml_qfmt;
36 const char * xml_fini;
38 const char ** sql_init;
40 const char * sql_qfmt;
43 const char ** sql_fini;
46 const char * yaml_init;
48 const char * yaml_qfmt;
50 const char * yaml_fini;
52 const char * Packages_init;
56 const char * Packages_fini;
58 const char * Sources_init;
62 const char * Sources_fini;
65 #if defined(WITH_SQLITE)
78 #define _RFB(n) ((1U << (n)) | 0x40000000)
83 typedef enum rpmrepoFlags_e {
85 REPO_FLAGS_DRYRUN = _RFB( 0),
86 REPO_FLAGS_PRETTY = _RFB( 1),
87 REPO_FLAGS_DATABASE = _RFB( 2),
88 REPO_FLAGS_CHECKTS = _RFB( 3),
89 REPO_FLAGS_SPLIT = _RFB( 4),
90 REPO_FLAGS_NOFOLLOW = _RFB( 5),
91 REPO_FLAGS_UNIQUEMDFN = _RFB( 6),
96 #define REPO_ISSET(_FLAG) ((repo->flags & ((REPO_FLAGS_##_FLAG) & ~0x40000000)) != REPO_FLAGS_NONE)
119 const char * basedir;
121 const char * baseurl;
124 const char * groupfile;
127 const char * outputdir;
133 const char * tempdir;
135 const char * finaldir;
161 struct rpmrfile_s primary;
162 struct rpmrfile_s filelists;
163 struct rpmrfile_s other;
164 struct rpmrfile_s repomd;
166 #if defined(__LCLINT__)
186 #define rpmrepoUnlink(_repo) \
187 ((rpmrepo)rpmioUnlinkPoolItem((rpmioItem)(_repo), __FUNCTION__, __FILE__, __LINE__))
197 #define rpmrepoLink(_repo) \
198 ((rpmrepo)rpmioLinkPoolItem((rpmioItem)(_repo), __FUNCTION__, __FILE__, __LINE__))
209 #define rpmrepoFree(_repo) \
210 ((rpmrepo)rpmioFreePoolItem((rpmioItem)(_repo), __FUNCTION__, __FILE__, __LINE__))
static const char * suffix[]
int rpmrepoDoFinalMove(rpmrepo repo)
Rename temporary repository to final paths.
static const char Packages_qfmt[]
void rpmrepoError(int lvl, const char *fmt,...)
Print an error message and exit (if requested).
struct rpmrfile_s * rpmrfile
#define rpmrepoLink(_repo)
static PyObject *int type
const char ** rpmrepoGetFileList(rpmrepo repo, const char *roots[], const char *ext)
Walk file/directory trees, looking for files with an extension.
const char * rpmrepoRealpath(const char *lpath)
Return realpath(3) canonicalized absolute path.
int rpmrepoDoRepoMetadata(rpmrepo repo)
Write repository manifest.
int rpmrepoDoPkgMetadata(rpmrepo repo)
Write repository metadata files.
#define rpmrepoFree(_repo)
#define rpmrepoUnlink(_repo)
struct rpmrepo_s * rpmrepo
static ARGV_t exclude_patterns
The FD_t File Handle data structure.
static ARGV_t include_patterns
int rpmrepoCheckTimeStamps(rpmrepo repo)
Check that repository time stamp is newer than any contained package.
rpmrepo rpmrepoNew(char **av, int flags)
Create and load a repo wrapper.
static const char Sources_qfmt[]
int rpmrepoTestSetupDirs(rpmrepo repo)
Test for repository sanity.
const unsigned char * digest