Skip to content

Commit

Permalink
fix crash in ecp_nistz256_point_add_affine()
Browse files Browse the repository at this point in the history
The .rodata section with precomputed constant `ecp_nistz256_precomputed` needs to be
terminated by .text, because the ecp_nistz256_precomputed' happens to be the
first section in the file. The lack of .text makes code to arrive into the same
.rodata section where ecp_nistz256_precomputed is found. The exception is raised
as soon as CPU attempts to execute the code from read only section.

Fixes openssl#24184
  • Loading branch information
Sashan committed Apr 20, 2024
1 parent 24d16d3 commit ce83b34
Showing 1 changed file with 64 additions and 0 deletions.
64 changes: 64 additions & 0 deletions .github/workflows/windows.yml
Expand Up @@ -183,3 +183,67 @@ jobs:
# Disable testing for now. TBD: Need local cygwin installation to debug .
# - name: Run openssl tests
# run: bash -c "cd openssl && make V=1 test"
mingw:
# Run a job for each of the specified target architectures:
# copied and modified from shared. Instead of installing nasm we
# install mingw and cygwin.
#
strategy:
matrix:
os:
- windows-2022
platform:
- arch: win64
config: enable-tests no-fips
runs-on: ${{ github.server_url == 'https://github.com' && matrix.os || format('{0}-self-hosted', matrix.os) }}
steps:
- uses: actions/checkout@v4
- uses: cygwin/cygwin-install-action@master
with:
packages: perl git make gcc-core gcc
- name: Check repo
run: cygcheck -V
- name: Full cygcheck status
run: cygcheck -s -v -r -h
- name: Install MinGW
uses: egor-tensin/setup-mingw@v2
with:
platform: x64
cygwin: 1
- name: prepare the build directory
run: mkdir _build
- name: config
working-directory: _build
run: |
bash -c "gcc --version && perl ../Configure ${{ matrix.platform.config }}"
bash -c "perl configdata.pm --dump"
- name: build
working-directory: _build
run: |
bash -c "make -j 4"
- name: save artifacts
uses: actions/upload-artifact@v3
with:
name: "ci@-${{ matrix.os }}"
path: _build
if-no-files-found: ignore
retention-days: 2
- name: download coreinfo
uses: suisei-cn/actions-download-file@v1.6.0
with:
url: "https://download.sysinternals.com/files/Coreinfo.zip"
target: _build/coreinfo/
- name: get cpu info
working-directory: _build
continue-on-error: true
run: |
7z.exe x coreinfo/Coreinfo.zip
./Coreinfo64.exe -accepteula -f
./apps/openssl.exe version -c
- name: Check platform symbol usage
working-directory: _build
run: perl ../util/checkplatformsyms.pl ../util/platform_symbols/windows-symbols.txt libcrypto-3-x64.dll ./libssl-3-x64.dll
- name: test
working-directory: _build
run: |
bash -c "make test VERBOSE_FAILURE=yes HARNESS_JOBS=4"

0 comments on commit ce83b34

Please sign in to comment.