Browse Source

Tests: Explicitly allow usage of git file-based protocol in test cases

Due to CVE-2022-39253, Git 2.30.6 sets `protocol.file.allow=user` by
default.  The change has also been backported to other Git versions by
distros.  This breaks some of our test cases that use the file-based
protocol locally to simulate real workflows without requiring network
access.  In these cases the file protocol is safe, so explicitly enable
it in the tests.
Brad King 3 years ago
parent
commit
79ce0f434e
1 changed files with 2 additions and 0 deletions
  1. 2 0
      Tests/CMakeLists.txt

+ 2 - 0
Tests/CMakeLists.txt

@@ -1574,6 +1574,7 @@ if(BUILD_TESTING)
     )
   list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/ExternalProject")
   set_tests_properties(ExternalProject PROPERTIES
+    ENVIRONMENT GIT_ALLOW_PROTOCOL=file
     RUN_SERIAL 1
     TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
 
@@ -2656,6 +2657,7 @@ if(BUILD_TESTING)
       -P "${CMake_BINARY_DIR}/Tests/CTestUpdateGIT.cmake"
       )
     list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateGIT_DIR}")
+    set_property(TEST CTest.UpdateGIT PROPERTY ENVIRONMENT GIT_ALLOW_PROTOCOL=file)
   endif()
 
   # Test CTest Update with HG