aboutsummaryrefslogtreecommitdiffstats
path: root/modules/private
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2024-11-12 10:38:22 +0800
committerGitHub <noreply@github.com>2024-11-12 02:38:22 +0000
commit580e21dd2e9dfb3a3f86f51c4eb188c1bbfa8b11 (patch)
treec09fe6839b5c2a8b1d829535a6faee4bb6d53774 /modules/private
parentf35e2b0cd1aaee389e4efda5a54976520b9bd4cb (diff)
downloadgitea-580e21dd2e9dfb3a3f86f51c4eb188c1bbfa8b11.tar.gz
gitea-580e21dd2e9dfb3a3f86f51c4eb188c1bbfa8b11.zip
Refactor LFS SSH and internal routers (#32473)
Gitea instance keeps reporting a lot of errors like "LFS SSH transfer connection denied, pure SSH protocol is disabled". When starting debugging the problem, there are more problems found. Try to address most of them: * avoid unnecessary server side error logs (change `fail()` to not log them) * figure out the broken tests/user2/lfs.git (added comments) * avoid `migratePushMirrors` failure when a repository doesn't exist (ignore them) * avoid "Authorization" (internal&lfs) header conflicts, remove the tricky "swapAuth" and use "X-Gitea-Internal-Auth" * make internal token comparing constant time (it wasn't a serous problem because in a real world it's nearly impossible to timing-attack the token, but good to fix and backport) * avoid duplicate routers (introduce AddOwnerRepoGitLFSRoutes) * avoid "internal (private)" routes using session/web context (they should use private context) * fix incorrect "path" usages (use "filepath") * fix incorrect mocked route point handling (need to check func nil correctly) * split some tests from "git general tests" to "git misc tests" (to keep "git_general_test.go" simple) Still no correct result for Git LFS SSH tests. So the code is kept there (`tests/integration/git_lfs_ssh_test.go`) and a FIXME explains the details.
Diffstat (limited to 'modules/private')
-rw-r--r--modules/private/internal.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/modules/private/internal.go b/modules/private/internal.go
index 9c330a24a8..c7e7773524 100644
--- a/modules/private/internal.go
+++ b/modules/private/internal.go
@@ -43,7 +43,7 @@ Ensure you are running in the correct environment or set the correct configurati
req := httplib.NewRequest(url, method).
SetContext(ctx).
Header("X-Real-IP", getClientIP()).
- Header("Authorization", fmt.Sprintf("Bearer %s", setting.InternalToken)).
+ Header("X-Gitea-Internal-Auth", fmt.Sprintf("Bearer %s", setting.InternalToken)).
SetTLSClientConfig(&tls.Config{
InsecureSkipVerify: true,
ServerName: setting.Domain,