Browse Source

[Java 11] Remove dependency on javax.xml.bind package

Replace javax.xml.bind.DatatypeConverter, that is not available any
more in Java 11 and later with Hex utility from non optional Bouncy
Castle library.

Bug: 540790
Change-Id: I9903c00ecc1a434e9795b8ba9267f02628fdc0e9
Signed-off-by: David Ostrovsky <david@ostrovsky.org>
stable-5.5
David Ostrovsky 6 years ago committed by Matthias Sohn
parent
commit
7607465006
  1. 7
      BUILD
  2. 4
      org.eclipse.jgit/BUILD
  3. 7
      org.eclipse.jgit/src/org/eclipse/jgit/transport/WalkEncryption.java

7
BUILD

@ -1,12 +1,5 @@
package(default_visibility = ["//visibility:public"]) package(default_visibility = ["//visibility:public"])
config_setting(
name = "jdk9",
values = {
"java_toolchain": "@bazel_tools//tools/jdk:toolchain_jdk9",
},
)
genrule( genrule(
name = "all", name = "all",
testonly = 1, testonly = 1,

4
org.eclipse.jgit/BUILD

@ -14,10 +14,6 @@ RESOURCES = glob(["resources/**"])
java_library( java_library(
name = "jgit", name = "jgit",
srcs = SRCS, srcs = SRCS,
javacopts = select({
"//:jdk9": ["--add-modules=java.xml.bind"],
"//conditions:default": [],
}),
resource_strip_prefix = "org.eclipse.jgit/resources", resource_strip_prefix = "org.eclipse.jgit/resources",
resources = RESOURCES, resources = RESOURCES,
deps = [ deps = [

7
org.eclipse.jgit/src/org/eclipse/jgit/transport/WalkEncryption.java

@ -66,8 +66,8 @@ import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.PBEKeySpec; import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.PBEParameterSpec; import javax.crypto.spec.PBEParameterSpec;
import javax.crypto.spec.SecretKeySpec; import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
import org.bouncycastle.util.encoders.Hex;
import org.eclipse.jgit.internal.JGitText; import org.eclipse.jgit.internal.JGitText;
import org.eclipse.jgit.util.Base64; import org.eclipse.jgit.util.Base64;
@ -301,7 +301,7 @@ abstract class WalkEncryption {
String DEFAULT_KEY_ALGO = JetS3tV2.ALGORITHM; String DEFAULT_KEY_ALGO = JetS3tV2.ALGORITHM;
String DEFAULT_KEY_SIZE = Integer.toString(JetS3tV2.KEY_SIZE); String DEFAULT_KEY_SIZE = Integer.toString(JetS3tV2.KEY_SIZE);
String DEFAULT_KEY_ITER = Integer.toString(JetS3tV2.ITERATIONS); String DEFAULT_KEY_ITER = Integer.toString(JetS3tV2.ITERATIONS);
String DEFAULT_KEY_SALT = DatatypeConverter.printHexBinary(JetS3tV2.SALT); String DEFAULT_KEY_SALT = Hex.toHexString(JetS3tV2.SALT);
String EMPTY = ""; //$NON-NLS-1$ String EMPTY = ""; //$NON-NLS-1$
@ -377,8 +377,7 @@ abstract class WalkEncryption {
final byte[] salt; final byte[] salt;
try { try {
salt = DatatypeConverter salt = Hex.decode(keySalt.replaceAll(REGEX_WS, EMPTY));
.parseHexBinary(keySalt.replaceAll(REGEX_WS, EMPTY));
} catch (Exception e) { } catch (Exception e) {
throw securityError(X_KEY_SALT + EMPTY + keySalt); throw securityError(X_KEY_SALT + EMPTY + keySalt);
} }

Loading…
Cancel
Save