#include #include #include #include #include #include "dump.h" #include "package.h" static int foreach(struct package *p, const char *name, const char *path, void *u) { struct stat st; uint32_t size; if (stat(path, &st) < 0) { if (errno == ENOENT) size = 0; else { fprintf(stderr, "stat(%s) failed: %s\n", path, strerror(errno)); return -1; } } else size = (uint32_t) st.st_size; printf("%s (%u bytes)\n", name, size); return 0; } int dump(struct syrep_db_context *c) { assert(c); return package_foreach(c->package, foreach, NULL); }