Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
6f44e1e
Modernize CI pipeline
atoomic Jun 13, 2024
c31255e
Merge pull request #45 from atoomic/ci++
atoomic Jun 13, 2024
3d75b7d
Rerun CI on edit and co
atoomic Jun 13, 2024
3dc9301
Fix issue when libz is not linked on AIX
timlegge Jun 13, 2024
8b719c4
Fixes #50 - Correct openssl version may not be found
timlegge Jul 3, 2024
2d041e9
Fixes #52 - Out of memory on openssl 1.1.1w hpux
timlegge Jul 4, 2024
62356b9
Update FSF address and LGPL name in LICENSE
mtelka Jun 21, 2024
832a73f
stop using AutoLoader
haarg Oct 12, 2024
ca91338
Fixes #48 - Whirlpool is missing the header
timlegge Jul 2, 2024
56b4408
Merge pull request #44 from timlegge/aix
toddr May 2, 2025
9251aba
Merge branch 'master' into hpux-issues
toddr May 2, 2025
98763f4
Merge pull request #51 from timlegge/hpux-issues
toddr May 2, 2025
e9238e6
Move off personal repo and onto cpan-authors repo
toddr May 2, 2025
65d65af
Update changelog
toddr May 2, 2025
69d0561
Update PR references in changelog
toddr May 2, 2025
37d569b
Verbose failures
toddr May 2, 2025
47239dc
Use ubuntu 24 for openssl testing
toddr May 2, 2025
2a5aa9d
Fully support openSSL 3.x API
timlegge May 2, 2025
eaac603
Run on multiple ubuntu versions to test different openssl
toddr May 2, 2025
6bfb6f2
Merge pull request #53 from timlegge/streamline-openssl3
toddr May 2, 2025
20dfb87
Tolerate Crypto policies on redhat 9+
toddr May 4, 2025
7f2b3af
Tidy
toddr May 4, 2025
94263c5
Almalinux 9 testing
toddr May 4, 2025
4d54dfa
Test build for 0.34_02
toddr May 4, 2025
25fec76
Pass NULL to EVP_PKEY_CTX_new_from_pkey not a random var value
toddr May 4, 2025
048b92c
Bump to 0.34_03 for testing
toddr May 4, 2025
8c7f14f
Remove duplicate perl package
atoomic May 4, 2025
af95162
Bump for production release of 0.34
toddr May 5, 2025
f986c31
Disable PKCS#1 v1.5 padding
timlegge May 7, 2025
f10b570
Merge pull request #58 from timlegge/padding
toddr May 7, 2025
37774c0
Merge pull request #57 from cpan-authors/atoomic-dup
toddr May 7, 2025
5b76ae3
Bump changelog for release of 0.35 to CPAN
toddr May 7, 2025
666db05
Fix old openssl on strawberry does not include whrlpool.h
timlegge May 8, 2025
0792f93
Merge pull request #59 from timlegge/version-fixes
toddr May 8, 2025
b2a8f0a
libressl message digest functions md cannot be NULL
timlegge May 9, 2025
c7b5191
Don't support whirlpool in libressl
timlegge May 9, 2025
dbf24f4
Merge pull request #60 from timlegge/version-fixes
toddr May 10, 2025
fc7aa1d
Don't ignore the set padding return code
timlegge Jul 15, 2025
985a5c4
Add support for use_pkcs1_pss_padding
timlegge Oct 29, 2025
0ea9c52
Fatal error if RSA-PSS is used for encryption operations
timlegge Oct 29, 2025
cb6435e
Fix test for sha1 digest issue and croak on use_pkcs1_padding
timlegge Oct 29, 2025
1789207
Merge pull request #63 from timlegge/pss_padding
toddr Oct 29, 2025
91db2e9
Merge pull request #62 from timlegge/issues
toddr Oct 29, 2025
2f47d45
Bump changelog for release of 0.36 to CPAN~
toddr Oct 29, 2025
7a4047a
Fix libressl bitwise logic error in RSA.xs
toddr Oct 29, 2025
bb6cf94
Bump changelog for release of 0.37 to CPAN
toddr Oct 29, 2025
5e50ed0
Change the default hash mode to sha256
timlegge Nov 1, 2025
b24e1c0
Make padding selection clearer and update documentation
timlegge Nov 1, 2025
60a4b56
Update README files to reflect pod updates
timlegge Nov 2, 2025
06d1275
Free openssl objects when done
timlegge Nov 1, 2025
049120a
Merge pull request #66 from timlegge/pss_padding
toddr Nov 3, 2025
4bfec6d
Add blurb about JWTs for padding changes
timlegge Nov 4, 2025
6c1f58d
Merge pull request #68 from timlegge/main
toddr Nov 4, 2025
4951e30
Merge pull request #67 from timlegge/sha256
toddr Nov 4, 2025
bb1907f
Remove debian:buster from the CI
szabgab Jan 30, 2026
f4f9b54
Add dependabot
szabgab Jan 30, 2026
9da97b1
Separate the apt-get and the yum steps
szabgab Jan 30, 2026
f61d0d1
Merge pull request #69 from szabgab/remove-buster
timlegge Feb 1, 2026
28e580f
Merge pull request #70 from szabgab/add-dependabot
toddr Feb 1, 2026
2db8425
Bump actions/checkout from 4 to 6
dependabot[bot] Feb 1, 2026
3eaf65b
Merge pull request #72 from cpan-authors/dependabot/github_actions/ac…
toddr Feb 1, 2026
9fcb3fd
Merge branch 'main' into separate-apt-and-yum
toddr Feb 1, 2026
df0687d
Update checkout action version from v4 to v6
toddr Feb 1, 2026
ac957a4
Merge pull request #71 from szabgab/separate-apt-and-yum
toddr Feb 1, 2026
7ba5a5e
chore: fix META URLs, gitignore dupes, build_requires, add trixie CI
Koan-Bot Feb 9, 2026
fe0880a
Merge pull request #73 from atoomic/koan.atoomic/quick-wins
atoomic Feb 9, 2026
fb5be11
Don't include whrlpool.h if whirlpool is disabled
timlegge Feb 15, 2026
1ff23f4
fix: check_key() EVP_PKEY_CTX leak on OpenSSL 3.x
Koan-Bot Feb 19, 2026
1cba44e
Merge pull request #77 from atoomic/koan.atoomic/fix-check-key-ctx-leak
atoomic Feb 25, 2026
95f560f
Merge pull request #76 from timlegge/main
atoomic Feb 25, 2026
d221f20
fix: remove thread-unsafe static buffer in get_message_digest()
Koan-Bot Mar 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
63 changes: 0 additions & 63 deletions .github/workflows/linux.yml

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/macos.yml

