Commit Briefs

232c0ac1b2 Thomas Adam

remove dependency of gitwrapper, gotctl, and gotsh on object_parse.c

Move some functions from object_parse.c into hash.c. These functions either require hash.c code anyway or contain object ID implementation internals. Add a new file object_qid.c, for got_object_id_queue and got_object_qid. This new file must be linked to virtually every program.


98670ba726 Thomas Adam

portable: rework SHA detection

Simply the SHA detection by not predicating on libcrypto, but instead checking individual header files.


4680f70435 Thomas Adam

portable: remove sha1.h; found portably

Remove sha1.h as this is found portably across systems.


588a8092bc Thomas Adam

include sha2.h too where sha1.h is included

In preparation for wide sha256 support; stsp@ agrees. Change done mechanically with find . -iname \*.[cy] -exec sam {} + X ,x/<sha1\.h>/i/\n#include <sha2.h>


b6b86fd1b9 Thomas Adam

remove trailing whitespace; patch by Josiah Frentsos


8b925c6ccd Thomas Adam

portable: add back sys/queue.h

Now that the handling of including sys/queue.h is better, there's no need to remove those lines from the source. Copy the location of those original sys/queue.h lines from upstream at the same line number, so as to avoid any conflicts in the future.


ef7d4e11a4 Thomas Adam

portable: portably #include siphash.h

Now that siphash is being looked for in a portable way, don't assume <siphash.h> as this is most likely not going to be the case on non-BSD systems.


ec242592d3 Thomas Adam

inline struct got_object_id in struct got_object_qid

Saves us from doing a malloc/free call for every item on the list. ok op@


619de35f39 Thomas Adam

reimplement object-ID set data structure on top of a hash table

Siphash suggested by jrick as a better alternative to murmurhash for this use case. with small fixes from and ok op@




f9c2e8e5d5 Thomas Adam

reuse existing deltas when creating pack files

tested by thomas, naddy, and myself


92a9e85d28 Thomas Adam

portable: add FreeBSD support

This adds the capability to compile got-portable on FreeBSD.


dd038bc6ec Thomas Adam

portable: initial Linux compilation

This commit modifies the GoT main branch to be able to compile it under linux.





638f902404 Stefan Sperling

rename got_error_prefix_errno() to got_error_from_errno()


230a42bdc6 joshua stein

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)


5d56da8198 Stefan Sperling

happy new copyright year


11624658e6 Stefan Sperling

remove unused definition of nitems()


9489f1f77a Stefan Sperling

avoid use-after-free via got_object_idset_for_each()


cb103d042c Stefan Sperling

allow got_object_idset_for_each() to return an error


e6ace2b90e Stefan Sperling

remove unnecessary #include


e336e3d63c Stefan Sperling

use userspace red-black tree macros, not kernel ones