gitea/routers/private
wxiaoguang 580e21dd2e
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.
2024-11-12 02:38:22 +00:00
..
tests/repos Fix verifyCommits error when push a new branch (#26664) 2023-08-30 02:27:53 +00:00
actions.go Clean up log messages (#30313) 2024-04-07 19:17:06 +08:00
default_branch.go Fix git error handling (#32401) 2024-11-02 11:20:22 +00:00
hook_post_receive_test.go Move database operations of merging a pull request to post receive hook and add a transaction (#30805) 2024-05-07 07:36:48 +00:00
hook_post_receive.go Make git push options accept short name (#32245) 2024-10-12 05:42:10 +00:00
hook_pre_receive.go Fix protected branch files detection on pre_receive hook (#31778) 2024-08-06 13:32:49 +00:00
hook_proc_receive.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +02:00
hook_verification_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
hook_verification.go Clean up log messages (#30313) 2024-04-07 19:17:06 +08:00
internal_repo.go Refactor names (#31405) 2024-06-19 06:32:45 +08:00
internal.go Refactor LFS SSH and internal routers (#32473) 2024-11-12 02:38:22 +00:00
key.go Refactor names (#31405) 2024-06-19 06:32:45 +08:00
mail.go Clean up log messages (#30313) 2024-04-07 19:17:06 +08:00
main_test.go make writing main test easier (#27270) 2023-09-28 01:38:53 +00:00
manager_process.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
manager_unix.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
manager_windows.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
manager.go Refactor names (#31405) 2024-06-19 06:32:45 +08:00
restore_repo.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
serv.go Add pure SSH LFS support (#31516) 2024-09-27 10:27:37 -04:00
ssh_log.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00