refactor(bare): enhance security and performance optimizations
- Remove unnecessary sorting in advertise_refs for deterministic output - Add path traversal detection and validation in bare_dir construction - Implement symlink resolution checks to prevent security vulnerabilities - Refactor cache system with CRC validation and improved metrics - Integrate repo-specific cache invalidation using indexed keys - Add comprehensive unit tests for commit operations and diff functionality - Move configuration constants to centralized config module - Optimize string operations in disk cache random value generation - Enhance license detection algorithm with cleaner matching logic - Streamline argument processing in various git operations - Update dependencies including crc32fast and flate2 for performance - Add signal handling capability to tokio runtime configuration
This commit is contained in:
@@ -42,7 +42,6 @@ impl GitBare {
|
||||
symbolic_target,
|
||||
});
|
||||
}
|
||||
// Sort by name for deterministic output
|
||||
references.sort_by(|a, b| a.name.cmp(&b.name));
|
||||
Ok(AdvertiseRefsResponse {
|
||||
references,
|
||||
@@ -68,7 +67,6 @@ impl GitBare {
|
||||
let bare_dir_str = self.bare_dir.to_string_lossy().into_owned();
|
||||
let stateless = request.protocol.as_ref().is_some_and(|p| p.stateless);
|
||||
|
||||
// Default to upload-pack if service is unspecified
|
||||
let subcommand = if request.service == "git-receive-pack" {
|
||||
"receive-pack"
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user