Class SubmoduleValidator
java.lang.Object
org.eclipse.jgit.internal.submodule.SubmoduleValidator
Validations for the git submodule fields (name, path, uri).
Invalid values in these fields can cause security problems as reported in
CVE-2018-11235 and CVE-2018-17456
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classError validating a git submodule declaration -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidassertValidGitModulesFile(String gitModulesContents) Validate a .gitmodules filestatic voidValidate name for a submodulestatic voidValidate path for a submodulestatic voidValidate URI for a submodule
-
Constructor Details
-
SubmoduleValidator
public SubmoduleValidator()
-
-
Method Details
-
assertValidSubmoduleName
public static void assertValidSubmoduleName(String name) throws SubmoduleValidator.SubmoduleValidationException Validate name for a submodule- Parameters:
name- name of a submodule- Throws:
SubmoduleValidator.SubmoduleValidationException- name doesn't seem valid (detail in message)
-
assertValidSubmoduleUri
public static void assertValidSubmoduleUri(String uri) throws SubmoduleValidator.SubmoduleValidationException Validate URI for a submodule- Parameters:
uri- uri of a submodule- Throws:
SubmoduleValidator.SubmoduleValidationException- uri doesn't seem valid
-
assertValidSubmodulePath
public static void assertValidSubmodulePath(String path) throws SubmoduleValidator.SubmoduleValidationException Validate path for a submodule- Parameters:
path- path of a submodule- Throws:
SubmoduleValidator.SubmoduleValidationException- path doesn't look right
-
assertValidGitModulesFile
public static void assertValidGitModulesFile(String gitModulesContents) throws SubmoduleValidator.SubmoduleValidationException Validate a .gitmodules file- Parameters:
gitModulesContents- Contents of a .gitmodule file. They will be parsed internally.- Throws:
SubmoduleValidator.SubmoduleValidationException- if the contents don't look like a configuration file or field values are not valid
-