Skip to content

Commit

Permalink
addpatch: ruby 3.3.5-2
Browse files Browse the repository at this point in the history
- test_x509req.rb needs adjustment for OpenSSL 3.3+ [ruby/openssl@c06fdeb]
- test_https.rb needs to skip the test for OpenSSL 3.4 alike to OpenSSL 3.3
  • Loading branch information
zinnjonas committed Nov 26, 2024
1 parent f890985 commit a27af27
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 0 deletions.
33 changes: 33 additions & 0 deletions ruby/riscv64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
diff --git a/PKGBUILD b/PKGBUILD
index f0d4d66..45d2636 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -42,9 +42,15 @@ checkdepends=(
procps-ng
)
options=('!emptydirs')
-source=("https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz")
-sha512sums=('dd5c6a7f74854e143e0ca46b9d7c0d1983fc4886f5f733cd108345dbf4b21f61ad978ad6806e05a57b7af28fd9216dd38d7145808188bbb3695a7f3a4eda3883')
-b2sums=('4fa242ceeaf0dbf0d048b3f116f149f299c1a0ccca500a47929344da523cd3c49365381777e56546fe94003ee90ccc1f2cc957697eb82cd8beb7311b0b00287c')
+source=("https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz"
+ "test_https.patch"
+ "test_x509req.patch")
+sha512sums=('dd5c6a7f74854e143e0ca46b9d7c0d1983fc4886f5f733cd108345dbf4b21f61ad978ad6806e05a57b7af28fd9216dd38d7145808188bbb3695a7f3a4eda3883'
+ '77aafecb9d3ae3417ad1fd69ad30fc453e88a2c14768983f6411ea9d8c52c204'
+ '177d920a02965c4628824f3c94951de779cdf2127f6d85c21b456edaa215d9ba')
+b2sums=('4fa242ceeaf0dbf0d048b3f116f149f299c1a0ccca500a47929344da523cd3c49365381777e56546fe94003ee90ccc1f2cc957697eb82cd8beb7311b0b00287c'
+ '74cc6c6c65dd56847da195347371007ca03b7b233b87a74fa2393c08781c4ba9272f94d94d039ed3956761e643eb183bdd4bcbf2791f372114c51375a793a21b'
+ '778d518d7c51036f237ac7dd0dd1112e2ba75f1010683dae276f72be4ea600bf10746582868ad70661bf03e823006c08b91559a7a141eaba0ea46ead23807b10')

_bootstrap=0
_rubyver="${pkgver:0:3}.0"
@@ -182,6 +188,9 @@ build() {
check() {
cd "ruby-${pkgver}"

+ patch -Np1 -i "../test_x509req.patch"
+ patch -Np1 -i "../test_https.patch"
+
# this uses malloc_usable_size, which is incompatible with fortification level 3
export CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
export CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
10 changes: 10 additions & 0 deletions ruby/test_https.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- a/test/net/http/test_https.rb 2024-11-24 21:17:41.800000000 +0000
+++ b/test/net/http/test_https.rb 2024-11-24 21:16:57.370000000 +0000
@@ -169,6 +169,7 @@
omit if OpenSSL::OPENSSL_LIBRARY_VERSION.include?('OpenSSL 1.1.0h')
omit if OpenSSL::OPENSSL_LIBRARY_VERSION.include?('OpenSSL 3.2.')
omit if OpenSSL::OPENSSL_LIBRARY_VERSION.include?('OpenSSL 3.3.')
+ omit if OpenSSL::OPENSSL_LIBRARY_VERSION.include?('OpenSSL 3.4.')

http = Net::HTTP.new(HOST, config("port"))
http.use_ssl = true
23 changes: 23 additions & 0 deletions ruby/test_x509req.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
--- a/test/openssl/test_x509req.rb 2024-11-24 21:21:54.410000000 +0000
+++ b/test/openssl/test_x509req.rb 2024-11-24 21:16:26.670000000 +0000
@@ -39,11 +39,6 @@
assert_equal(0, req.version)
req = OpenSSL::X509::Request.new(req.to_der)
assert_equal(0, req.version)
-
- req = issue_csr(1, @dn, @rsa1024, OpenSSL::Digest.new('SHA256'))
- assert_equal(1, req.version)
- req = OpenSSL::X509::Request.new(req.to_der)
- assert_equal(1, req.version)
end

def test_subject
@@ -106,7 +106,7 @@
assert_equal(false, req.verify(@rsa2048))
assert_equal(false, request_error_returns_false { req.verify(@dsa256) })
assert_equal(false, request_error_returns_false { req.verify(@dsa512) })
- req.version = 1
+ req.subject = OpenSSL::X509::Name.parse("/C=JP/CN=FooBarFooBar")
assert_equal(false, req.verify(@rsa1024))
rescue OpenSSL::X509::RequestError # RHEL 9 disables SHA1
end

0 comments on commit a27af27

Please sign in to comment.