Commit Briefs
respect umask when creating or changing files and directories
This behaviour is already documented in got-worktree(5) but wasn't actually implemented. ok stsp@
add gotctl(8); initially supported commands are 'info' and 'stop'
This will be used by an upcoming regress test suite for gotd(8). ok tracey
remove sendfd pledge promise from gotd repo_read process
Have the parent process send one end of the pipe directly to gotsh(1), such that repo_write can run without "sendfd". Combining "sendfd" and "recvfd" in the same process is frowned upon. ok tracey
remove sendfd pledge promise from gotd repo_write process
Have the parent process send one end of the pipe directly to gotsh(1), such that repo_write can run without "sendfd". Combining "sendfd" and "recvfd" in the same process is frowned upon. ok tracey
change add_delta to take an off_t instead of size_t.
add_delta already calls got_delta_open casting the size_t to off_t, and all the add_delta callers pass an off_t anyway; fixes an implicit off_t truncation. ok stsp@
stop installing git-{receive,upload}-pack symlinks to gotsh in ~/bin
Having those links in the user's PATH can make our send/fetch regression tests fail. We do want to talk to git-daemon during those tests, and these symlinks can get in the way of that.
fix off_t type mismatch in gotd
see e082ed67; ok stsp@
check size before calling mmap(2)
It's only a preparatory step, as checking whether a size_t is less than SIZE_MAX is moot. In a follow-up commit, however, the `filesize' field of the struct got_pack will become off_t and these checks will kick in. This also makes consistent how we guard mmap(2) against empty files. ok and improvements stsp@
fix off_t type mismatch
off_t is a signed type and depending on the platform, it can be "long" or "long long", so cast to long long for printf().