╭ changed ────────╮ │src/serve_ssh.zig│ ╰─────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭──────────╮ │← previous│ ╰──────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │494 defer any_repo.deinit(io, allocator); │ │495 │ │496 switch (any_repo) { │ │498 - inline else => |*repo| try servePack(repo.self_repo_opts, repo, repo_root_path, reader, writer, io, allocator, service, protocol_version, author, error_writer, sess),│ │497 + inline else => |*repo| try servePack(repo.self_repo_opts, repo, users_dir, reader, writer, io, allocator, service, protocol_version, author, error_writer, sess), │ │498 } │ │499 return true; │ │500 } │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────╮ │502 fn servePack( │ │503 comptime repo_opts: rp.RepoOpts(.xit),│ │504 repo: *rp.Repo(.xit, repo_opts), │ │506 - repo_root_path: []const u8, │ │505 + users_dir: []const u8, │ │506 reader: *std.Io.Reader, │ │507 writer: *std.Io.Writer, │ │508 io: std.Io, │ ╰───────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │518 var sideband = progress.Sideband{ .writer = writer, .sess = sess }; │ │519 try repo.uploadPack(io, allocator, reader, writer, .{ .protocol_version = protocol_version }, &sideband); │ │520 }, │ │522 - .receive_pack => try push.receivePackAndConsume(repo_opts, io, allocator, repo, reader, writer, .{ .protocol_version = protocol_version }, author, repo_root_path, error_writer, sess),│ │521 + .receive_pack => try push.receivePackAndConsume(repo_opts, io, allocator, repo, reader, writer, .{ .protocol_version = protocol_version }, author, users_dir, error_writer, sess), │ │522 } │ │523 } │ │524 │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─────────────────────────────────────────╮ │546 io: std.Io, │ │547 arena: *std.heap.ArenaAllocator,│ │548 admin_repo_path: []const u8, │ │550 - repo_root_path: []const u8, │ │549 + users_dir: []const u8, │ │550 owner_name: []const u8, │ │551 repo_name: []const u8, │ │552 service: GitService, │ ╰─────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │560 defer admin.deinit(io, allocator); │ │561 │ │562 const moment = try evt.currentMoment(evt.admin_repo_opts, &admin); │ │564 - const repo = (try evt.readRepoByOwnerAndName(io, allocator, arena, moment, repo_root_path, owner_name, repo_name)) orelse {│ │563 + const repo = (try evt.readRepoByOwnerAndName(io, allocator, arena, moment, users_dir, owner_name, repo_name)) orelse { │ │564 if (service == .upload_pack) return .not_found; │ │565 const owner = (try evt.User.readByName(io, allocator, admin_repo_path, arena, owner_name)) orelse return .not_found; │ │566 return if (isKeyInAuthorizedKeys(owner.event.ssh_keys, fingerprint)) │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