Commit Briefs

1247ca2fed Stefan Sperling

fix bogus "bad offset in pack file" errors wrongly raised by gotd (main)

Because copy_ref_delta() was forgetting to update the *outsize output parameter, when clients sent ref-deltas gotd was miscalculating the on-disk size of the pack file and would report "bad offset in pack file" if an object was stored at an offset beyond the miscalculated smaller size.


72edd51a1a Stefan Sperling

add a TODO item for a bug between stage -p and revert


4f35873aad Stefan Sperling

make our pack-refs header format align with the expectations of git 2.50.0

Fixes regress failures due to 'git gc' complaining, as of 2.50.0: '# pack-refs with:' does not start with '# pack-refs with: ' reported by naddy@ ok op@


bcd8b7f9af Stefan Sperling

bump version number


59e093ad4f Stefan Sperling

CHANGES for 0.115 (tags/0.115)


62994af7ea Stefan Sperling

fix segfault due to double-free in got-read-gotconfig

Could be triggered by running 'got fetch' with a "send" block in got.conf. The functions free_fetch_config() and free_send_config() were freeing data via the global "remote" variable instead of their own argument as intended. Patch by Renato Aguiar


1d26dbd4b1 Stefan Sperling

add global repository access rules to gotsysd.conf

This feature can be used by server administrators to override or augment access permissions set in gotsys.conf if needed.


c343b68113 Stefan Sperling

add a test case for deny rules in gotsys.conf

Deny rules in gotsys.conf didn't actually work until recently and were lacking test coverage.


df9fee32dd Stefan Sperling

fix looping in got-read-pack's version of repaint_parent_commits() as well

This can be observed during 'got send' or 'gotadmin pack/cleanup' in some cases. We would keep processing the same parent commits over and over.


82bf4748c2 Stefan Sperling

fix creation of gotd.conf deny rules in gotsys-write-conf

Deny rules do not contain the rw/ro authorization mode string. Do not fail if that string is missing. Corresponding tests will be added soon.


ebc8ef350d Stefan Sperling

fix infinite loop in got_pack_repaint_parent_commits()

This can be observed during 'got send' or 'gotadmin pack/cleanup' in some cases. We would keep processing the same parent commits over and over.




de1213064c Stefan Sperling

stop trying to start gotd from gotsys-apply-conf if gotd is not running

We should assume that gotd is always running, and we should not be automatically restarting gotd if it has crashed. This misfeature was added early to make setup of the gotsysd regression test suite easier. It was only half working since the attempt to connect to gotd's unix socket after starting it failed due to pledge violations.


b861c60c7c Stefan Sperling

make errors reported by gotsys-apply-conf actually visible

Do not close the pipe to gotsysd before trying to send an error message to gotsysd. Print errors to stderr as a last resort.


67dcc610ae Stefan Sperling

bump versio number


24ea83537e Stefan Sperling

CHANGES for 0.114 (tags/0.114)



50f1d7bec5 Stefan Sperling

avoid event_loopexit() in gotsysd libexec event handlers when flushing

It seems flushing our final message can fail if we forcefully exit the event loop here. This would leave gotsysd's sysconf process stuck in a state where it was waiting for a message which never arrived.


c5e96df445 Stefan Sperling

use imsgbuf_flush() instead of gotsysd_imsg_flush() in libexec event handlers

The gotsysd_imsg_flush() wrapper enforces a sync write by polling the file descriptor and writing data in a loop. Since libevent already does polling for us we can simply use imsgbuf_flush() here instead.




5f1975fcf4 Stefan Sperling

always consume authorized keys messages in gotsys-userkeys

THe main process will always send these messages so don't skip parsing them even if we are going to ignore the current user.



bd2d269200 Stefan Sperling

stop running ssh with -q by default

The -q option suppresses too many important errors, including the warning printed when a host key has changed. Requiring users to pass -v in order to see this message is too cumbersome.