зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1305970 - land NSS 0x0cccc59d04dd, r=me
--HG-- rename : security/nss/external_tests/.clang-format => security/nss/gtests/.clang-format rename : security/nss/external_tests/Makefile => security/nss/gtests/Makefile rename : security/nss/external_tests/README => security/nss/gtests/README rename : security/nss/external_tests/common/Makefile => security/nss/gtests/common/Makefile rename : security/nss/external_tests/common/gtest.mk => security/nss/gtests/common/gtest.mk rename : security/nss/external_tests/common/gtests.cc => security/nss/gtests/common/gtests.cc rename : security/nss/external_tests/common/scoped_ptrs.h => security/nss/gtests/common/scoped_ptrs.h rename : security/nss/external_tests/der_gtest/Makefile => security/nss/gtests/der_gtest/Makefile rename : security/nss/external_tests/der_gtest/der_getint_unittest.cc => security/nss/gtests/der_gtest/der_getint_unittest.cc rename : security/nss/external_tests/der_gtest/der_private_key_import_unittest.cc => security/nss/gtests/der_gtest/der_private_key_import_unittest.cc rename : security/nss/external_tests/google_test/Makefile => security/nss/gtests/google_test/Makefile rename : security/nss/external_tests/google_test/google_test.gyp => security/nss/gtests/google_test/google_test.gyp rename : security/nss/external_tests/google_test/gtest/CHANGES => security/nss/gtests/google_test/gtest/CHANGES rename : security/nss/external_tests/google_test/gtest/CMakeLists.txt => security/nss/gtests/google_test/gtest/CMakeLists.txt rename : security/nss/external_tests/google_test/gtest/CONTRIBUTORS => security/nss/gtests/google_test/gtest/CONTRIBUTORS rename : security/nss/external_tests/google_test/gtest/LICENSE => security/nss/gtests/google_test/gtest/LICENSE rename : security/nss/external_tests/google_test/gtest/Makefile.am => security/nss/gtests/google_test/gtest/Makefile.am rename : security/nss/external_tests/google_test/gtest/README => security/nss/gtests/google_test/gtest/README rename : security/nss/external_tests/google_test/gtest/cmake/internal_utils.cmake => security/nss/gtests/google_test/gtest/cmake/internal_utils.cmake rename : security/nss/external_tests/google_test/gtest/codegear/gtest.cbproj => security/nss/gtests/google_test/gtest/codegear/gtest.cbproj rename : security/nss/external_tests/google_test/gtest/codegear/gtest.groupproj => security/nss/gtests/google_test/gtest/codegear/gtest.groupproj rename : security/nss/external_tests/google_test/gtest/codegear/gtest_all.cc => security/nss/gtests/google_test/gtest/codegear/gtest_all.cc rename : security/nss/external_tests/google_test/gtest/codegear/gtest_link.cc => security/nss/gtests/google_test/gtest/codegear/gtest_link.cc rename : security/nss/external_tests/google_test/gtest/codegear/gtest_main.cbproj => security/nss/gtests/google_test/gtest/codegear/gtest_main.cbproj rename : security/nss/external_tests/google_test/gtest/codegear/gtest_unittest.cbproj => security/nss/gtests/google_test/gtest/codegear/gtest_unittest.cbproj rename : security/nss/external_tests/google_test/gtest/configure.ac => security/nss/gtests/google_test/gtest/configure.ac rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-death-test.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-death-test.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-message.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-message.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-param-test.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-param-test.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-param-test.h.pump => security/nss/gtests/google_test/gtest/include/gtest/gtest-param-test.h.pump rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-printers.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-printers.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-spi.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-spi.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-test-part.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-test-part.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest-typed-test.h => security/nss/gtests/google_test/gtest/include/gtest/gtest-typed-test.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest.h => security/nss/gtests/google_test/gtest/include/gtest/gtest.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest_pred_impl.h => security/nss/gtests/google_test/gtest/include/gtest/gtest_pred_impl.h rename : security/nss/external_tests/google_test/gtest/include/gtest/gtest_prod.h => security/nss/gtests/google_test/gtest/include/gtest/gtest_prod.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-death-test-internal.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-death-test-internal.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-filepath.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-filepath.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-internal.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-internal.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-linked_ptr.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-linked_ptr.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-param-util-generated.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-param-util-generated.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-param-util-generated.h.pump => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-param-util-generated.h.pump rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-param-util.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-param-util.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-port.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-port.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-string.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-string.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-tuple.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-tuple.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-tuple.h.pump => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-tuple.h.pump rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-type-util.h => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-type-util.h rename : security/nss/external_tests/google_test/gtest/include/gtest/internal/gtest-type-util.h.pump => security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-type-util.h.pump rename : security/nss/external_tests/google_test/gtest/m4/acx_pthread.m4 => security/nss/gtests/google_test/gtest/m4/acx_pthread.m4 rename : security/nss/external_tests/google_test/gtest/m4/gtest.m4 => security/nss/gtests/google_test/gtest/m4/gtest.m4 rename : security/nss/external_tests/google_test/gtest/make/Makefile => security/nss/gtests/google_test/gtest/make/Makefile rename : security/nss/external_tests/google_test/gtest/msvc/gtest-md.sln => security/nss/gtests/google_test/gtest/msvc/gtest-md.sln rename : security/nss/external_tests/google_test/gtest/msvc/gtest-md.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest-md.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest.sln => security/nss/gtests/google_test/gtest/msvc/gtest.sln rename : security/nss/external_tests/google_test/gtest/msvc/gtest.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_main-md.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_main-md.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_main.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_main.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_prod_test-md.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_prod_test-md.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_prod_test.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_prod_test.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_unittest-md.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_unittest-md.vcproj rename : security/nss/external_tests/google_test/gtest/msvc/gtest_unittest.vcproj => security/nss/gtests/google_test/gtest/msvc/gtest_unittest.vcproj rename : security/nss/external_tests/google_test/gtest/samples/prime_tables.h => security/nss/gtests/google_test/gtest/samples/prime_tables.h rename : security/nss/external_tests/google_test/gtest/samples/sample1.cc => security/nss/gtests/google_test/gtest/samples/sample1.cc rename : security/nss/external_tests/google_test/gtest/samples/sample1.h => security/nss/gtests/google_test/gtest/samples/sample1.h rename : security/nss/external_tests/google_test/gtest/samples/sample10_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample10_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample1_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample1_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample2.cc => security/nss/gtests/google_test/gtest/samples/sample2.cc rename : security/nss/external_tests/google_test/gtest/samples/sample2.h => security/nss/gtests/google_test/gtest/samples/sample2.h rename : security/nss/external_tests/google_test/gtest/samples/sample2_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample2_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample3-inl.h => security/nss/gtests/google_test/gtest/samples/sample3-inl.h rename : security/nss/external_tests/google_test/gtest/samples/sample3_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample3_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample4.cc => security/nss/gtests/google_test/gtest/samples/sample4.cc rename : security/nss/external_tests/google_test/gtest/samples/sample4.h => security/nss/gtests/google_test/gtest/samples/sample4.h rename : security/nss/external_tests/google_test/gtest/samples/sample4_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample4_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample5_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample5_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample6_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample6_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample7_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample7_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample8_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample8_unittest.cc rename : security/nss/external_tests/google_test/gtest/samples/sample9_unittest.cc => security/nss/gtests/google_test/gtest/samples/sample9_unittest.cc rename : security/nss/external_tests/google_test/gtest/scripts/common.py => security/nss/gtests/google_test/gtest/scripts/common.py rename : security/nss/external_tests/google_test/gtest/scripts/fuse_gtest_files.py => security/nss/gtests/google_test/gtest/scripts/fuse_gtest_files.py rename : security/nss/external_tests/google_test/gtest/scripts/gen_gtest_pred_impl.py => security/nss/gtests/google_test/gtest/scripts/gen_gtest_pred_impl.py rename : security/nss/external_tests/google_test/gtest/scripts/gtest-config.in => security/nss/gtests/google_test/gtest/scripts/gtest-config.in rename : security/nss/external_tests/google_test/gtest/scripts/pump.py => security/nss/gtests/google_test/gtest/scripts/pump.py rename : security/nss/external_tests/google_test/gtest/scripts/release_docs.py => security/nss/gtests/google_test/gtest/scripts/release_docs.py rename : security/nss/external_tests/google_test/gtest/scripts/test/Makefile => security/nss/gtests/google_test/gtest/scripts/test/Makefile rename : security/nss/external_tests/google_test/gtest/scripts/upload.py => security/nss/gtests/google_test/gtest/scripts/upload.py rename : security/nss/external_tests/google_test/gtest/scripts/upload_gtest.py => security/nss/gtests/google_test/gtest/scripts/upload_gtest.py rename : security/nss/external_tests/google_test/gtest/src/gtest-all.cc => security/nss/gtests/google_test/gtest/src/gtest-all.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-death-test.cc => security/nss/gtests/google_test/gtest/src/gtest-death-test.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-filepath.cc => security/nss/gtests/google_test/gtest/src/gtest-filepath.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-internal-inl.h => security/nss/gtests/google_test/gtest/src/gtest-internal-inl.h rename : security/nss/external_tests/google_test/gtest/src/gtest-port.cc => security/nss/gtests/google_test/gtest/src/gtest-port.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-printers.cc => security/nss/gtests/google_test/gtest/src/gtest-printers.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-test-part.cc => security/nss/gtests/google_test/gtest/src/gtest-test-part.cc rename : security/nss/external_tests/google_test/gtest/src/gtest-typed-test.cc => security/nss/gtests/google_test/gtest/src/gtest-typed-test.cc rename : security/nss/external_tests/google_test/gtest/src/gtest.cc => security/nss/gtests/google_test/gtest/src/gtest.cc rename : security/nss/external_tests/google_test/gtest/src/gtest_main.cc => security/nss/gtests/google_test/gtest/src/gtest_main.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-death-test_ex_test.cc => security/nss/gtests/google_test/gtest/test/gtest-death-test_ex_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-death-test_test.cc => security/nss/gtests/google_test/gtest/test/gtest-death-test_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-filepath_test.cc => security/nss/gtests/google_test/gtest/test/gtest-filepath_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-linked_ptr_test.cc => security/nss/gtests/google_test/gtest/test/gtest-linked_ptr_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-listener_test.cc => security/nss/gtests/google_test/gtest/test/gtest-listener_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-message_test.cc => security/nss/gtests/google_test/gtest/test/gtest-message_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-options_test.cc => security/nss/gtests/google_test/gtest/test/gtest-options_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-param-test2_test.cc => security/nss/gtests/google_test/gtest/test/gtest-param-test2_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-param-test_test.cc => security/nss/gtests/google_test/gtest/test/gtest-param-test_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-param-test_test.h => security/nss/gtests/google_test/gtest/test/gtest-param-test_test.h rename : security/nss/external_tests/google_test/gtest/test/gtest-port_test.cc => security/nss/gtests/google_test/gtest/test/gtest-port_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-printers_test.cc => security/nss/gtests/google_test/gtest/test/gtest-printers_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-test-part_test.cc => security/nss/gtests/google_test/gtest/test/gtest-test-part_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-tuple_test.cc => security/nss/gtests/google_test/gtest/test/gtest-tuple_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-typed-test2_test.cc => security/nss/gtests/google_test/gtest/test/gtest-typed-test2_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-typed-test_test.cc => security/nss/gtests/google_test/gtest/test/gtest-typed-test_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest-typed-test_test.h => security/nss/gtests/google_test/gtest/test/gtest-typed-test_test.h rename : security/nss/external_tests/google_test/gtest/test/gtest-unittest-api_test.cc => security/nss/gtests/google_test/gtest/test/gtest-unittest-api_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_all_test.cc => security/nss/gtests/google_test/gtest/test/gtest_all_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_break_on_failure_unittest.py => security/nss/gtests/google_test/gtest/test/gtest_break_on_failure_unittest.py rename : security/nss/external_tests/google_test/gtest/test/gtest_break_on_failure_unittest_.cc => security/nss/gtests/google_test/gtest/test/gtest_break_on_failure_unittest_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_catch_exceptions_test.py => security/nss/gtests/google_test/gtest/test/gtest_catch_exceptions_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_catch_exceptions_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_catch_exceptions_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_color_test.py => security/nss/gtests/google_test/gtest/test/gtest_color_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_color_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_color_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_env_var_test.py => security/nss/gtests/google_test/gtest/test/gtest_env_var_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_env_var_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_env_var_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_environment_test.cc => security/nss/gtests/google_test/gtest/test/gtest_environment_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_filter_unittest.py => security/nss/gtests/google_test/gtest/test/gtest_filter_unittest.py rename : security/nss/external_tests/google_test/gtest/test/gtest_filter_unittest_.cc => security/nss/gtests/google_test/gtest/test/gtest_filter_unittest_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_help_test.py => security/nss/gtests/google_test/gtest/test/gtest_help_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_help_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_help_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_list_tests_unittest.py => security/nss/gtests/google_test/gtest/test/gtest_list_tests_unittest.py rename : security/nss/external_tests/google_test/gtest/test/gtest_list_tests_unittest_.cc => security/nss/gtests/google_test/gtest/test/gtest_list_tests_unittest_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_main_unittest.cc => security/nss/gtests/google_test/gtest/test/gtest_main_unittest.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_no_test_unittest.cc => security/nss/gtests/google_test/gtest/test/gtest_no_test_unittest.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_output_test.py => security/nss/gtests/google_test/gtest/test/gtest_output_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_output_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_output_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_output_test_golden_lin.txt => security/nss/gtests/google_test/gtest/test/gtest_output_test_golden_lin.txt rename : security/nss/external_tests/google_test/gtest/test/gtest_pred_impl_unittest.cc => security/nss/gtests/google_test/gtest/test/gtest_pred_impl_unittest.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_premature_exit_test.cc => security/nss/gtests/google_test/gtest/test/gtest_premature_exit_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_prod_test.cc => security/nss/gtests/google_test/gtest/test/gtest_prod_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_repeat_test.cc => security/nss/gtests/google_test/gtest/test/gtest_repeat_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_shuffle_test.py => security/nss/gtests/google_test/gtest/test/gtest_shuffle_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_shuffle_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_shuffle_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_sole_header_test.cc => security/nss/gtests/google_test/gtest/test/gtest_sole_header_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_stress_test.cc => security/nss/gtests/google_test/gtest/test/gtest_stress_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_test_utils.py => security/nss/gtests/google_test/gtest/test/gtest_test_utils.py rename : security/nss/external_tests/google_test/gtest/test/gtest_throw_on_failure_ex_test.cc => security/nss/gtests/google_test/gtest/test/gtest_throw_on_failure_ex_test.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_throw_on_failure_test.py => security/nss/gtests/google_test/gtest/test/gtest_throw_on_failure_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_throw_on_failure_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_throw_on_failure_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_uninitialized_test.py => security/nss/gtests/google_test/gtest/test/gtest_uninitialized_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_uninitialized_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_uninitialized_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_unittest.cc => security/nss/gtests/google_test/gtest/test/gtest_unittest.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_outfile1_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_xml_outfile1_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_outfile2_test_.cc => security/nss/gtests/google_test/gtest/test/gtest_xml_outfile2_test_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_outfiles_test.py => security/nss/gtests/google_test/gtest/test/gtest_xml_outfiles_test.py rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_output_unittest.py => security/nss/gtests/google_test/gtest/test/gtest_xml_output_unittest.py rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_output_unittest_.cc => security/nss/gtests/google_test/gtest/test/gtest_xml_output_unittest_.cc rename : security/nss/external_tests/google_test/gtest/test/gtest_xml_test_utils.py => security/nss/gtests/google_test/gtest/test/gtest_xml_test_utils.py rename : security/nss/external_tests/google_test/gtest/test/production.cc => security/nss/gtests/google_test/gtest/test/production.cc rename : security/nss/external_tests/google_test/gtest/test/production.h => security/nss/gtests/google_test/gtest/test/production.h rename : security/nss/external_tests/google_test/gtest/xcode/Config/DebugProject.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/DebugProject.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Config/FrameworkTarget.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/FrameworkTarget.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Config/General.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/General.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Config/ReleaseProject.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/ReleaseProject.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Config/StaticLibraryTarget.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/StaticLibraryTarget.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Config/TestTarget.xcconfig => security/nss/gtests/google_test/gtest/xcode/Config/TestTarget.xcconfig rename : security/nss/external_tests/google_test/gtest/xcode/Resources/Info.plist => security/nss/gtests/google_test/gtest/xcode/Resources/Info.plist rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/Info.plist => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/Info.plist rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/runtests.sh => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/runtests.sh rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/widget.cc => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/widget.cc rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/widget.h => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/widget.h rename : security/nss/external_tests/google_test/gtest/xcode/Samples/FrameworkSample/widget_test.cc => security/nss/gtests/google_test/gtest/xcode/Samples/FrameworkSample/widget_test.cc rename : security/nss/external_tests/google_test/gtest/xcode/Scripts/runtests.sh => security/nss/gtests/google_test/gtest/xcode/Scripts/runtests.sh rename : security/nss/external_tests/google_test/gtest/xcode/Scripts/versiongenerate.py => security/nss/gtests/google_test/gtest/xcode/Scripts/versiongenerate.py rename : security/nss/external_tests/google_test/gtest/xcode/gtest.xcodeproj/project.pbxproj => security/nss/gtests/google_test/gtest/xcode/gtest.xcodeproj/project.pbxproj rename : security/nss/external_tests/google_test/manifest.mn => security/nss/gtests/google_test/manifest.mn rename : security/nss/external_tests/manifest.mn => security/nss/gtests/manifest.mn rename : security/nss/external_tests/nss_bogo_shim/Makefile => security/nss/gtests/nss_bogo_shim/Makefile rename : security/nss/external_tests/nss_bogo_shim/config.cc => security/nss/gtests/nss_bogo_shim/config.cc rename : security/nss/external_tests/nss_bogo_shim/config.h => security/nss/gtests/nss_bogo_shim/config.h rename : security/nss/external_tests/nss_bogo_shim/config.json => security/nss/gtests/nss_bogo_shim/config.json rename : security/nss/external_tests/nss_bogo_shim/manifest.mn => security/nss/gtests/nss_bogo_shim/manifest.mn rename : security/nss/external_tests/nss_bogo_shim/nss_bogo_shim.cc => security/nss/gtests/nss_bogo_shim/nss_bogo_shim.cc rename : security/nss/external_tests/nss_bogo_shim/nsskeys.cc => security/nss/gtests/nss_bogo_shim/nsskeys.cc rename : security/nss/external_tests/nss_bogo_shim/nsskeys.h => security/nss/gtests/nss_bogo_shim/nsskeys.h rename : security/nss/external_tests/der_gtest/Makefile => security/nss/gtests/pk11_gtest/Makefile rename : security/nss/external_tests/pk11_gtest/pk11_aeskeywrap_unittest.cc => security/nss/gtests/pk11_gtest/pk11_aeskeywrap_unittest.cc rename : security/nss/external_tests/pk11_gtest/pk11_chacha20poly1305_unittest.cc => security/nss/gtests/pk11_gtest/pk11_chacha20poly1305_unittest.cc rename : security/nss/external_tests/pk11_gtest/pk11_export_unittest.cc => security/nss/gtests/pk11_gtest/pk11_export_unittest.cc rename : security/nss/external_tests/pk11_gtest/pk11_pbkdf2_unittest.cc => security/nss/gtests/pk11_gtest/pk11_pbkdf2_unittest.cc rename : security/nss/external_tests/pk11_gtest/pk11_prf_unittest.cc => security/nss/gtests/pk11_gtest/pk11_prf_unittest.cc rename : security/nss/external_tests/pk11_gtest/pk11_rsapss_unittest.cc => security/nss/gtests/pk11_gtest/pk11_rsapss_unittest.cc rename : security/nss/external_tests/ssl_gtest/Makefile => security/nss/gtests/ssl_gtest/Makefile rename : security/nss/external_tests/ssl_gtest/databuffer.h => security/nss/gtests/ssl_gtest/databuffer.h rename : security/nss/external_tests/ssl_gtest/gtest_utils.h => security/nss/gtests/ssl_gtest/gtest_utils.h rename : security/nss/external_tests/ssl_gtest/libssl_internals.c => security/nss/gtests/ssl_gtest/libssl_internals.c rename : security/nss/external_tests/ssl_gtest/libssl_internals.h => security/nss/gtests/ssl_gtest/libssl_internals.h rename : security/nss/external_tests/ssl_gtest/ssl_0rtt_unittest.cc => security/nss/gtests/ssl_gtest/ssl_0rtt_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_agent_unittest.cc => security/nss/gtests/ssl_gtest/ssl_agent_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_auth_unittest.cc => security/nss/gtests/ssl_gtest/ssl_auth_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_cert_ext_unittest.cc => security/nss/gtests/ssl_gtest/ssl_cert_ext_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_ciphersuite_unittest.cc => security/nss/gtests/ssl_gtest/ssl_ciphersuite_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_damage_unittest.cc => security/nss/gtests/ssl_gtest/ssl_damage_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_dhe_unittest.cc => security/nss/gtests/ssl_gtest/ssl_dhe_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_drop_unittest.cc => security/nss/gtests/ssl_gtest/ssl_drop_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_ecdh_unittest.cc => security/nss/gtests/ssl_gtest/ssl_ecdh_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_ems_unittest.cc => security/nss/gtests/ssl_gtest/ssl_ems_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_extension_unittest.cc => security/nss/gtests/ssl_gtest/ssl_extension_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_gtest.cc => security/nss/gtests/ssl_gtest/ssl_gtest.cc rename : security/nss/external_tests/ssl_gtest/ssl_hrr_unittest.cc => security/nss/gtests/ssl_gtest/ssl_hrr_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_loopback_unittest.cc => security/nss/gtests/ssl_gtest/ssl_loopback_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_record_unittest.cc => security/nss/gtests/ssl_gtest/ssl_record_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_resumption_unittest.cc => security/nss/gtests/ssl_gtest/ssl_resumption_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_skip_unittest.cc => security/nss/gtests/ssl_gtest/ssl_skip_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_staticrsa_unittest.cc => security/nss/gtests/ssl_gtest/ssl_staticrsa_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_v2_client_hello_unittest.cc => security/nss/gtests/ssl_gtest/ssl_v2_client_hello_unittest.cc rename : security/nss/external_tests/ssl_gtest/ssl_version_unittest.cc => security/nss/gtests/ssl_gtest/ssl_version_unittest.cc rename : security/nss/external_tests/ssl_gtest/test_io.cc => security/nss/gtests/ssl_gtest/test_io.cc rename : security/nss/external_tests/ssl_gtest/test_io.h => security/nss/gtests/ssl_gtest/test_io.h rename : security/nss/external_tests/ssl_gtest/tls_agent.cc => security/nss/gtests/ssl_gtest/tls_agent.cc rename : security/nss/external_tests/ssl_gtest/tls_agent.h => security/nss/gtests/ssl_gtest/tls_agent.h rename : security/nss/external_tests/ssl_gtest/tls_connect.cc => security/nss/gtests/ssl_gtest/tls_connect.cc rename : security/nss/external_tests/ssl_gtest/tls_connect.h => security/nss/gtests/ssl_gtest/tls_connect.h rename : security/nss/external_tests/ssl_gtest/tls_filter.cc => security/nss/gtests/ssl_gtest/tls_filter.cc rename : security/nss/external_tests/ssl_gtest/tls_filter.h => security/nss/gtests/ssl_gtest/tls_filter.h rename : security/nss/external_tests/ssl_gtest/tls_hkdf_unittest.cc => security/nss/gtests/ssl_gtest/tls_hkdf_unittest.cc rename : security/nss/external_tests/ssl_gtest/tls_parser.cc => security/nss/gtests/ssl_gtest/tls_parser.cc rename : security/nss/external_tests/ssl_gtest/tls_parser.h => security/nss/gtests/ssl_gtest/tls_parser.h rename : security/nss/external_tests/util_gtest/Makefile => security/nss/gtests/util_gtest/Makefile rename : security/nss/external_tests/util_gtest/util_utf8_unittest.cc => security/nss/gtests/util_gtest/util_utf8_unittest.cc extra : rebase_source : 526ff9352caf7c59048807e9606388ac2240840e
This commit is contained in:
Родитель
a18bf77d4d
Коммит
41795a76c0
|
@ -27,7 +27,7 @@ include $(CORE_DEPTH)/coreconf/config.mk
|
|||
#######################################################################
|
||||
|
||||
ifdef NSS_DISABLE_GTESTS
|
||||
DIRS := $(filter-out external_tests,$(DIRS))
|
||||
DIRS := $(filter-out gtests,$(DIRS))
|
||||
endif
|
||||
|
||||
#######################################################################
|
||||
|
|
|
@ -1 +1 @@
|
|||
3e7b53b18112
|
||||
0cccc59d04dd
|
||||
|
|
|
@ -14,14 +14,10 @@ const WINDOWS_CHECKOUT_CMD =
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
function isSanitizer(task) {
|
||||
return task.collection == "asan" || task.collection == "ubsan";
|
||||
}
|
||||
|
||||
queue.filter(task => {
|
||||
if (task.group == "Builds") {
|
||||
// Remove extra builds on {A,UB}San and ARM.
|
||||
if (isSanitizer(task) || task.collection == "arm-debug") {
|
||||
if (task.collection == "asan" || task.collection == "arm-debug") {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -30,11 +26,6 @@ queue.filter(task => {
|
|||
(task.platform != "linux64" || task.collection != "debug")) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Remove extra builds on gyp builds (TODO: add when it supports CC/CCC).
|
||||
if (task.collection == "gyp") {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (task.tests == "bogo") {
|
||||
|
@ -49,17 +40,11 @@ queue.filter(task => {
|
|||
}
|
||||
}
|
||||
|
||||
// Filter test suites that currently fail with UBSan.
|
||||
if (task.collection == "ubsan" &&
|
||||
["crmf", "cipher", "fips", "merge", "smime"].includes(task.tests)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
queue.map(task => {
|
||||
if (isSanitizer(task)) {
|
||||
if (task.collection == "asan") {
|
||||
// CRMF and FIPS tests still leak, unfortunately.
|
||||
if (task.tests == "crmf" || task.tests == "fips") {
|
||||
task.env.ASAN_OPTIONS = "detect_leaks=0";
|
||||
|
@ -119,27 +104,13 @@ export default async function main() {
|
|||
"-c",
|
||||
"bin/checkout.sh && nss/automation/taskcluster/scripts/build_gyp.sh"
|
||||
],
|
||||
env: {USE_64: "1"},
|
||||
env: {USE_64: "1"}, // This is only necessary for tests to work.
|
||||
platform: "linux64",
|
||||
collection: "gyp",
|
||||
image: LINUX_IMAGE
|
||||
});
|
||||
|
||||
await scheduleLinux("Linux 64 (ASan, debug)", {
|
||||
env: {
|
||||
NSS_DISABLE_ARENA_FREE_LIST: "1",
|
||||
NSS_DISABLE_UNLOAD: "1",
|
||||
CC: "clang",
|
||||
CCC: "clang++",
|
||||
USE_ASAN: "1",
|
||||
USE_64: "1"
|
||||
},
|
||||
platform: "linux64",
|
||||
collection: "asan",
|
||||
image: LINUX_IMAGE
|
||||
});
|
||||
|
||||
await scheduleLinux("Linux 64 (ASan+UBSan, debug)", {
|
||||
env: {
|
||||
UBSAN_OPTIONS: "print_stacktrace=1",
|
||||
NSS_DISABLE_ARENA_FREE_LIST: "1",
|
||||
|
@ -151,7 +122,7 @@ export default async function main() {
|
|||
USE_64: "1"
|
||||
},
|
||||
platform: "linux64",
|
||||
collection: "ubsan",
|
||||
collection: "asan",
|
||||
image: LINUX_IMAGE
|
||||
});
|
||||
|
||||
|
@ -163,6 +134,8 @@ export default async function main() {
|
|||
collection: "debug"
|
||||
});
|
||||
|
||||
await scheduleFuzzing();
|
||||
|
||||
await scheduleTools();
|
||||
|
||||
await scheduleLinux("Linux 32 (ARM, debug)", {
|
||||
|
@ -261,6 +234,65 @@ async function scheduleLinux(name, base) {
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
async function scheduleFuzzing() {
|
||||
let base = {
|
||||
env: {
|
||||
ASAN_OPTIONS: "allocator_may_return_null=1",
|
||||
UBSAN_OPTIONS: "print_stacktrace=1",
|
||||
CC: "clang",
|
||||
CCC: "clang++",
|
||||
USE_64: "1" // This is only necessary for tests to work.
|
||||
},
|
||||
platform: "linux64",
|
||||
collection: "fuzz",
|
||||
image: LINUX_IMAGE
|
||||
};
|
||||
|
||||
// Build base definition.
|
||||
let build_base = merge({
|
||||
command: [
|
||||
"/bin/bash",
|
||||
"-c",
|
||||
"bin/checkout.sh && " +
|
||||
"nss/automation/taskcluster/scripts/build_gyp.sh -g -v --fuzz"
|
||||
],
|
||||
artifacts: {
|
||||
public: {
|
||||
expires: 24 * 7,
|
||||
type: "directory",
|
||||
path: "/home/worker/artifacts"
|
||||
}
|
||||
},
|
||||
kind: "build",
|
||||
symbol: "B"
|
||||
}, base);
|
||||
|
||||
// The task that builds NSPR+NSS.
|
||||
let task_build = queue.scheduleTask(merge(build_base, {
|
||||
name: "Linux x64 (debug, fuzz)"
|
||||
}));
|
||||
|
||||
// Schedule tests.
|
||||
queue.scheduleTask(merge(base, {
|
||||
parent: task_build,
|
||||
name: "Gtests",
|
||||
command: [
|
||||
"/bin/bash",
|
||||
"-c",
|
||||
"bin/checkout.sh && nss/automation/taskcluster/scripts/run_tests.sh"
|
||||
],
|
||||
env: {GTESTFILTER: "*Fuzz*"},
|
||||
symbol: "Gtest",
|
||||
tests: "gtests",
|
||||
cycle: "standard",
|
||||
kind: "test"
|
||||
}));
|
||||
|
||||
return queue.submit();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
async function scheduleWindows(name, base) {
|
||||
base = merge(base, {
|
||||
workerType: "nss-win2012r2",
|
||||
|
|
|
@ -22,7 +22,8 @@ function parseOptions(opts) {
|
|||
}
|
||||
|
||||
// Parse platforms.
|
||||
let allPlatforms = ["linux", "linux64", "linux64-asan", "win64", "arm", "linux64-gyp"];
|
||||
let allPlatforms = ["linux", "linux64", "linux64-asan", "win64", "arm",
|
||||
"linux64-gyp", "linux64-fuzz"];
|
||||
let platforms = intersect(opts.platform.split(/\s*,\s*/), allPlatforms);
|
||||
|
||||
// If the given value is nonsense or "none" default to all platforms.
|
||||
|
@ -101,6 +102,7 @@ function filter(opts) {
|
|||
let aliases = {
|
||||
"linux": "linux32",
|
||||
"linux64-asan": "linux64",
|
||||
"linux64-fuzz": "linux64",
|
||||
"linux64-gyp": "linux64",
|
||||
"win64": "windows2012-64",
|
||||
"arm": "linux32"
|
||||
|
@ -111,11 +113,13 @@ function filter(opts) {
|
|||
|
||||
// Additional checks.
|
||||
if (platform == "linux64-asan") {
|
||||
keep &= coll("asan") || coll("ubsan");
|
||||
keep &= coll("asan");
|
||||
} else if (platform == "arm") {
|
||||
keep &= coll("arm-opt") || coll("arm-debug");
|
||||
} else if (platform == "linux64-gyp") {
|
||||
keep &= coll("gyp");
|
||||
} else if (platform == "linux64-fuzz") {
|
||||
keep &= coll("fuzz");
|
||||
} else {
|
||||
keep &= coll("opt") || coll("debug");
|
||||
}
|
||||
|
@ -128,7 +132,8 @@ function filter(opts) {
|
|||
}
|
||||
|
||||
// Finally, filter by build type.
|
||||
let isDebug = coll("debug") || coll("asan") || coll("ubsan") || coll("arm-debug") || coll("gyp");
|
||||
let isDebug = coll("debug") || coll("asan") || coll("arm-debug") ||
|
||||
coll("gyp") || coll("fuzz");
|
||||
return (isDebug && opts.builds.includes("d")) ||
|
||||
(!isDebug && opts.builds.includes("o"));
|
||||
}
|
||||
|
|
|
@ -4,14 +4,14 @@ source $(dirname $0)/tools.sh
|
|||
|
||||
if [[ $(id -u) -eq 0 ]]; then
|
||||
# Drop privileges by re-running this script.
|
||||
exec su worker $0
|
||||
exec su worker -c "$0 $*"
|
||||
fi
|
||||
|
||||
# Clone NSPR if needed.
|
||||
hg_clone https://hg.mozilla.org/projects/nspr nspr default
|
||||
|
||||
# Build.
|
||||
nss/build.sh -g -v
|
||||
nss/build.sh ${*--g -v}
|
||||
|
||||
# Package.
|
||||
mkdir artifacts
|
||||
|
|
|
@ -19,6 +19,7 @@ else
|
|||
top=$(dirname $0)/../../..
|
||||
dirs=( \
|
||||
"$top/cmd" \
|
||||
"$top/fuzz" \
|
||||
"$top/lib/base" \
|
||||
"$top/lib/certdb" \
|
||||
"$top/lib/certhigh" \
|
||||
|
@ -28,16 +29,22 @@ else
|
|||
"$top/lib/dbm" \
|
||||
"$top/lib/dev" \
|
||||
"$top/lib/freebl" \
|
||||
"$top/lib/jar" \
|
||||
"$top/lib/nss" \
|
||||
"$top/lib/pk11wrap" \
|
||||
"$top/lib/pkcs7" \
|
||||
"$top/lib/pkcs12" \
|
||||
"$top/lib/pki" \
|
||||
"$top/lib/smime" \
|
||||
"$top/lib/softoken" \
|
||||
"$top/lib/ssl" \
|
||||
"$top/lib/util" \
|
||||
"$top/lib/sysinit" \
|
||||
"$top/external_tests/common" \
|
||||
"$top/external_tests/der_gtest" \
|
||||
"$top/external_tests/pk11_gtest" \
|
||||
"$top/external_tests/ssl_gtest" \
|
||||
"$top/external_tests/util_gtest" \
|
||||
"$top/lib/util" \
|
||||
"$top/gtests/common" \
|
||||
"$top/gtests/der_gtest" \
|
||||
"$top/gtests/pk11_gtest" \
|
||||
"$top/gtests/ssl_gtest" \
|
||||
"$top/gtests/util_gtest" \
|
||||
)
|
||||
fi
|
||||
|
||||
|
|
|
@ -23,8 +23,13 @@ declare -A scan=( \
|
|||
[lib/base]=0 \
|
||||
[lib/certdb]=0 \
|
||||
[lib/certhigh]=0 \
|
||||
[lib/ssl]=0 \
|
||||
[lib/ckfw]=0 \
|
||||
[lib/crmf]=0 \
|
||||
[lib/cryptohi]=0 \
|
||||
[lib/dev]=0 \
|
||||
[lib/freebl]=0 \
|
||||
[lib/nss]=0 \
|
||||
[lib/ssl]=0 \
|
||||
[lib/util]=0 \
|
||||
)
|
||||
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
# Apply clang-format 3.8 on the provided folder and verify that this doesn't change any file.
|
||||
# If any file differs after formatting, the script eventually exits with 1.
|
||||
# Any differences between formatted and unformatted files is printed to stdout to give a hint what's wrong.
|
||||
|
||||
STATUS=0
|
||||
for i in $(find $1 -type f -name '*.[ch]' -print); do
|
||||
if ! clang-format-3.8 $i | diff $i -; then
|
||||
echo "Sorry, $i is not formatted properly. Please use clang-format 3.8 on your patch before landing."
|
||||
STATUS=1
|
||||
fi
|
||||
done
|
||||
exit $STATUS
|
|
@ -3,70 +3,129 @@
|
|||
#
|
||||
# This build system is still under development. It does not yet support all
|
||||
# the features or platforms that NSS supports.
|
||||
#
|
||||
# -c = clean before build
|
||||
# -g = force a rebuild of gyp (and NSPR, because why not)
|
||||
# -v = verbose build
|
||||
# --test = ignore map files and export everything we have
|
||||
|
||||
set -e
|
||||
|
||||
CWD=$(cd $(dirname $0); pwd -P)
|
||||
OBJ_DIR=$(make -s -C "$CWD" platform)
|
||||
DIST_DIR="$CWD/../dist/$OBJ_DIR"
|
||||
# Usage info
|
||||
show_help() {
|
||||
cat << EOF
|
||||
|
||||
Usage: ${0##*/} [-hcgv] [-j <n>] [--test] [--fuzz] [--scan-build[=output]]
|
||||
[-m32] [--opt|-o]
|
||||
|
||||
This script builds NSS with gyp and ninja.
|
||||
|
||||
This build system is still under development. It does not yet support all
|
||||
the features or platforms that NSS supports.
|
||||
|
||||
NSS build tool options:
|
||||
|
||||
-h display this help and exit
|
||||
-c clean before build
|
||||
-g force a rebuild of gyp (and NSPR, because why not)
|
||||
-j <n> run at most <n> concurrent jobs
|
||||
-v verbose build
|
||||
-m32 do a 32-bit build on a 64-bit system
|
||||
--test ignore map files and export everything we have
|
||||
--fuzz enable fuzzing mode. this always enables test builds
|
||||
--scan-build run the build with scan-build (scan-build has to be in the path)
|
||||
--scan-build=/out/path sets the output path for scan-build
|
||||
--opt|-o do an opt build
|
||||
EOF
|
||||
}
|
||||
|
||||
if [ -n "$CCC" ] && [ -z "$CXX" ]; then
|
||||
export CXX="$CCC"
|
||||
fi
|
||||
|
||||
opt_build=0
|
||||
build_64=0
|
||||
clean=0
|
||||
rebuild_gyp=0
|
||||
target=Debug
|
||||
|
||||
# try to guess sensible defaults
|
||||
arch=$(uname -m)
|
||||
if [ "$arch" = "x86_64" -o "$arch" = "aarch64" ]; then
|
||||
build_64=1
|
||||
fi
|
||||
|
||||
gyp_params=()
|
||||
ninja_params=()
|
||||
scanbuild=()
|
||||
nspr_env=()
|
||||
|
||||
# parse command line arguments
|
||||
while [ $# -gt 0 ]; do
|
||||
case $1 in
|
||||
-c) CLEAN=1 ;;
|
||||
-g) REBUILD_GYP=1 ;;
|
||||
-v) VERBOSE=1 ;;
|
||||
--test) GYP_PARAMS="$GYP_PARAMS -Dtest_build=1" ;;
|
||||
-c) clean=1 ;;
|
||||
-g) rebuild_gyp=1 ;;
|
||||
-j) ninja_params+=(-j "$2"); shift ;;
|
||||
-v) ninja_params+=(-v) ;;
|
||||
--test) gyp_params+=(-Dtest_build=1) ;;
|
||||
--fuzz) gyp_params+=(-Dtest_build=1 -Dfuzz=1) ;;
|
||||
--scan-build) scanbuild=(scan-build) ;;
|
||||
--scan-build=?*) scanbuild=(scan-build -o "${1#*=}") ;;
|
||||
--opt|-o) opt_build=1; nspr_env+=(BUILD_OPT=1) ;;
|
||||
-m32|--m32) build_64=0 ;;
|
||||
*) show_help; exit ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# set paths
|
||||
cwd=$(cd $(dirname $0); pwd -P)
|
||||
obj_dir=$(USE_64=$build_64 make -s -C "$cwd" platform)
|
||||
dist_dir="$cwd/../dist/$obj_dir"
|
||||
|
||||
# -c = clean first
|
||||
if [ "$CLEAN" = 1 ]; then
|
||||
rm -rf "$CWD/out"
|
||||
if [ "$clean" = 1 ]; then
|
||||
rm -rf "$cwd/out"
|
||||
rm -rf "$cwd/../nspr/$obj_dir"
|
||||
fi
|
||||
|
||||
if [ "$BUILD_OPT" = "1" ]; then
|
||||
TARGET=Release
|
||||
if [ "$opt_build" = "1" ]; then
|
||||
target=Release
|
||||
else
|
||||
TARGET=Debug
|
||||
target=Debug
|
||||
fi
|
||||
if [ "$USE_64" == "1" ]; then
|
||||
TARGET="${TARGET}_x64"
|
||||
if [ "$build_64" == "1" ]; then
|
||||
target="${target}_x64"
|
||||
nspr_env+=(USE_64=1)
|
||||
else
|
||||
GYP_PARAMS="$GYP_PARAMS -Dtarget_arch=ia32"
|
||||
gyp_params+=(-Dtarget_arch=ia32)
|
||||
fi
|
||||
TARGET_DIR="$CWD/out/$TARGET"
|
||||
target_dir="$cwd/out/$target"
|
||||
|
||||
# figure out the scan-build string
|
||||
if [ "${#scanbuild[@]}" -gt 0 ]; then
|
||||
if [ -n "$CC" ]; then
|
||||
scanbuild+=(--use-cc="$CC")
|
||||
fi
|
||||
if [ -n "$CCC" ]; then
|
||||
scanbuild+=(--use-c++="$CCC")
|
||||
fi
|
||||
fi
|
||||
|
||||
# These steps can take a while, so don't overdo them.
|
||||
# Force a redo with -g.
|
||||
if [ "$REBUILD_GYP" = 1 -o ! -d "$TARGET_DIR" ]; then
|
||||
if [ "$rebuild_gyp" = 1 -o ! -d "$target_dir" ]; then
|
||||
# Build NSPR.
|
||||
make -C "$CWD" NSS_GYP=1 install_nspr
|
||||
make "${nspr_env[@]}" -C "$cwd" NSS_GYP=1 install_nspr
|
||||
|
||||
# Run gyp.
|
||||
PKG_CONFIG_PATH="$CWD/../nspr/$OBJ_DIR/config" $SCANBUILD \
|
||||
gyp -f ninja $GYP_PARAMS --depth="$CWD" --generator-output="." "$CWD/nss.gyp"
|
||||
PKG_CONFIG_PATH="$cwd/../nspr/$obj_dir/config" \
|
||||
"${scanbuild[@]}" gyp -f ninja "${gyp_params[@]}" --depth="$cwd" \
|
||||
--generator-output="." "$cwd/nss.gyp"
|
||||
fi
|
||||
|
||||
# Run ninja.
|
||||
if which ninja >/dev/null 2>&1; then
|
||||
NINJA=ninja
|
||||
ninja=(ninja)
|
||||
elif which ninja-build >/dev/null 2>&1; then
|
||||
NINJA=ninja-build
|
||||
ninja=(ninja-build)
|
||||
else
|
||||
echo "Please install ninja" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
if [ "$VERBOSE" = 1 ]; then
|
||||
NINJA="$NINJA -v"
|
||||
fi
|
||||
$NINJA -C "$TARGET_DIR"
|
||||
"${scanbuild[@]}" $ninja -C "$target_dir" "${ninja_params[@]}"
|
||||
|
|
|
@ -792,6 +792,7 @@ parseGroupList(const char *arg, SSLNamedGroup **enabledGroups,
|
|||
p = strtok(NULL, ",");
|
||||
}
|
||||
PORT_Free(str);
|
||||
str = NULL;
|
||||
groups = PORT_ZNewArray(SSLNamedGroup, numValues);
|
||||
if (!groups) {
|
||||
goto done;
|
||||
|
|
|
@ -1471,7 +1471,7 @@ main(int argc, char **argv)
|
|||
if (requireDHNamedGroups) {
|
||||
rv = SSL_OptionSet(s, SSL_REQUIRE_DH_NAMED_GROUPS, PR_TRUE);
|
||||
if (rv != SECSuccess) {
|
||||
SECU_PrintError(progName, "error enabling extended master secret");
|
||||
SECU_PrintError(progName, "error in requiring the use of fixed finite-field DH groups");
|
||||
error = 1;
|
||||
goto done;
|
||||
}
|
||||
|
|
|
@ -52,6 +52,11 @@
|
|||
'dll_prefix': 'lib',
|
||||
'dll_suffix': 'so',
|
||||
}],
|
||||
['OS=="linux"', {
|
||||
'freebl_name': 'freeblpriv3',
|
||||
}, {
|
||||
'freebl_name': 'freebl3',
|
||||
}],
|
||||
['OS=="mac"', {
|
||||
'zlib_libs%': ['-lz'],
|
||||
'use_system_sqlite%': 1,
|
||||
|
@ -85,6 +90,7 @@
|
|||
'sqlite_libs%': ['-lsqlite3'],
|
||||
'dll_prefix': '<(dll_prefix)',
|
||||
'dll_suffix': '<(dll_suffix)',
|
||||
'freebl_name': '<(freebl_name)',
|
||||
'cc_is_clang%': '<(cc_is_clang)',
|
||||
# Some defaults
|
||||
'disable_tests%': 0,
|
||||
|
@ -98,6 +104,7 @@
|
|||
'ssl_enable_zlib%': 1,
|
||||
'use_asan%': 0,
|
||||
'test_build%': 0,
|
||||
'fuzz%': 0,
|
||||
},
|
||||
'target_defaults': {
|
||||
# Settings specific to targets should go here.
|
||||
|
@ -279,6 +286,9 @@
|
|||
'<!@(<(python) <(DEPTH)/coreconf/werror.py)',
|
||||
],
|
||||
}],
|
||||
[ 'fuzz==1', {
|
||||
'cflags': ['-Wno-unused-function']
|
||||
}],
|
||||
[ 'OS=="android" and mozilla_client==0', {
|
||||
'defines': [
|
||||
'NO_SYSINFO',
|
||||
|
|
|
@ -10,3 +10,4 @@
|
|||
*/
|
||||
|
||||
#error "Do not include this header file."
|
||||
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
#define registry_h__
|
||||
|
||||
#include <map>
|
||||
#include "nss.h"
|
||||
#include "FuzzerInternal.h"
|
||||
#include "nss.h"
|
||||
|
||||
class Registry {
|
||||
public:
|
||||
static void Add(std::string name, fuzzer::UserCallback func,
|
||||
uint16_t max_len, std::string desc) {
|
||||
static void Add(std::string name, fuzzer::UserCallback func, uint16_t max_len,
|
||||
std::string desc) {
|
||||
assert(!Has(name));
|
||||
GetInstance().targets_[name] = TargetData(func, max_len, desc);
|
||||
}
|
||||
|
@ -40,7 +40,7 @@ class Registry {
|
|||
|
||||
static std::vector<std::string> Names() {
|
||||
std::vector<std::string> names;
|
||||
for (auto &it : GetInstance().targets_) {
|
||||
for (auto& it : GetInstance().targets_) {
|
||||
names.push_back(it.first);
|
||||
}
|
||||
return names;
|
||||
|
@ -63,9 +63,9 @@ class Registry {
|
|||
std::map<std::string, TargetData> targets_;
|
||||
};
|
||||
|
||||
#define REGISTER_FUZZING_TARGET(name, func, max_len, desc) \
|
||||
static void __attribute__ ((constructor)) RegisterFuzzingTarget() { \
|
||||
Registry::Add(name, func, max_len, desc); \
|
||||
#define REGISTER_FUZZING_TARGET(name, func, max_len, desc) \
|
||||
static void __attribute__((constructor)) RegisterFuzzingTarget() { \
|
||||
Registry::Add(name, func, max_len, desc); \
|
||||
}
|
||||
|
||||
#endif // registry_h__
|
||||
#endif // registry_h__
|
||||
|
|
|
@ -15,4 +15,4 @@ class NSSDatabase {
|
|||
~NSSDatabase() { NSS_Shutdown(); }
|
||||
};
|
||||
|
||||
#endif // shared_h__
|
||||
#endif // shared_h__
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
##############################################
|
||||
## ##
|
||||
## WARNING: You're building with -Dfuzz=1 ##
|
||||
## ##
|
||||
## This means: ##
|
||||
## ##
|
||||
## * Your PRNG is DETERMINISTIC. ##
|
||||
## * TLS transcripts are PLAINTEXT. ##
|
||||
## * TLS signature checks are DISABLED. ##
|
||||
## ##
|
||||
## Thank you for fuzzing! ##
|
||||
## ##
|
||||
##############################################
|
||||
|
|
@ -19,15 +19,15 @@
|
|||
'<(DEPTH)/lib/util/util.gyp:nssutil3',
|
||||
'<(DEPTH)/lib/smime/smime.gyp:smime3',
|
||||
'<(DEPTH)/lib/ssl/ssl.gyp:ssl3',
|
||||
'<(DEPTH)/external_tests/google_test/google_test.gyp:gtest',
|
||||
'<(DEPTH)/gtests/google_test/google_test.gyp:gtest',
|
||||
'<(DEPTH)/cmd/lib/lib.gyp:sectool'
|
||||
]
|
||||
}
|
||||
],
|
||||
'target_defaults': {
|
||||
'include_dirs': [
|
||||
'../../external_tests/google_test/gtest/include',
|
||||
'../../external_tests/common'
|
||||
'../../gtests/google_test/gtest/include',
|
||||
'../../gtests/common'
|
||||
],
|
||||
},
|
||||
'variables': {
|
|
@ -17,6 +17,11 @@
|
|||
'-lstdc++',
|
||||
],
|
||||
}],
|
||||
[ 'fuzz==1', {
|
||||
'defines': [
|
||||
'UNSAFE_FUZZER_MODE',
|
||||
],
|
||||
}],
|
||||
],
|
||||
'msvs_settings': {
|
||||
'VCCLCompilerTool': {
|
|
@ -10,12 +10,12 @@ CPPSRCS = \
|
|||
gtests.cc \
|
||||
$(NULL)
|
||||
|
||||
INCLUDES += -I$(CORE_DEPTH)/external_tests/google_test/gtest/include \
|
||||
-I$(CORE_DEPTH)/external_tests/common
|
||||
INCLUDES += -I$(CORE_DEPTH)/gtests/google_test/gtest/include \
|
||||
-I$(CORE_DEPTH)/gtests/common
|
||||
|
||||
REQUIRES = gtest
|
||||
|
||||
EXTRA_LIBS = $(DIST)/lib/$(LIB_PREFIX)gtest.$(LIB_SUFFIX)
|
||||
|
||||
# NOTE: this is not actually used but required to build gtests.o
|
||||
PROGRAM = gtests
|
||||
PROGRAM = gtests
|
|
@ -12,23 +12,18 @@
|
|||
'type': 'executable',
|
||||
'sources': [
|
||||
'der_getint_unittest.cc',
|
||||
'<(DEPTH)/external_tests/common/gtests.cc'
|
||||
'<(DEPTH)/gtests/common/gtests.cc'
|
||||
],
|
||||
'dependencies': [
|
||||
'<(DEPTH)/exports.gyp:nss_exports',
|
||||
'<(DEPTH)/lib/nss/nss.gyp:nss3',
|
||||
'<(DEPTH)/lib/util/util.gyp:nssutil3',
|
||||
'<(DEPTH)/lib/smime/smime.gyp:smime3',
|
||||
'<(DEPTH)/lib/ssl/ssl.gyp:ssl3',
|
||||
'<(DEPTH)/external_tests/google_test/google_test.gyp:gtest',
|
||||
'<(DEPTH)/cmd/lib/lib.gyp:sectool'
|
||||
'<(DEPTH)/gtests/google_test/google_test.gyp:gtest',
|
||||
]
|
||||
}
|
||||
],
|
||||
'target_defaults': {
|
||||
'include_dirs': [
|
||||
'../../external_tests/google_test/gtest/include',
|
||||
'../../external_tests/common'
|
||||
'../../gtests/google_test/gtest/include',
|
||||
'../../gtests/common'
|
||||
]
|
||||
},
|
||||
'variables': {
|
|
@ -11,8 +11,8 @@ CPPSRCS = \
|
|||
der_private_key_import_unittest.cc \
|
||||
$(NULL)
|
||||
|
||||
INCLUDES += -I$(CORE_DEPTH)/external_tests/google_test/gtest/include \
|
||||
-I$(CORE_DEPTH)/external_tests/common
|
||||
INCLUDES += -I$(CORE_DEPTH)/gtests/google_test/gtest/include \
|
||||
-I$(CORE_DEPTH)/gtests/common
|
||||
|
||||
REQUIRES = nspr nss libdbm gtest
|
||||
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче