diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.4.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.4.target index 3f30ef533..17db411e8 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.4.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.4.target @@ -30,7 +30,7 @@ - + diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java index 8961537ce..e69cfa9d1 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java @@ -45,6 +45,7 @@ package org.eclipse.jgit.blame; import static org.eclipse.jgit.lib.Constants.OBJ_BLOB; import static org.eclipse.jgit.lib.FileMode.TYPE_FILE; +import static org.eclipse.jgit.lib.FileMode.TYPE_MASK; import java.io.IOException; import java.util.Collection; @@ -955,7 +956,7 @@ public class BlameGenerator { } private static final boolean isFile(int rawMode) { - return (rawMode & TYPE_FILE) == TYPE_FILE; + return (rawMode & TYPE_MASK) == TYPE_FILE; } private DiffEntry findRename(RevCommit parent, RevCommit commit, diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpAuthMethod.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpAuthMethod.java index 47cbf691f..3594ea91b 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpAuthMethod.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/HttpAuthMethod.java @@ -85,24 +85,44 @@ abstract class HttpAuthMethod { public HttpAuthMethod method(String hdr) { return None.INSTANCE; } + + @Override + public String getSchemeName() { + return "None"; //$NON-NLS-1$ + } }, BASIC { @Override public HttpAuthMethod method(String hdr) { return new Basic(); } + + @Override + public String getSchemeName() { + return "Basic"; //$NON-NLS-1$ + } }, DIGEST { @Override public HttpAuthMethod method(String hdr) { return new Digest(hdr); } + + @Override + public String getSchemeName() { + return "Digest"; //$NON-NLS-1$ + } }, NEGOTIATE { @Override public HttpAuthMethod method(String hdr) { return new Negotiate(hdr); } + + @Override + public String getSchemeName() { + return "Negotiate"; //$NON-NLS-1$ + } }; /** * Creates a HttpAuthMethod instance configured with the provided HTTP @@ -112,6 +132,13 @@ abstract class HttpAuthMethod { * @return a configured HttpAuthMethod instance */ public abstract HttpAuthMethod method(String hdr); + + /** + * @return the name of the authentication scheme in the form to be used + * in HTTP authentication headers as specified in RFC2617 and + * RFC4559 + */ + public abstract String getSchemeName(); } static final String EMPTY_STRING = ""; //$NON-NLS-1$ @@ -270,7 +297,7 @@ abstract class HttpAuthMethod { void configureRequest(final HttpConnection conn) throws IOException { String ident = user + ":" + pass; //$NON-NLS-1$ String enc = Base64.encodeBytes(ident.getBytes("UTF-8")); //$NON-NLS-1$ - conn.setRequestProperty(HDR_AUTHORIZATION, type.name() + conn.setRequestProperty(HDR_AUTHORIZATION, type.getSchemeName() + " " + enc); //$NON-NLS-1$ } } @@ -357,7 +384,7 @@ abstract class HttpAuthMethod { v.append(e.getValue()); v.append('"'); } - conn.setRequestProperty(HDR_AUTHORIZATION, type.name() + conn.setRequestProperty(HDR_AUTHORIZATION, type.getSchemeName() + " " + v); //$NON-NLS-1$ } @@ -514,7 +541,7 @@ abstract class HttpAuthMethod { byte[] token = context.initSecContext(prevToken, 0, prevToken.length); - conn.setRequestProperty(HDR_AUTHORIZATION, getType().name() + conn.setRequestProperty(HDR_AUTHORIZATION, getType().getSchemeName() + " " + Base64.encodeBytes(token)); //$NON-NLS-1$ } catch (GSSException e) { IOException ioe = new IOException();