X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=inline;f=pack.h;h=eb07b033ae54941d4bd00ee6bc30c7d50fd039b0;hb=5f468c4805c785115cd9c5f6a8f299f23a9034f5;hp=83ac3218bd2c3fb0a18770338efa3aee79be082e;hpb=01247d87421d621db3866ce7f2124784fc7f46e5;p=git.git diff --git a/pack.h b/pack.h index 83ac3218b..eb07b033a 100644 --- a/pack.h +++ b/pack.h @@ -1,30 +1,22 @@ #ifndef PACK_H #define PACK_H -/* - * The packed object type is stored in 3 bits. - * The type value 0 is a reserved prefix if ever there is more than 7 - * object types, or any future format extensions. - */ -enum object_type { - OBJ_EXT = 0, - OBJ_COMMIT = 1, - OBJ_TREE = 2, - OBJ_BLOB = 3, - OBJ_TAG = 4, - /* 5/6 for future expansion */ - OBJ_DELTA = 7, -}; +#include "object.h" /* * Packed object header */ #define PACK_SIGNATURE 0x5041434b /* "PACK" */ #define PACK_VERSION 2 +#define pack_version_ok(v) ((v) == htonl(2) || (v) == htonl(3)) struct pack_header { unsigned int hdr_signature; unsigned int hdr_version; unsigned int hdr_entries; }; +extern int verify_pack(struct packed_git *, int); +extern int check_reuse_pack_delta(struct packed_git *, unsigned long, + unsigned char *, unsigned long *, + enum object_type *); #endif