filelist.h 1013 Bytes
Newer Older
1 2 3 4 5 6 7 8
#ifndef REPREPRO_FILELIST_H
#define REPREPRO_FILELIST_H

#ifndef REPREPRO_RELEASE_H
#include "release.h"
#endif

struct filelist_list;
9
struct package;
10 11 12

retvalue filelist_init(struct filelist_list **list);

13
retvalue filelist_addpackage(struct filelist_list *, struct package *);
14 15 16 17

retvalue filelist_write(struct filelist_list *list, struct filetorelease *file);

void filelist_free(/*@only@*/struct filelist_list *);
18

19
retvalue fakefilelist(const char *filekey);
20 21
retvalue filelists_translate(struct table *, struct table *);

22 23 24
/* for use in routines reading the data: */
struct filelistcompressor {
	unsigned int offsets[256];
25 26
	size_t size, len;
	unsigned int dirdepth;
27 28 29 30
	char *filelist;
};
retvalue filelistcompressor_setup(/*@out@*/struct filelistcompressor *);
retvalue filelistcompressor_add(struct filelistcompressor *, const char *, size_t);
31
retvalue filelistcompressor_finish(struct filelistcompressor *, /*@out@*/char **, /*@out@*/size_t *);
32
void filelistcompressor_cancel(struct filelistcompressor *);
33
#endif