From 7672db20c2060f20b01788e4a4289ebc5f818605 Mon Sep 17 00:00:00 2001 From: Bryan Larsen Date: Fri, 8 Jul 2005 16:51:55 -0700 Subject: [PATCH] Expose object ID computation functions. This patch makes the first half of write_sha1_file() and index_fd() externally visible, to allow callers to compute the object ID without actually storing it in the object database. [JC demangled the whitespaces himself because he liked the patch so much, and reworked the interface to index_fd() slightly, taking suggestion from Linus and of his own.] Signed-off-by: Bryan Larsen Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- cache.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'cache.h') diff --git a/cache.h b/cache.h index ff0321341d..84d43d366c 100644 --- a/cache.h +++ b/cache.h @@ -138,7 +138,7 @@ extern int remove_cache_entry_at(int pos); extern int remove_file_from_cache(char *path); extern int ce_same_name(struct cache_entry *a, struct cache_entry *b); extern int ce_match_stat(struct cache_entry *ce, struct stat *st); -extern int index_fd(unsigned char *sha1, int fd, struct stat *st); +extern int index_fd(unsigned char *sha1, int fd, struct stat *st, int write_object, const char *type); extern void fill_stat_cache_info(struct cache_entry *ce, struct stat *st); struct cache_file { @@ -172,6 +172,12 @@ extern int sha1_object_info(const unsigned char *, char *, unsigned long *); extern void * unpack_sha1_file(void *map, unsigned long mapsize, char *type, unsigned long *size); extern void * read_sha1_file(const unsigned char *sha1, char *type, unsigned long *size); extern int write_sha1_file(void *buf, unsigned long len, const char *type, unsigned char *return_sha1); +extern char *write_sha1_file_prepare(void *buf, + unsigned long len, + const char *type, + unsigned char *sha1, + unsigned char *hdr, + int *hdrlen); extern int check_sha1_signature(const unsigned char *sha1, void *buf, unsigned long size, const char *type); -- cgit v1.2.1