summaryrefslogtreecommitdiff
path: root/debian/patches/06-fixup-bbstored-certs.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/06-fixup-bbstored-certs.diff')
-rw-r--r--debian/patches/06-fixup-bbstored-certs.diff35
1 files changed, 35 insertions, 0 deletions
diff --git a/debian/patches/06-fixup-bbstored-certs.diff b/debian/patches/06-fixup-bbstored-certs.diff
new file mode 100644
index 00000000..f752bd2c
--- /dev/null
+++ b/debian/patches/06-fixup-bbstored-certs.diff
@@ -0,0 +1,35 @@
+From: Reinhard Tartler <siretart@tauware.de>
+Subject: Fixup bbstored for newer openssl
+
+It appears that modern openssl versions slightly changed the formatting
+for printing the common name of a certificate.
+
+I've also dropped the check against filename because I cound't get the
+filename to match against my local files - the check didn't appear too
+useful to me.
+
+
+--- a/bin/bbstored/bbstored-certs.in
++++ b/bin/bbstored/bbstored-certs.in
+@@ -171,12 +171,6 @@ sub cmd_sign
+
+ my $acc = $1;
+
+- # check against filename
+- if(!($csr =~ m/(\A|\/)([A-Fa-f0-9]+)-/) || $2 ne $acc)
+- {
+- die "Certificate request filename does not match name in certificate ($common_name)"
+- }
+-
+ print <<__E;
+
+ This certificate is for backup account
+@@ -288,7 +282,7 @@ sub get_csr_common_name
+ my $subject;
+ while(<CSRTEXT>)
+ {
+- $subject = $1 if m/Subject:.+?CN=([-\.\w]+)/
++ $subject = $1 if m/Subject:.+?CN\s?=\s?([-\.\w]+)/
+ }
+ close CSRTEXT;
+