Commits


portable: initial Linux compilation This commit modifies the GoT main branch to be able to compile it under linux.


verify object ID checksums while loose objects are being accessed


add checksum parameters to got_inflate functions which did not provide them yet


raw object size should not include the length of the object's header This way, the size of a raw object is the same regardless of whether the object was found in a loose object file or in a pack file.


remove stray debug print which was accidentally committed


fix file descriptor leak when got-read-object returns a raw object


implement raw object data access; this will be required for packing


make close(2) failure checks consistent; check 'close() == -1' everywhere ok millert, naddy


Stop including <sys/syslimits.h> directly. POSIX says the limits defined there are available from <limits.h>, which almost all affected source files already included anyway. ok millert stsp


do not rely on <zlib.h> to pull in <unistd.h> ok stsp


include <limits.h> instead of <sys/limits.h>; patch by Thomas Klausner


rename got_error_prefix_errno() to got_error_from_errno()


while (1) -> for (;;)


got_error_from_errno -> got_error_prefix_errno also add got_error_prefix_errno2 and got_error_prefix_errno3 which should hopefully all be merged into a single function with variadic args (but can't alloc mem)


check for errors from close(2)


eliminate got_object_open() round-trip when opening commits


more support for tag objects; new code is not yet reachable


init output param in {parse,read}_object_header


don't be noisy on stderr when Ctrl-C is hit


abort checkout operations cleanly when Ctrl-C is hit


fix 'make PROFILE=1' build


start reading pack files with privsep; still WIP


implement fork+exec (and by the way, fix the build...)