summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 24778e3)
raw | patch | inline | side by side (parent: 24778e3)
author | Linus Torvalds <torvalds@ppc970.osdl.org> | |
Fri, 8 Apr 2005 22:01:15 +0000 (15:01 -0700) | ||
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | |
Fri, 8 Apr 2005 22:01:15 +0000 (15:01 -0700) |
And fix up header declarations.
cache.h | patch | blob | history | |
read-cache.c | patch | blob | history |
index 17328597657d2ae4a944a49b337a4beef60942ec..864f70bfe5aad68614a50c825d724833294834de 100644 (file)
--- a/cache.h
+++ b/cache.h
/* Read and unpack a sha1 file into memory, write memory to a sha1 file */
extern void * map_sha1_file(unsigned char *sha1, unsigned long *size);
+extern void * unpack_sha1_file(void *map, unsigned long mapsize, char *type, unsigned long *size);
extern void * read_sha1_file(unsigned char *sha1, char *type, unsigned long *size);
extern int write_sha1_file(char *buf, unsigned len);
extern int check_sha1_signature(unsigned char *sha1, void *buf, unsigned long size);
diff --git a/read-cache.c b/read-cache.c
index 4d750506e97af68013aa25e192c569da557701fd..2ede67dbe17530e5b6dd4893430327b9121751fb 100644 (file)
--- a/read-cache.c
+++ b/read-cache.c
return base;
}
+int check_sha1_signature(unsigned char *sha1, void *map, unsigned long size)
+{
+ unsigned char real_sha1[20];
+ SHA_CTX c;
+
+ SHA1_Init(&c);
+ SHA1_Update(&c, map, size);
+ SHA1_Final(real_sha1, &c);
+ return memcmp(sha1, real_sha1, 20) ? -1 : 0;
+}
+
void *map_sha1_file(unsigned char *sha1, unsigned long *size)
{
char *filename = sha1_file_name(sha1);