From 1527431bbecc8240487ed12ae4bcbdd5f47765a3 Mon Sep 17 00:00:00 2001 From: Michael J Gruber Date: Thu, 15 Nov 2018 10:24:01 +0100 Subject: [PATCH] fix signature handling --- ...aved-sig_widget-pointer-to-sign-sign.patch | 58 +++++++++++++++++++ mupdf.spec | 7 ++- 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 0001-Fix-699840-Use-saved-sig_widget-pointer-to-sign-sign.patch diff --git a/0001-Fix-699840-Use-saved-sig_widget-pointer-to-sign-sign.patch b/0001-Fix-699840-Use-saved-sig_widget-pointer-to-sign-sign.patch new file mode 100644 index 0000000..8781d21 --- /dev/null +++ b/0001-Fix-699840-Use-saved-sig_widget-pointer-to-sign-sign.patch @@ -0,0 +1,58 @@ +From 68840d4a34e1e56ea9130158e8e163fb60550db4 Mon Sep 17 00:00:00 2001 +Message-Id: <68840d4a34e1e56ea9130158e8e163fb60550db4.1542273624.git.mjg@fedoraproject.org> +From: Tor Andersson +Date: Wed, 7 Nov 2018 19:44:55 +0100 +Subject: [PATCH] Fix 699840: Use saved sig_widget pointer to sign signatures, + not selected_annot. + +--- + platform/gl/gl-form.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/platform/gl/gl-form.c b/platform/gl/gl-form.c +index 94daa8e2..889554f2 100644 +--- a/platform/gl/gl-form.c ++++ b/platform/gl/gl-form.c +@@ -10,6 +10,10 @@ + #include "mupdf/helpers/pkcs7-check.h" + #include "mupdf/helpers/pkcs7-openssl.h" + ++static pdf_widget *sig_widget; ++static char sig_status[500]; ++static int sig_result; ++ + static char cert_filename[PATH_MAX]; + static struct input cert_password; + +@@ -22,7 +26,7 @@ static void do_sign(void) + fz_try(ctx) + { + signer = pkcs7_openssl_read_pfx(ctx, cert_filename, cert_password.text); +- pdf_sign_signature(ctx, pdf, selected_annot, signer); ++ pdf_sign_signature(ctx, pdf, sig_widget, signer); + ui_show_warning_dialog("Signed document successfully."); + } + fz_always(ctx) +@@ -33,7 +37,7 @@ static void do_sign(void) + fz_catch(ctx) + ui_show_warning_dialog("%s", fz_caught_message(ctx)); + +- if (pdf_update_page(ctx, selected_annot->page)) ++ if (pdf_update_page(ctx, sig_widget->page)) + render_page(); + } + +@@ -84,10 +88,6 @@ static void cert_file_dialog(void) + } + } + +-static pdf_widget *sig_widget; +-static char sig_status[500]; +-static int sig_result; +- + static void sig_dialog(void) + { + const char *label = pdf_field_label(ctx, sig_widget->page->doc, sig_widget->obj); +-- +2.19.1.1238.g4b45f61cc0 + diff --git a/mupdf.spec b/mupdf.spec index c9541b8..7ff374e 100644 --- a/mupdf.spec +++ b/mupdf.spec @@ -1,6 +1,6 @@ Name: mupdf Version: 1.14.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A lightweight PDF viewer and toolkit Group: Applications/Publishing License: AGPLv3+ @@ -26,6 +26,7 @@ Patch0: 0001-fix-build-on-big-endian.patch Patch1: mupdf-CVE-2018-16647.patch Patch2: mupdf-CVE-2018-16648.patch Patch3: mupdf-CVE-2018-18662.patch +Patch4: 0001-Fix-699840-Use-saved-sig_widget-pointer-to-sign-sign.patch %description MuPDF is a lightweight PDF viewer and toolkit written in portable C. @@ -62,6 +63,7 @@ done %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 echo > user.make "\ USE_SYSTEM_FREETYPE := yes USE_SYSTEM_HARFBUZZ := yes @@ -115,6 +117,9 @@ update-desktop-database &> /dev/null || : %{_libdir}/lib%{name}*.a %changelog +* Thu Nov 15 2018 Michael J Gruber - 1.14.0-5 +- fix signature handling + * Thu Nov 15 2018 Michael J Gruber - 1.14.0-4 - bz #1644444 #1644445