This file was deleted.

175 changes: 175 additions & 0 deletions .github/workflows/testsuite.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
name: linux

on:
push:
branches:
- '*'
tags-ignore:
- '*'
pull_request:
types: [ opened, synchronize, reopened, edited, ready_for_review ]

jobs:

#
# A quick and cheap test first before running other jobs
#

ubuntu:
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
RELEASE_TESTING: 1

runs-on: ubuntu-latest

strategy:
fail-fast: false

steps:
- uses: actions/checkout@v6
- run: openssl version
- run: perl -V
- name: uses install-with-cpm
uses: perl-actions/install-with-cpm@v1
with:
cpanfile: "cpanfile"
- name: Makefile.PL
run: perl -I$(pwd) Makefile.PL
- run: make && ( make test || prove -wbvm t/*.t )

openssl-matrix:
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
RELEASE_TESTING: 1

runs-on: ubuntu-latest
needs: [ubuntu]
name: "OpenSSL ${{ matrix.os-version }}"

strategy:
fail-fast: false
matrix:
os-version:
# - debian:buster # OpenSSL 1.1.1
- debian:bullseye # OpenSSL 1.1.1
- debian:bookworm # OpenSSL 3.0.x
- debian:trixie # OpenSSL 3.4.x (Debian 13)
- almalinux:9 # OpenSSL with new crypto policies (RHEL-compatible)

container: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v6
- name: Install dependencies using apt-get
if: ${{ startsWith(matrix.os-version, 'debian:') }}
run: |
apt-get update
apt-get install -y openssl perl make gcc libssl-dev sudo curl
- name: Install dependencies using yum
if: ${{ matrix.os-version == 'almalinux:9' }}
run: |
yum install --skip-broken -y openssl perl make gcc openssl-devel sudo curl
- run: openssl version
- run: perl -V
- name: uses install-with-cpm
uses: perl-actions/install-with-cpm@v1
with:
cpanfile: "cpanfile"
- name: Makefile.PL
run: perl -I$(pwd) Makefile.PL
- run: make && prove -wbvm t/*.t

#
# List of Perl Versions available
#

perl-versions:
runs-on: ubuntu-latest
needs: [openssl-matrix]
name: List Perl versions
outputs:
perl-versions: ${{ steps.action.outputs.perl-versions }}
steps:
- id: action
uses: perl-actions/perl-versions@v1
with:
since-perl: v5.10
with-devel: true

#
# The Perl matrix on linux
#

perl:
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
RELEASE_TESTING: 1

runs-on: ubuntu-latest
needs: [openssl-matrix,perl-versions]
name: "Perl ${{ matrix.perl-version }}"

strategy:
fail-fast: false
matrix:
perl-version: ${{ fromJson (needs.perl-versions.outputs.perl-versions) }}

container: perldocker/perl-tester:${{ matrix.perl-version }}

steps:
- uses: actions/checkout@v6
- run: openssl version
- run: perl -V
- name: Deps for testing
run: |
cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess Test::CPAN::Meta Perl::MinimumVersion Test::Pod::Coverage Test::Pod Test::MinimumVersion Crypt::OpenSSL::Bignum ||:
cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess Test::CPAN::Meta Perl::MinimumVersion Test::Pod::Coverage Test::Pod Test::MinimumVersion Crypt::OpenSSL::Bignum
# not available < 5.12
cpanm --notest Test::Kwalitee ||:
- run: perl Makefile.PL
- run: make && ( make test || prove -wbvm t/*.t )

#
# Windows
#

windows:
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 0
AUTOMATED_TESTING: 1
RELEASE_TESTING: 0

needs: [openssl-matrix, perl-versions]
runs-on: windows-latest

strategy:
fail-fast: false
matrix:
perl-version: [latest]

steps:
- uses: actions/checkout@v6
- name: Set up Perl
run: |
# skip installing perl if it is already installed.
if (!(Test-Path "C:\strawberry\perl\bin")) {
choco install strawberryperl
}
echo @"
C:\strawberry\c\bin
C:\strawberry\perl\site\bin
C:\strawberry\perl\bin
"@ |
Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- run: openssl version
- run: perl -V
- name: Deps for testing
run: cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess
- run: perl Makefile.PL
- run: make && ( make test || prove -wbvm t/*.t )
47 changes: 0 additions & 47 deletions .github/workflows/windows.yml

This file was deleted.

2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,5 @@
*.o
*.gcov
*.gcno
*.gcov
*.gcda
*.gcno
*.ERR
33 changes: 33 additions & 0 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,5 +1,38 @@
Revision history for Perl extension Crypt::OpenSSL::RSA.

0.37 Oct 29 2025
- Fix libressl bitwise logic error in RSA.xs

0.36 Oct 29 2025
- Fix old openssl on strawberry does not include whrlpool.h
- libressl message digest functions md cannot be NULL
- Don't support whirlpool in libressl
- Add support for use_pkcs1_pss_padding with fatal error if RSA-PSS is used for encryption operations

0.35 May 7 2025
- Disable PKCS#1 v1.5 padding. It's not practical to mitigate marvin attacks so we will instead disable this and require alternatives to address the issue.
- Resolves #42 - CVE-2024-2467.

0.34 May 5 2025
- Production release.

0.34_03 May 4 2025
- Fix bug in rsa_crypt. Need to pass NULL

0.34_02 May 4 2025
- t/rsa.t needs to tolerate sha1 being disabled on rhel.

0.34_01 May 3 2025
- docs - plaintext = decrypt(cyphertext)
- #44 - Fix issue when libz is not linked on AIX
- #50 - Correct openssl version may not be found
- #52 - Out of memory on openssl 1.1.1w hpux
- #47 - Update FSF address and LGPL name in LICENSE
- #55 - stop using AutoLoader
- #48 - Whirlpool is missing the header
- Move github repo to cpan-authors
- Fully support openSSL 3.x API

0.33 July 7 2022
- Update for windows github CI
- Remove duplicit 'LICENSE' key
Expand Down
Loading
Loading