From e3b636e7fa2a823cfe90ea75e88034a60f7e59e6 Mon Sep 17 00:00:00 2001
From: David Ostrovsky <david@ostrovsky.org>
Date: Thu, 10 Apr 2014 18:58:07 -0400
Subject: [PATCH] SSHD: Add support for git pack commands

---
 src/main/java/com/gitblit/git/RepositoryResolver.java |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gitblit/git/RepositoryResolver.java b/src/main/java/com/gitblit/git/RepositoryResolver.java
index 208c1ae..c859f6f 100644
--- a/src/main/java/com/gitblit/git/RepositoryResolver.java
+++ b/src/main/java/com/gitblit/git/RepositoryResolver.java
@@ -30,6 +30,7 @@
 import com.gitblit.manager.IGitblit;
 import com.gitblit.models.RepositoryModel;
 import com.gitblit.models.UserModel;
+import com.gitblit.transport.ssh.SshSession;
 
 /**
  * Resolves repositories and grants export access.
@@ -67,6 +68,9 @@
 			// git request
 			GitDaemonClient client = (GitDaemonClient) req;
 			client.setRepositoryName(name);
+		} else if (req instanceof SshSession) {
+			SshSession s = (SshSession)req;
+			s.setRepositoryName(name);
 		}
 		return repo;
 	}
@@ -98,6 +102,12 @@
 			if (user == null) {
 				user = UserModel.ANONYMOUS;
 			}
+		} else if (req instanceof SshSession) {
+			SshSession s = (SshSession) req;
+			user = gitblit.authenticate(s);
+			if (user == null) {
+				throw new IOException(String.format("User %s not found",  s.getRemoteUser()));
+			}
 		}
 
 		if (user.canClone(model)) {

--
Gitblit v1.9.1