Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Dear release team,

Please unblock schleuder 3.6.0-3.

It ships an upstream patch to fix verifying encapsulated messages: monkeypatch
ruby-mail-gpg to restore the use of the unaltered raw source of the relevant
email part.

This code was removed in a recent release of ruby-mail-gpg for yet unknown
reasons, and uploaded to Debian via 0.4.4-1.

The change is guarded by a test, which contributes a lot to the size of the
diff; autopkgtests look good, no regressions reported.

Histogramm of the diff:

~ debdiff schleuder_3.6.0-2.dsc schleuder_3.6.0-3.dsc | diffstat

 changelog                                              |   11 
 patches/0030-fix-verifying-encapsulated-messages.patch |  308 +++++++++++++++++
 patches/series                                         |    1 
 3 files changed, 320 insertions(+)

Please find the full debdiff attached.

unblock schleuder/3.6.0-3

Thanks for your work,
cheers,
Georg
diff -Nru schleuder-3.6.0/debian/changelog schleuder-3.6.0/debian/changelog
--- schleuder-3.6.0/debian/changelog	2021-05-23 17:32:19.000000000 +0000
+++ schleuder-3.6.0/debian/changelog	2021-07-29 20:36:52.000000000 +0000
@@ -1,3 +1,14 @@
+schleuder (3.6.0-3) unstable; urgency=medium
+
+  * debian/patches:
+    - Pull in upstream patch to fix verifying encapsulated messages:
+      monkeypatch ruby-mail-gpg to restore the use of the unaltered raw source
+      of the relevant email part.
+      This code was removed in a recent release of ruby-mail-gpg for yet
+      unknown reasons, and uploaded to Debian via 0.4.4-1.
+
+ -- Georg Faerber <ge...@debian.org>  Thu, 29 Jul 2021 20:36:52 +0000
+
 schleuder (3.6.0-2) unstable; urgency=medium
 
   * debian/control:
