While working on another series, I noticed that upload-pack will accept the "packfile-uris" directive even if we didn't advertise it. That's not a huge deal in practice, but the spec says we're not supposed to. And while cleaning that up, I noticed a bit of duplication in the existing advertisement/allow code. So patches 1-3 clean up the situation a bit, and then patch 4 tightens up the packfile-uris handling. There are some small textual conflicts with the series I just posted in: https://lore.kernel.org/git/20240228223700.GA1157826@xxxxxxxxxxxxxxxxxxxxxxx/ I'm happy to prepare this on top of that if it's easier. [1/4]: upload-pack: use repository struct to get config [2/4]: upload-pack: centralize setup of sideband-all config [3/4]: upload-pack: use existing config mechanism for advertisement [4/4]: upload-pack: only accept packfile-uris if we advertised it t/t5702-protocol-v2.sh | 18 +++++++++++++ upload-pack.c | 58 +++++++++++++++++++----------------------- 2 files changed, 44 insertions(+), 32 deletions(-) -Peff