summaryrefslogtreecommitdiff
path: root/pack.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-12-05 15:11:07 -0800
committerJunio C Hamano <gitster@pobox.com>2011-12-05 15:11:07 -0800
commitd7194d318b98964a0c9705a02b4c3e3035642f03 (patch)
treec6cd20ea47608813b2f6154fdde59743414ebd12 /pack.h
parentc4c9a63b5434d008fdbfc8c41240d642cbe5147e (diff)
parent1e49f22f07881dffc04f8f09d4ad4e4a65b85b09 (diff)
Merge branch 'nd/fsck-progress'
* nd/fsck-progress: fsck: print progress fsck: avoid reading every object twice verify_packfile(): check as many object as possible in a pack fsck: return error code when verify_pack() goes wrong
Diffstat (limited to 'pack.h')
-rw-r--r--pack.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/pack.h b/pack.h
index 722a54e00a..324a1d73c0 100644
--- a/pack.h
+++ b/pack.h
@@ -70,10 +70,14 @@ struct pack_idx_entry {
off_t offset;
};
+
+struct progress;
+typedef int (*verify_fn)(const unsigned char*, enum object_type, unsigned long, void*, int*);
+
extern const char *write_idx_file(const char *index_name, struct pack_idx_entry **objects, int nr_objects, const struct pack_idx_option *, unsigned char *sha1);
extern int check_pack_crc(struct packed_git *p, struct pack_window **w_curs, off_t offset, off_t len, unsigned int nr);
extern int verify_pack_index(struct packed_git *);
-extern int verify_pack(struct packed_git *);
+extern int verify_pack(struct packed_git *, verify_fn fn, struct progress *, uint32_t);
extern void fixup_pack_header_footer(int, unsigned char *, const char *, uint32_t, unsigned char *, off_t);
extern char *index_pack_lockfile(int fd);
extern int encode_in_pack_object_header(enum object_type, uintmax_t, unsigned char *);