1. 23 3月, 2022 1 次提交
    • O
      Support using the system version of brotli (#66462) · 5ca92236
      Omair Majid 提交于
      This is mainly motivated by the March 2022 release of .NET 5. .NET 5 was
      found to be vulnerable to CVE-2020-8927, which was caused by the older
      version of brotli built into .NET. .NET was vulernable even in
      environments where a system-wide version of brotli was present and had
      already received fixes for this CVE. We could have avoided a Remote Code
      Execution vulnerability in such environments by using the system's
      version of brotli.
      
      This is similar to the existing support for disabling distro-agnostic
      OpenSSL (except no OpenSSL is embedded) and using the system libunwind
      (a copy of libunwind is embedded this repo).
      
      One small twist is the presence of entrypoint verification. In a
      system-brotli build, the verification fails, because the built library,
      libSystem.IO.Compression.Native.so, doesn't include the symbols for
      Brotli. Those symbols are instead used from the system brotli libraries.
      5ca92236
  2. 13 12月, 2021 1 次提交
  3. 25 11月, 2021 2 次提交
  4. 03 11月, 2021 1 次提交
  5. 29 4月, 2021 1 次提交
  6. 07 12月, 2020 1 次提交
    • V
      Static linking of native libs (#44505) · 08ad8346
      Vladimir Sadov 提交于
      * from prototype
      
      * fix OSX
      
      * fix for Android
      
      * treat "libSystem.Globalization.Native" as QCall in mono too (for now).
      
      * fix for wasm
      
      * fix pedantic errors on GCC
      
      * delete gPalGlobalizationNative
      
      * pass overrider from the host
      
      * default override
      
      * default PInvoke override runs after optional host-provided overrider.
      
      * Some PR feedback   (mostly related to code, not the CMake stuff).
      
      * more coding PR feedback
      
      * Deleted "libraries-native" folder.
      
      * unifying tryrun.cmake into 1 common file
      
      * factor out adding lib-specific dependencies into one place (per native library)
      
      * cleanup: entirely remove tryrun.cmake propagation in eng, gen-buildsys, build-commons, and build scripts
      
      * remove "clrcompression.dll" and "libSystem.IO.Compression.Native.dylib" from single-file host packaging
      
      * mono: refactor Globalization lookup into `default_resolve_dllimport`.
      
      * set FEATURE_DISTRO_AGNOSTIC_SSL according to __PortableBuild
      
      * CORECLR_CALLING_CONVENTION for the host callback types
      
      * refactor common parts of entrypoints.c into entrypoints.h
      
      * rename OverrideEntry -->  DllImportEntry
      
      * extra libs as CMake functions
      
      * use macros instead of functions in extra_libs.cmake
      
      * mono formatting style in src/mono/mono/metadata/native-library.c
      Co-authored-by: NRyan Lucia <ryan@luciaonline.net>
      
      * mono: Remaining stylistic nits.
      Co-authored-by: NRyan Lucia <ryan@luciaonline.net>
      
      * do not set DFEATURE_DISTRO_AGNOSTIC_SSL on iOS, Android, tvOS
      Co-authored-by: NRyan Lucia <ryan@luciaonline.net>
      08ad8346