James Moger
2015-06-15 b3aabb94c9935e61ba16bb5ab506c123ae29fbf3
Renamed ssh.Display(Host|Port) to ssh.Advertised(Host|Port)
5 files modified
38 ■■■■ changed files
src/main/distrib/data/defaults.properties 4 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/servlet/SparkleShareInviteServlet.java 8 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/transport/ssh/SshDaemon.java 16 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/transport/ssh/WelcomeShell.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/transport/ssh/commands/SshCommand.java 6 ●●●● patch | view | raw | blame | history
src/main/distrib/data/defaults.properties
@@ -116,13 +116,13 @@
# This may be useful in complex forwarding setups.
#
# SINCE 1.7.0
git.sshDisplayHost =
git.sshAdvertisedHost =
# Manually specify the port to use in advertised SSH repository urls.
# This may be useful in complex forwarding setups.
#
# SINCE 1.7.0
git.sshDisplayPort =
git.sshAdvertisedPort =
# Specify the SSH key manager to use for retrieving, storing, and removing
# SSH keys.
src/main/java/com/gitblit/servlet/SparkleShareInviteServlet.java
@@ -19,8 +19,6 @@
import java.net.URL;
import java.text.MessageFormat;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
@@ -34,6 +32,8 @@
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.StringUtils;
import com.google.inject.Inject;
import com.google.inject.Singleton;
/**
 * Handles requests for Sparkleshare Invites
@@ -89,7 +89,7 @@
            response.getWriter().append("SSH is not active on this server!");
            return;
        }
        int sshDisplayPort = settings.getInteger(Keys.git.sshDisplayPort, sshPort);
        int sshDisplayPort = settings.getInteger(Keys.git.sshAdvertisedPort, sshPort);
        // extract repo name from request
        String repoUrl = request.getPathInfo().substring(1);
@@ -114,7 +114,7 @@
        if (!StringUtils.isEmpty(url) && url.indexOf("localhost") == -1) {
            host = new URL(url).getHost();
        }
        String sshDisplayHost = settings.getString(Keys.git.sshDisplayHost, "");
        String sshDisplayHost = settings.getString(Keys.git.sshAdvertisedHost, "");
        if(sshDisplayHost.isEmpty()) {
            sshDisplayHost = host;
        }
src/main/java/com/gitblit/transport/ssh/SshDaemon.java
@@ -35,8 +35,8 @@
import org.apache.sshd.common.io.nio2.Nio2ServiceFactoryFactory;
import org.apache.sshd.common.keyprovider.FileKeyPairProvider;
import org.apache.sshd.common.util.SecurityUtils;
import org.apache.sshd.server.auth.CachingPublicKeyAuthenticator;
import org.apache.sshd.server.UserAuth;
import org.apache.sshd.server.auth.CachingPublicKeyAuthenticator;
import org.apache.sshd.server.auth.UserAuthKeyboardInteractive;
import org.apache.sshd.server.auth.UserAuthPassword;
import org.apache.sshd.server.auth.UserAuthPublicKey;
@@ -130,7 +130,7 @@
        } else {
            addr = new InetSocketAddress(bindInterface, port);
        }
        //Will do GSS ?
        GSSAuthenticator gssAuthenticator = null;
        if(settings.getBoolean(Keys.git.sshWithKrb5, false)) {
@@ -144,9 +144,9 @@
                    "");
            if(! servicePrincipalName.isEmpty()) {
                gssAuthenticator.setServicePrincipalName(servicePrincipalName);
            }
            }
        }
        //Sort the authenticators for sshd
        List<NamedFactory<UserAuth>> userAuthFactories = new ArrayList<>();
        String sshAuthenticatorsOrderString = settings.getString(Keys.git.sshAuthenticatorsOrder,
@@ -156,7 +156,7 @@
            switch (authenticatorName) {
            case "gssapi-with-mic":
                if(gssAuthenticator != null) {
                    userAuthFactories.add(new UserAuthGSS.Factory());
                    userAuthFactories.add(new UserAuthGSS.Factory());
                }
                break;
            case "publickey":
@@ -172,7 +172,7 @@
                log.error("Unknown ssh authenticator: '{}'", authenticatorName);
            }
        }
        // Create the SSH server
        sshd = SshServer.setUpDefaultServer();
        sshd.setPort(addr.getPort());
@@ -203,8 +203,8 @@
        IStoredSettings settings = gitblit.getSettings();
        int port = sshd.getPort();
        int displayPort = settings.getInteger(Keys.git.sshDisplayPort, port);
        String displayServername = settings.getString(Keys.git.sshDisplayHost, "");
        int displayPort = settings.getInteger(Keys.git.sshAdvertisedPort, port);
        String displayServername = settings.getString(Keys.git.sshAdvertisedHost, "");
        if(displayServername.isEmpty()) {
            displayServername = servername;
        }
src/main/java/com/gitblit/transport/ssh/WelcomeShell.java
@@ -200,8 +200,8 @@
        }
        private String formatUrl(String hostname, int port, String username) {
            int displayPort = settings.getInteger(Keys.git.sshDisplayPort, port);
            String displayHostname = settings.getString(Keys.git.sshDisplayHost, "");
            int displayPort = settings.getInteger(Keys.git.sshAdvertisedPort, port);
            String displayHostname = settings.getString(Keys.git.sshAdvertisedHost, "");
            if(displayHostname.isEmpty()) {
                displayHostname = hostname;
            }
src/main/java/com/gitblit/transport/ssh/commands/SshCommand.java
@@ -16,7 +16,6 @@
 */
package com.gitblit.transport.ssh.commands;
import com.gitblit.IStoredSettings;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.MalformedURLException;
@@ -28,6 +27,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.gitblit.IStoredSettings;
import com.gitblit.Keys;
import com.gitblit.manager.IGitblit;
import com.gitblit.utils.StringUtils;
@@ -75,12 +75,12 @@
    protected String getRepositoryUrl(String repository) {
        String username = getContext().getClient().getUsername();
        IStoredSettings settings = getContext().getGitblit().getSettings();
        String displayHostname = settings.getString(Keys.git.sshDisplayHost, "");
        String displayHostname = settings.getString(Keys.git.sshAdvertisedHost, "");
        if(displayHostname.isEmpty()) {
            displayHostname = getHostname();
        }
        int port = settings.getInteger(Keys.git.sshPort, 0);
        int displayPort = settings.getInteger(Keys.git.sshDisplayPort, port);
        int displayPort = settings.getInteger(Keys.git.sshAdvertisedPort, port);
        if (displayPort == 22) {
            // standard port
            return MessageFormat.format("{0}@{1}/{2}.git", username, displayHostname, repository);