Commit Briefs
fix file corruption regression in 'got checkout' caused by commit db696021
got-read-pack must rewind its files temporary files before reusing them. Problem reported by naddy ok tracey naddy
add O_CLOEXEC (close-on-exec) to openat(2) calls
suggested by millert ok thomas_adam
don't scan pack index offsets for large values if pack file is < 2GB
This saves an iteration over the entire h->offsets array when opening a pack index which should not contain large offsets in the first place. ok millert@
switch from SIMPLEQ to equivalent STAILQ macros
The singly-linked tail queue macros were added to OpenBSD 6.9 and are more widely available on other systems. ok stsp
expose got_pack_parse_ref_delta() for library-internal use
This will be needed by a future 'gotadmin listpack' command.
expose got_packidx_get_object_offset() for library-internal use
This will be needed by a future 'gotadmin listpack' command.
when reading a pack index byte-swap fields at compile-time where possible
suggested by mpi@ ages ago
add fd field to got_repository, modify got_packidx_open to use fds
These changes are intended to make got more compatible with FreeBSD's Capsicum. ok stsp
fix matching the object ID of the first object in a pack index
An object ID which appears first in a pack index was wrongly ignored by got_packidx_match_id_str_prefix(). The result was a spurious "object not found" error when this object ID was passed on the command line. Reported by jrick on freenode who was lucky enough to this edge case!