diff -Nru schleuder-3.6.0/debian/patches/0030-fix-verifying-encapsulated-messages.patch schleuder-3.6.0/debian/patches/0030-fix-verifying-encapsulated-messages.patch
--- schleuder-3.6.0/debian/patches/0030-fix-verifying-encapsulated-messages.patch	1970-01-01 00:00:00.000000000 +0000
+++ schleuder-3.6.0/debian/patches/0030-fix-verifying-encapsulated-messages.patch	2021-07-29 20:36:52.000000000 +0000
@@ -0,0 +1,308 @@
+Description: Fix verifying encapsulated messages
+ This monkeypatches mail-gpg to restore the use of the unaltered raw 
+ source of the relevant email part.
+ This code was removed in 
+ <https://github.com/jkraemer/mail-gpg/commit/5fded41ccee4a58f848a2f8e7bd53d11236f8984>
+ for yet unknown reasons.
+ The issue is tracked at <https://github.com/jkraemer/mail-gpg/issues/67>.
+Origin: upstream
+Bug: https://0xacab.org/schleuder/schleuder/-/issues/502
+Applied-Upstream: cf9a046436e6a1cfe06565bf9b4a41d6b6eebb0d, 7c049123971bde41b5b9203b45009a40ff667b03
+Reviewed-by: Georg Faerber <ge...@debian.org>
+Last-Update: 2021-07-29
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: schleuder/lib/schleuder.rb
+===================================================================
+--- schleuder.orig/lib/schleuder.rb	2021-07-29 20:07:47.289606627 +0000
++++ schleuder/lib/schleuder.rb	2021-07-29 20:07:47.281606517 +0000
+@@ -31,6 +31,7 @@
+ require 'schleuder/mail/message.rb'
+ require 'schleuder/mail/gpg.rb'
+ require 'schleuder/mail/encrypted_part.rb'
++require 'schleuder/mail/gpg/sign_part.rb'
+ require 'schleuder/gpgme/import_status.rb'
+ require 'schleuder/gpgme/key.rb'
+ require 'schleuder/gpgme/sub_key.rb'
+Index: schleuder/lib/schleuder/mail/gpg/sign_part.rb
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ schleuder/lib/schleuder/mail/gpg/sign_part.rb	2021-07-29 20:07:47.281606517 +0000
+@@ -0,0 +1,33 @@
++module Mail
++  module Gpg
++    class SignPart < Mail::Part
++      # Copied verbatim from mail-gpg v.0.4.2. This code was changed in
++      # <https://github.com/jkraemer/mail-gpg/commit/5fded41ccee4a58f848a2f8e7bd53d11236f8984>,
++      # which breaks verifying some encapsulated (signed-then-encrypted)
++      # messages. See
++      # <https://github.com/jkraemer/mail-gpg/pull/40#issue-95776382> for
++      # details.
++      def self.verify_signature(plain_part, signature_part, options = {})
++        if !(signature_part.has_content_type? &&
++            ('application/pgp-signature' == signature_part.mime_type))
++          return false
++        end
++
++        # Work around the problem that plain_part.raw_source prefixes an
++        # erroneous CRLF, <https://github.com/mikel/mail/issues/702>.
++        if ! plain_part.raw_source.empty?
++          plaintext = [ plain_part.header.raw_source,
++                        "\r\n\r\n",
++                        plain_part.body.raw_source
++          ].join
++        else
++          plaintext = plain_part.encoded
++        end
++
++        signature = signature_part.body.encoded
++        GpgmeHelper.sign_verify(plaintext, signature, options)
++      end
++    end
++  end
++end
++
+Index: schleuder/spec/fixtures/mails/encapsulated.eml
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ schleuder/spec/fixtures/mails/encapsulated.eml	2021-07-29 20:10:54.600042128 +0000
+@@ -0,0 +1,55 @@
++From admin@a Wed Jun 09 16:14:08 2021
++From: admin@a
++To: list@a
++Subject: test
++Date: Wed, 09 Jun 2021 18:14:08 +0200
++Message-ID: <6066403.5e4LmiuuCV@deepthought>
++MIME-Version: 1.0
++Content-Type: multipart/encrypted; boundary="nextPart2013499.KfxGTPaf5f"; protocol="application/pgp-encrypted"
++
++--nextPart2013499.KfxGTPaf5f
++Content-Type: application/pgp-encrypted
++Content-Disposition: attachment
++Content-Transfer-Encoding: 7Bit
++
++Version: 1
++--nextPart2013499.KfxGTPaf5f
++Content-Type: application/octet-stream
++Content-Disposition: inline; filename="msg.asc"
++Content-Transfer-Encoding: 7Bit
++
++-----BEGIN PGP MESSAGE-----
++
++hQIMAx0nShUMaPCRAQ//f0l0D6hTAYsNxuD5dOCSdio6pniKNXWu+bJnZQG1eGEs
++4tG2NreH7VpX9qCDd9ZXb4Dh2tFyhVS0NO/nza/bOjqwI7luLlr7QbaxSemyY06+
++d7GVITKVbo/d/iO5UyK8MyOESyLe/u3LydsDKm9aJP/sYjtjatuW9iQyEy9KLkTi
++8v2IjAMlK28lcuX0PiXOelU+V6jg5humUT11GWmC3iP7IjUxaPMbdbUNdqnZ2CI3
++ZW2N50/AF6CS4laRG1xawNy5c3TyoBR/Owd5tHvjGN7PMTSPE99K6VETMV+RfK3n
++ouPYm952mSybmIkZE/uU9SvfPS0vYxAgo+BcnfzpHEKAm5UpEBK3LZ7AJizaCOXK
++LAYkK6dR2/38jCLjGm187p2IiJGy57AT2e4rsSXTqW9ywz0ukTC3xzGKuq9NPAu4
++LH6dXvEutmFBo1SWObEksYSOmPzCOdcknWl5xhlgPBMzG1mOXaWgkogITl2F/Cta
++vuWGSuOZLo+3WEmpSYGKddrrQM0AiWMlPN/Xjh6icIyxNzjFTYP5iRdDCqlGQEPV
++s9AAhYDB0sPYDyd03JSAdZrrZOCKu8ezW8KAsiYLoypfTGSbqvLeWPXyAAZcoFTX
++dhdZoSPiKsdb9MQ1saAgPS+Gt6RKu/i2tV2ZRhlgUi7VQWeiSPawS8poyNurY3GE
++jAMCZeuxTV+KPgEEAIlDW20JIWC/3DQ6j2GJfzosfpYb2FBycohIpJawmvf5b5hH
++hTWGwrYlSBrA3xIiC3EFc9EgCJ8vhicDe+xD5dmKywGS7xRqU2a+hNp8k/CA6FLZ
++FO4rGtwBGRNor/DN20nwx6PEC9baD0W0SPwqt2CHi6XRomyyMfCarQ7XiA4Y0ukB
++rPf+FIIuhYLFRZs1Od6s4uatPZxAjh8yZQ6GAiJ7H2BaT5vERBIXvWDqrGQmA44Q
++t35Ey2MFIIx1KQyaeHthlE++loPSEtzSerV+4pAqEz+NiCv4BOxybNHk9S9evOZo
++k6fuiLBCw6ezDzSgvQbxVrO3q0wNx2KAe0WWunaVaebQ2iTsOiVKhsL1XANmdta6
++rA4avZHHsf+OAFbSyWG9k0tb5PBeQJZCqctKbVgyL2psWDpgHLYkYbMPH58RV1W8
++8nM83o1ecSDqswVrUYWVNiTYXKeZf/FUbJJUd996EL7NTm3Y610EtaAXOmmGnjKc
++rRnCILQiRHc83/tPMw57qMN7Zf2cwZUU8iPuxnJxlOzapppPrOHA9vllGYj73uxu
++MKYJvNpar+pQ/HeyWaz0xlwGLn4qpTUkCVtul0YhsIaErrZi1hNIGlxueYeOtCdr
++Z5VOvxvEgLxUnUQwdH5re65xM0cLQaMIDYbOkyAtILUoHEaO0hal76XaI7Ene3wL
++iPP7RLIasdj6PgeupuX8pzsGbFnlZatC4jrtoO807k0AYDNpd6RmRzwCONbm3fkH
++Hg/ethyjqxwsJjcF65ckW+ofTWgtuFsheujqNQuJ97NAFZPssxPcPLjP94vt9R+J
++uXF7bdBqn03qCcMJNJE8p7SPJzhbbkcm2BumTcZec5dMWY4x/IBfJS2vtzJ8RKAw
++hZ4EWKsg7t8uXqKyPWuOy+5dOZbm4AyP7TB9jaLN82Jtn+MAy4VDskR+vIa7Gn4Y
++ZOHRVMe9lpyLZ1R7yXmO+v/nBAoStBt2jZ2VvLH5SQEIaBmfqxAtZksONhs8nKNo
++83SPmpzacXmdbQELy+bRqrgxWTuapmmCI7cMArdXyGxXOzIoYCiV
++=Q/1n
++-----END PGP MESSAGE-----
++
++--nextPart2013499.KfxGTPaf5f--
++
+Index: schleuder/spec/fixtures/openpgp-keys/encapsulated-list.sec
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ schleuder/spec/fixtures/openpgp-keys/encapsulated-list.sec	2021-07-29 20:10:54.600042128 +0000
+@@ -0,0 +1,131 @@
++-----BEGIN PGP PRIVATE KEY BLOCK-----
++
++lQcYBGDAx2MBEACpYol4uyRG3YpENt1EbOkUW4PGOpK4y4YJLn9Tpf5+Do73Ejay
++MblTj1pXCDmip9pi2s+XXke3Bms+BiU5tCPKZBVsMWjKu1yCc/Ga4KgcGJ+oqqtU
++HhjoSCxNe9ObqMEv1ldgFiN2J3WdIJzbTCERZB5zoC4U+8tpZz9tdPTQxNhxtYlM
++O+rbzobRnfZS0kWRZEH3mxZlrL7QOK1tc1vkj7XpX5WouUmeqNecL1ZvxzkebYPU
++IYn8uNmrsxTn7L2MmuiyklW9FnYsBi3G8RPHew+zFz2He6M6v6RNKm3/eXUz/V61
++dEhSYhipRmL3iqaI6M++1TxVgvRztd71PtaaHNWa6Fy8tGWb7X6oEF/RKWAsQ9ca
++dU/lyXvqANBhnElzeRKpogtkUcGj98jys1d4vLQEZNK95PdQ9JKo7r0QcbQyYHMn
++CJnJBNMA5LEOelYfk9rYBS65BHyxgRjgOib10IJ55Z+DKKLTu95+CQd+jeWl+L/F
++UfdlYSJR2MyLC38/lMhAVmMii+jJzE+U0iTWEROxNIXoGatj9RMZc/SHFtfyqhBu
++z/2sjZ+m0Xw1aWnTTraEC3pb9L0L5m1e0wvmz1rpwkFH/Rqp6+weBlj2aPvAG8h6
++ZmDS41ubn0YT42TxqKHuLWQwD7XwqoymtB7O73ZNwEEw7WgV08l7aiihZQARAQAB
++AA/9E9glfu193IeL8V30IlYYIHhwQcMO+XNuqpi19hjWbfJKsYuCuPG2YqHC1bty
++9SlxHm/ALl2vTTQFUGjr54zBPK7pC5nmSwoUVnw67Agx6cjAu8Py+pHkHSKHfjRp
++oCzvJSmZZvpxASCyWMw/VDnhDeaK4sT7YR32wMyF088F94d4TCoWgcXrSAE0Lk6x
++Uxara9MxH08eGp9YY5CgUNhZBbgIeeTm5bN/eoURbYzmNYZDnNr7vNiJEACgD8uV
++QW6s7lIfvPwD63k8MwAuUMZhqNc0CalJXhwQDYvyNdAovut93a9rbxrGdlBjz0Ed
++yx6FUDjmTdcxkFsdRIkkK9tGzOqP6J5t9u+VLeHZwX/k/GWPmJdd1GB6CjpHqeJp
++pb0WqcSE1s0+wRdBv2QpAU5UcI+kY69Q49CCC9a+psqDJbi0WJg0C1H98zZ4y5zY
++2q/wN8y08eKM/YQKz7RRhO8LaCFQLN3yFOxdWQHgoCAXZIqmfw0F9ar1wKEInNjw
++6Zk7ZjF0r2nm0pAEz6hftjKWjPVlNUnME8REKIEZ6OzSLVistA3oyL8o+uuDgHFA
++3s2qLp8aKUGaplNunbFX5+24MeBJyswgGjToRZrVrmeTTpC6Pv9K1de73I8B5T6+
++O5azGlvhPn5TJ+8r7opj0n9eOljWbu6gmE2DpOMpWpdfX0EIAMpo2914vHr/luPV
++x6rY+YGVXQVHsrgkgZmY+8X5McjG/ftY392FiNE3aoHcWwMB71BS4kYVannVp3KM
++Cd/3pTgF7k6j1Z1ISYxNrDTMfG/mRnmMNpHwalEZn/InQrLicTiSNCy7kW0vn5pB
++BprrcNPBYX5uS0N7otypjXtbmBn/gLdnmLTVbu7qFkz2vZwWrfPtcFbljGHHGxJJ
++ccJlOc9XLHc7uqorvrjqU1Iw6W+FOwicPihxlPNqy1RW5wplTzXNqWsO+ZPOtkEN
++bwChnAtPVMoH+Smg4nZwBklkEfOgGnsoA3WNeAMOXu0nmw4qEkMqKT4r8AOXwdy+
++PB38b10IANY7S0SNiGh5PhW91kWzxxl9Hhl4RkDbR8TcuTans+cZ78AOXbyaL1LV
++WxKNQI4RJ+22+mLfGNLDW/6kWDNQ6f8hQKZ+cjn/Gl0dCL7yqAUjgOpnN6OxiQPM
++CaboxXQNIYsxFU47I1SMKhZ9uY6Iujy9t6g62Qz4EpQq82RiZNW5pX8Omr3R1lPd
++CVjTHsDMwTjiabWjG1tWONb4iHYKdjHlTza8vgTSD0oxBskR0DFXWTbwcz1k7+E3
++AfSo/ztGx9zp5+ua7CbuHD27XdNyMmvIka2U2wquDt8AYV4JI9kBsBFqXfZmahW6
++YkAEQeOuZRTU/GVKkd02V1bLTjXmwakH/0kJpxe4uNq5Vs5Qtoc+GmONUPQeLHuR
++njk5Mtem2b+a3yDg/igRH+kYAqauWlbl9OmRyxb84JLWu4iHJ/dFROqAsFLYPCSd
++opXGh+GPb0u/CCJ1sSfQjmAl5fXromjrcOyXDb/eWEsKau6lkpOaA1nG1hRjZp5d
++a9rvcsN/v5DkMX6Ji3a/6VhnaopjyLcqJM3Z9P26MlpeSmaSP4lGNnvjAPjwbsUK
++OIcLIXixj9Bx7mRzn6OXYQm3L/W1f+ianXbdouB2UG92KXtXvsq6a118T+TtTivh
++LDWDtSf0FmVTNBRnvS5TkXnWNmyABvSSwCdkyJWoYCfElYrSHo7zc6GKQ7QPbGlz
++dEBhIDxsaXN0QGE+iQJRBBMBCgA7AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheA
++FiEEft8zNsuLxtFdRh21//egQlHn0RIFAmDAx6ACGQEACgkQ//egQlHn0RLX0xAA
++kb8TDNsdT3JT/uBhIM6jLP8enOKKkbiCp7VeQR5r/RgizoTXIsSKTAn06LUkrfFb
++KfQNi80rHWaB8x73GYQwgMlUGV3PTpoNhhZpmZwrKIHAWDyicSgRfEVncnhELXdJ
++rXrBUnfzjYJPfrv0uMjH05PgjjXezsz6r6KVViNL1kMqJrYWOs9+ofZmgIbcrfzP
++MaisjGLrWE3FiZLKHOT3YWj+n/t7Ut4Hp/m8ilN5ipWM93o1sUYmz1u6tfhRrE+Q
++DWi1M+Koeq9noOcG75Hxs47NRmdKt7qwveq+pYG6Sn8HJA7+VYcUbnCz8ndgGPqB
++Qhf+ZkxrI2JP+lRgFq+V5dVMEfK8GxXYxrQ5bfnacS8/z5WLBs4erN38i/iniT2d
++AYTYTn2rSxKDmHKjg7VKw8oNHMGnNldCg4U4c9akaILw7HMakMkW4rmUUhgcgTtC
++ftQtPnZjBPIiZFCzuQOKF9a41/RDyHiXDPaFyQTK+h/y/6lgCJxj6bYpUGGOUZLo
++2P9O1LWJ3v1wUDR80cSuiXhdm1GWv1kY271JhjxWMQtsAnudsCSsySYj9FDsipMC
++wOR9NKwuDXbSor1cgzsTLIhaUiGxcfLEw/Ecl1gJ5OWkglcgN2+Y1c/2wz9iYTs1
+++MLoKi/fkwXz+wHgK9Haeo0C51w2Pe1wtdVCzuSRcPS0F2xpc3RAYSA8bGlzdC1y
++ZXF1ZXN0QGE+iQJOBBMBCgA4FiEEft8zNsuLxtFdRh21//egQlHn0RIFAmDAx54C
++GwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQ//egQlHn0RJWPA//eqf00KN6
++RMdwC6JwO3LVYTJm2Inv2ZjYUWo900Zhi5gJm13WJIS+2p1HcwFqReUM+uzC8Jap
++sSpnRZ5t7qVjr6h6SmxBFP+MO4A8OU2qPcWaNPER1u7e0KSAyTqRtzO2Vk3G/P51
++AZz8VEG+XOeL9SkhXe6QHFSK4F/Rkkip9nHPZ1KXjs5f3GbZahysvLlEdxiX1IO5
++VoYGJWp50mOJlQ/JSf8hC3CmXPcR/N9UjHCwqUMxMiYybt8nEpu/Zw2AOQYvH7Ru
++9dEUkupoguBeFZKBtgTqx29WtMJBSzv/YpFuQQoOmcEQg+KUXfWoGv1JszZYa/Ib
++P9FPd357TWO6bdP2qijbYR7WCro5yqQo4vOAYiWHsrC0/zltBBD8V8RBo1UwYWAm
++dwKSpGS4VdOt1QmADemZVeBQvU3P9gYp1cTf3tkAJhS5TYeAPuvbNQuWHRFcVKKO
++cOkx3TvKfFe01Mnc1+0dtw0UuD9trzKoLCijFKyAySrtzIMtfbT15hZfBuAD8Z9D
++HjriRojO6JsP4k12MsQkpDOXzCVgN8JNkCq3FgZDlIQapzalilK18lKsux0h3IZK
++fhDA/8rFsaBHP3FggExakNwTQyw/msXSYicxqgiQax3E2R+AzvlrqAgyC+WiNlWj
++bY4z5NQITdWdUWd4a2lCssqeqjgC6ieZ9e+0FWxpc3RAYSA8bGlzdC1vd25lckBh
++PokCTgQTAQoAOBYhBH7fMzbLi8bRXUYdtf/3oEJR59ESBQJgwMefAhsDBQsJCAcC
++BhUKCQgLAgQWAgMBAh4BAheAAAoJEP/3oEJR59ES/gsP/11X61s4phKNlrGbCnhH
++1Vmt2kUbB7DbeICLU+yDijtdjXDgf934/q5A7phxqTpcTMFhY4Ed2pQ33AEqYNfA
++HyksOlE32q6pJjOGZDOSltTA8BdNCQ0zkZXbRKGzbDAHqBCdcJcRxRcPhJqdKyu9
++yQq0qOCkeccMZUXVwjGudkffUDM/EvSQAPuU1u3FBmqMLWzoA/cLyNektnB2VPMm
++fdg8OTrAYYoitpYuIownTXGliIqbIkjOv97WO4WRhteUzASDB8Rt/yqSiYhxOD3k
++qggRSw/wN1m53dUhLSRzVYK7IMMvNC2OMzGLKVfY+sDpStSJroYYpHYsHVNO210P
++BwGols3DWRWPE3LeOPq1MZCa4PwiQ3dtfy66CKtV/bR56oHNe9YJ9n0ECLlQ8Zsm
++qeqGtmZoD+Sbk0lrgzihrdfFwc6NaG48oKjGNf040p4qy0FWsL1DH9U67Yc75ZPB
++uoDvlxYhGWFdwxmwk2dEtNCb/4ZhxKVuVzxbUo02q93NX50KtnGHtyEWUGokEJiI
++BEIrGIJY0jcNj4nNcT1a9JvVGJqaDyL1ejMDcLf4+ndYJOpKFcORCmNpGPuN3BLe
++z7Hckj3xIh16UXqbNzGbISEyIAfB0Yw/5qR2YqXPK1VEB8iIv8wHShbY/+TvbXO8
++aZe+cS2X90nBPdVqnZeoqbKXnQcYBGDAx2MBEADOhq3Ryy8gLFnpWPJ1wgoOBSzJ
++Gl/VsNg8IebuT5otnHw5+pLUwSd35bxQyUkqNaCvs0506c4i5gLPj7dKdjkmG73Q
++pheCig5qOGJ7EZcf4IrqGyjxk5FvEkD6OxjR2QKJ/wiH0u3h8b5KZHOk8sB1gAs5
++P8vQ46W6pbdCmhhc+JRYl7pAYlM7s7W/+io+06U8qMEOQteR4S+AEpWDjUlf9ZsZ
++TcJ5lX6ePLD79sh3nr3pYtwWXdHmsM5FBlL+V3V5868eS9PsOWk+14NRXrcTM5Ty
++KFsicS0dZCDqMMpE6OJoAOKDr0WRjuoGX6xMwm36Q3YBKQEUGEjxygvCzTmF+uKO
++8A1dpvgaMmUNIz24m8Y1081hzEVg8aNzPC505s9ISHLhEuXuL30iU7rjZHBbxNvs
++dZkzZdgGWDWnhwtmyZR35c4mkg4PfdLz5++L9/BGWUenPJa0VeJTVPlyxD7K0REn
++osBy8CpgHuUfAxDySR0G27CSzrDoxsAtEyc4HbqSWYsDm8aau5mYqojGlKeWkIw5
++E5IYNBKEvCQMtLIhy5kjaxHaKBmYaxcVMwRDBDL5lm5PFTa/b5NHMqqsEgK4oUTO
++rXPYObJwvwoHN22hsj1zrJ4W4XuJbNrLeHv5Q8uXxyNo6yYZ1+i5x34YpkdOY12o
++TKkCidDA62XrpvTgfwARAQABAA//Sx5ui8/xOK0ZGQiazB1DZf0Y4J7gu8uioyCb
++rBO1GyD/iGEtVghZkEE2IVZNb/Zol2/LOjgum7/4xsFZ5FIjEErn3EQFahxICPew
++Tl5EDzqvnF47or7Pl8xWaQ3kxbM+uq3STwD4OIYi9lEaRSVsvnBP5MdhHX4n8j9D
++bIy7Dtn1r1Gk07VP2/fORGE8S3TU9b7V1ZeXbD6xdc6MpnhV93rQqr//XBT1pJ2j
++rEoDeYr6PbERJ2uBpPyrUizuNAfguXZavFTNZO8u6kYeRBME2Q2agAgQufLbe4TH
++ehc8AxuH+ldUDJzMW5jVY3MaKyNPOEegXOSquUHqClQ4uebGpF5LsyqQyj2SYkYu
++eRoLurpQRN/M0kuq3YC6UoOHFOWdMWmjlAyFuBpWIJNQ1jRa0/hPpwqgx+LFAV8Y
++fZp3Urcs6wc2juoGvGhu2jv2BWksROfz31Zr2o1pyA90+lPbtH3UxHz7N/+QIecx
++BwYbSzxpdPiubHcPHtWcURXbJWX5hxZivL/hXCTN/2YVIMhPVtj+yiNE33VMGqqU
++mbDd6pLgPl35coq67DFilwR7uyzSQEyfoI5UUvIYvBe+4H24QEvKS29gvPqi0DpP
++BjmQTs7dimwy1Nsr7mPe5zmUA4PB1SYWhCLYHi53WKXslNiGk4pKRLX7fiiGEg2u
++6WHbf1UIAM+c0HUpna8klygKMn7Czm+oTLNg3Ab77AtBUyHdLQU+198GQzLJHkgo
++5AGv7p1mieZZWvxeK+1MYMnynci6l9oib/MbXgTbwzL33QSpBY38YWYWV9Ezzmv7
++Wqo9veu28tuBiy5xRod58f6uyms3/EX0yUJMBW3Fu/w5Az0e12CfxVKjtwrqkzY+
++6YISceufSUWrICMkTN65YQEmkPxjqTT6pQXe8dME698zZy4koyhNbv5QsQkHQTyu
++7Rza8amWZmoaFZqbzXtq3PABjy72pwwTFVgorbN4ZWYxVCf3dtmM0Y1xflGZcJt8
++mpl+89dRrcG7stIzWc+L1F17PoZK8i0IAP6pCnE0BKG87bmJ1JiVLMnK3ypGc03t
++f7VHhBfqjdXYucC67R7I4ex4hELlVf0CPruYUSyCpmRGrUgXnHnedtW3wnk8K8LT
++zCt2OSzeplcIijoGzlb2nPrMDEpjy9Gx1hA2naeLbU8ypqIKli1Xdjujjou5AVOV
++tO0pLlWBtswj/52h8rVMCnY0bwhICODluuwAMR5Gcrcu7GeO9L4NCsDpqrLCuqql
++rC7xPqEfnQSRRgZMEvI8Lxfm6USpjW+Kbch1gROdg41LTM8yY8L0KgCle01cz8zD
++mxs9qGNpNtxN8Hg2Z97tskyVttU7s0PipRhTi5iaVSMwxrCgc0mrBNsH/R4QM8l4
++FOVwmRGPwiJ/xnHBxda8EYxvUk4H4lvsxg1U2S/FnuXzVTJnI2WkwRQ9nY4wJTH1
++iGNWLxZzM+JhDkoZ7oycQVXqthsKZ17k1DKg9C7/n4dYdGT8i1xjxbre5bRb0AU7
++dE/LfEgFeCRM5xeGqZ3mQKu2kNSPNvYGzQS99UhMc21vvqvv4zveF45g1Y7bSJVd
++Fi8hn5XrrXbbVB02LU/8u97U3HYm9Dek/vGpS6vpnLPQjwBpcZlD4eZRLpXzXNef
++MJXrS6MhafXkli7z3YGJcUlX43KPteoqXze35x7VwY8EUlQ/Gb86bA2C9w/ikgkM
++BAB9qUsN8ONJ2VaC4IkCNgQYAQoAIBYhBH7fMzbLi8bRXUYdtf/3oEJR59ESBQJg
++wMdjAhsMAAoJEP/3oEJR59ESpE8P/ilW47QUB7gd9at8hgchXuuuJ3eMiPY6DDFR
++Wv+6dwvLn19418TuN5/lfR6Vem/MNPfGWfU6epNdtjghst2prtpDvbjoqDJNTXXx
+++FDqhEcca3JAKAp6qUEHHVRwdzlVrYwjRwn5Sg3t5rbL6BSIi40iilAH4vCa0Cvj
++QwytHo1L9aLO63ua1wAEgeiVNcNq5y0tR7kcIU/xYjs5n4J7YO6Ith5MDRn4jlKf
++ZMstmsyRxI/y9DrAIQUDs/ZdXo6oVKCxSjey9yt2lNE/YReCNjnlSfK9R0JRQMPH
++/ryR9z6SetdGL15g0iXsFNm+O6eOQAz+e4Hvs5/IDToFQ8NK/NfM9pfm/KZUtIkQ
++V7gU/uniq+sDp6S6laE9rafUkV8Y4HLH7p9bUzuzupzHcVxu0DMKZxqasW/Pxsgg
++KjOQum1UuH6mvY/OeyHugptH8hcsw2glLeKjQnyOihHG2h7jJZyhH7rQ03rnJcr4
++T0FgfyEG9hoDPLwE5n6Q+AGqlktN7wvOQ7xlQ98NVUzWuweZQEE+Tz0m/HNKBntI
++DiwWYVbIMixbc8cu3D1xpCFct/0+z+/h/P5Ix2AMHivsULLMyy69L1AlVAYIkZhS
++tJwiA8QczkQqvOSBkN/O16EoR6jLTEuXoiMoVp1IhB7uLtBvAKkpr40BvK/HNi0t
++ECEQBvnW
++=wUwL
++-----END PGP PRIVATE KEY BLOCK-----
+Index: schleuder/spec/fixtures/openpgp-keys/encapsulated-sender.pub
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ schleuder/spec/fixtures/openpgp-keys/encapsulated-sender.pub	2021-07-29 20:10:54.600042128 +0000
+@@ -0,0 +1,20 @@
++-----BEGIN PGP PUBLIC KEY BLOCK-----
++Comment: 9F29 CA4C F1A4 7561 492C  0737 C7A5 457A 35C5 0082
++
++xo0EYMDjbQEEAOFOAM5DzK9RWjaME7u90bEgAgJ4omMk4LWpvxSf6TTHmT9/ciPG
++dPwMfci2X4ugon15uZ/XmgNxuK14q912UlEVABtJrxs2u2O4Xofnx856z31beQ0R
++o01+6j9MqpOF70ZzwbDWiCOaZUwjg3vgYqeMmKC9V4NcEPGICRwiUsSNABEBAAHN
++B2FkbWluQGHCwA4EEwEKADgWIQSfKcpM8aR1YUksBzfHpUV6NcUAggUCYMDjbQIb
++AwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRDHpUV6NcUAgummA/9Bl+K695wL
++ve16vldw9xKI9d0QGhUT1XAMp9nZ2MeD2Z+LBa6SMI6b0yhDG5vPd5LDafy91ed3
++X3ZQK62H4M7RIMA89NUCHRb2avt5iLCQwkliXrYthd8+rRhRKZNF0ilesXway7Dt
++EsQndI1BfJ+U8cYiUWeqfYV60ismvytvGs6NBGDA420BBADUgR0ugu90qdSA7Fwo
++szSPXYPeGeO42FVj8Ybuu3SY4tuoGtFQKDoMI/sPDVIaKV4HPth86YP5fK5IcX9e
++TOmZCldcO9yEWLLN0lSRzbS3yqykLJZNHCLvyUmUBv41R5hWK2ynuR+OXJcw3Qxk
++2xT4xzngursr93K2qBcGxW14zwARAQABwrYEGAEKACAWIQSfKcpM8aR1YUksBzfH
++pUV6NcUAggUCYMDjbQIbDAAKCRDHpUV6NcUAgnP1A/0U7UU4p3ygT757DJYaYron
++ymTPv5gPHYVWq9t/T3N94BhNyXWWY6xAIwbkUt1fHwKlCkRJkJxUqjvWg0GwSV+v
++iBYDFqrcwLlOOo5XBAptMSkcBGOFQaOJeh1trwWjlduKOwFhuidPXk+aOP0PAm56
++vV9oNiZxUMHIwGsGHUtUZg==
++=NfvK
++-----END PGP PUBLIC KEY BLOCK-----
+Index: schleuder/spec/schleuder/unit/message_spec.rb
+===================================================================
+--- schleuder.orig/spec/schleuder/unit/message_spec.rb	2021-07-29 20:03:53.000000000 +0000
++++ schleuder/spec/schleuder/unit/message_spec.rb	2021-07-29 20:14:10.458381710 +0000
+@@ -225,5 +225,18 @@
+       expect(ph.split("\n")).to all( satisfy{|l| l.length <= 78 })
+     end
+   end
++
++  it 'verifies an encapsulated (signed-then-encrypted) message' do
++    list = create(:list, fingerprint: '7EDF3336CB8BC6D15D461DB5FFF7A04251E7D112')
++    list.import_key(File.read('spec/fixtures/openpgp-keys/encapsulated-list.sec'))
++    list.import_key(File.read('spec/fixtures/openpgp-keys/encapsulated-sender.pub'))
++    list.subscribe('ad...@example.org', '9F29CA4CF1A47561492C0737C7A5457A35C50082', true)
++    msg = File.read('spec/fixtures/mails/encapsulated.eml')
++    mail = Mail.create_message_to_list(msg, list.request_address, list)
++
++    result = mail.setup
++
++    expect(result.was_validly_signed?).to be(true)
++  end
+ end
+ 
diff -Nru schleuder-3.6.0/debian/patches/series schleuder-3.6.0/debian/patches/series
--- schleuder-3.6.0/debian/patches/series	2021-05-23 17:32:19.000000000 +0000
+++ schleuder-3.6.0/debian/patches/series	2021-07-29 20:36:52.000000000 +0000
@@ -1,3 +1,4 @@
+0030-fix-verifying-encapsulated-messages.patch
 0029-gemspec-mail-gpg-relax-version.patch
 0028-specs-fix-to-less-depend-on-preconditions.patch
 0027-rescue-gpgme-error-canceled.patch

Reply via email to