From 909a0b3f3a0fddfab6abd1f0775cdd50f1406be6 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sat, 23 Dec 2023 08:44:42 -0500 Subject: Implement --disable-signatures (fixes #1015) --- manual/cli.rst | 34 ++++++++++++++++++++++++++-------- manual/qpdf.1 | 13 ++++++++++--- manual/release-notes.rst | 5 +++++ 3 files changed, 41 insertions(+), 11 deletions(-) (limited to 'manual') diff --git a/manual/cli.rst b/manual/cli.rst index 93131542..db32c515 100644 --- a/manual/cli.rst +++ b/manual/cli.rst @@ -736,22 +736,40 @@ Related Options whatever encryption was present on the input file. This functionality is not intended to be used for bypassing copyright restrictions or other restrictions placed on files by their - producers. See also :qpdf:ref:`--copy-encryption` and - :qpdf:ref:`--remove-restrictions`. + producers. See also :qpdf:ref:`--copy-encryption`, + :qpdf:ref:`--remove-restrictions`, and + :qpdf:ref:`--disable-signatures`. .. qpdf:option:: --remove-restrictions .. help: remove security restrictions from input file Remove restrictions associated with digitally signed PDF files. - This may be combined with --decrypt to allow free editing of - previously signed/encrypted files. This option invalidates the - signature but leaves its visual appearance intact. + This may be combined with --decrypt and --disable-signatures to + allow free editing of previously signed/encrypted files. This + option invalidates the signature but leaves its visual + appearance intact. See also --disable-signatures. Remove security restrictions associated with digitally signed PDF - files. This may be combined with :qpdf:ref:--decrypt: to allow - free editing of previously signed/encrypted files. This option - invalidates the signature but leaves its visual appearance intact. + files. This may be combined with :qpdf:ref:`--decrypt` and + :qpdf:ref:`--disable-signatures` to allow free editing of + previously signed/encrypted files. This option invalidates the + signature but leaves its visual appearance intact. See also + :qpdf:ref:`--disable-signatures`. + +.. qpdf:option:: --disable-signatures + + .. help: disable digital signature fields + + Remove all digital signature fields from a file. The appearance + of the digital signature, if any, will remain on the page, but + it will no longer be a signature field. See also + --remove-restrictions. + + Remove all digital signature fields from a file. The appearance + of the digital signature, if any, will remain on the page, but + it will no longer be a signature field. See also + :qpdf:ref:`--remove-restrictions`. .. qpdf:option:: --copy-encryption=file diff --git a/manual/qpdf.1 b/manual/qpdf.1 index b8bf5033..b8376877 100644 --- a/manual/qpdf.1 +++ b/manual/qpdf.1 @@ -221,9 +221,16 @@ present on the input file. This option overrides that behavior. .TP .B --remove-restrictions \-\- remove security restrictions from input file Remove restrictions associated with digitally signed PDF files. -This may be combined with --decrypt to allow free editing of -previously signed/encrypted files. This option invalidates the -signature but leaves its visual appearance intact. +This may be combined with --decrypt and --disable-signatures to +allow free editing of previously signed/encrypted files. This +option invalidates the signature but leaves its visual +appearance intact. See also --disable-signatures. +.TP +.B --disable-signatures \-\- disable digital signature fields +Remove all digital signature fields from a file. The appearance +of the digital signature, if any, will remain on the page, but +it will no longer be a signature field. See also +--remove-restrictions. .TP .B --copy-encryption \-\- copy another file's encryption details --copy-encryption=file diff --git a/manual/release-notes.rst b/manual/release-notes.rst index 443a4b01..96bebb76 100644 --- a/manual/release-notes.rst +++ b/manual/release-notes.rst @@ -71,6 +71,11 @@ Planned changes for future 12.x (subject to change): shell completion and allows creation of passwords that start with ``-``. + - Add ``QPDFAcroFormDocumentHelper::disableDigitalSignatures`` and + the :qpdf:ref:`--disable-signatures` command-line argument. This + disables any digital signature fields, leaving their visual + representations intact. + - Build Enhancements: - The qpdf test suite now passes when qpdf is linked with an -- cgit v1.2.3-54-g00ecf