Skip to content

Commit 053ebca

Browse files
committed
removed all non valid characters on project name
1 parent ca87148 commit 053ebca

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,8 @@ public void processOpts() {
169169
}
170170

171171
if (additionalProperties.containsKey(CodegenConstants.PROJECT_NAME)) {
172-
setProjectName((String) additionalProperties.get(CodegenConstants.PROJECT_NAME));
172+
String projectName = (String) additionalProperties.get(CodegenConstants.PROJECT_NAME);
173+
setProjectName(projectName.replaceAll("[^a-zA-Z0-9\\s\\-_]",""));
173174
}
174175
else {
175176
// default: set project based on package name

modules/swagger-codegen/src/test/java/io/swagger/codegen/python/PythonClientCodegenTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,13 @@ public void testAdditionalPropertiesPutForConfigValues() throws Exception {
3737
Assert.assertEquals(codegen.isHideGenerationTimestamp(), false);
3838
}
3939

40+
@Test
41+
public void testProjectNameCharacters() {
42+
String projectName = ";import os; -;os.system('ping localhost');x=b;_yy=";
43+
Assert.assertEquals(projectName.replaceAll("[^a-zA-Z0-9\\s\\-_]",""), "import os -ossystemping localhostxb_yy");
44+
Assert.assertEquals("petstore-api".replaceAll("[^a-zA-Z0-9\\s\\-_]",""), "petstore-api");
45+
Assert.assertEquals("petstore_api2".replaceAll("[^a-zA-Z0-9\\s\\-_]",""), "petstore_api2");
46+
Assert.assertEquals("petstore api".replaceAll("[^a-zA-Z0-9\\s\\-_]",""), "petstore api");
47+
}
48+
4049
}

0 commit comments

Comments
 (0)