diff options
Diffstat (limited to '')
-rw-r--r-- | filelist.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/filelist.h b/filelist.h new file mode 100644 index 0000000..b1ab52a --- /dev/null +++ b/filelist.h @@ -0,0 +1,33 @@ +#ifndef REPREPRO_FILELIST_H +#define REPREPRO_FILELIST_H + +#ifndef REPREPRO_RELEASE_H +#include "release.h" +#endif + +struct filelist_list; +struct package; + +retvalue filelist_init(struct filelist_list **list); + +retvalue filelist_addpackage(struct filelist_list *, struct package *); + +retvalue filelist_write(struct filelist_list *list, struct filetorelease *file); + +void filelist_free(/*@only@*/struct filelist_list *); + +retvalue fakefilelist(const char *filekey); +retvalue filelists_translate(struct table *, struct table *); + +/* for use in routines reading the data: */ +struct filelistcompressor { + unsigned int offsets[256]; + size_t size, len; + unsigned int dirdepth; + char *filelist; +}; +retvalue filelistcompressor_setup(/*@out@*/struct filelistcompressor *); +retvalue filelistcompressor_add(struct filelistcompressor *, const char *, size_t); +retvalue filelistcompressor_finish(struct filelistcompressor *, /*@out@*/char **, /*@out@*/size_t *); +void filelistcompressor_cancel(struct filelistcompressor *); +#endif |