Skip to content

Commit a5627c0

Browse files
authored
Merge pull request #11072 from swagger-api/swos-240
removed all non valid characters on project name
2 parents ca87148 + 053ebca commit a5627c0

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)