aboutsummaryrefslogtreecommitdiffstats
path: root/doc (unfollow)
Commit message (Collapse)AuthorFilesLines
9 dayswks: Use templates for the server responses.Werner Koch4-1/+155
* common/helpfile.c (gnupg_get_template): Add arg locale_override and adjust all callers. * tools/wks-receive.c (struct receive_ctx_s): Add field ct_language. (get_language): New. (new_part): Call it. (wks_receive): Pass language to the result callback. * tools/gpg-wks-client.c (short_locale): New. (main): Get and store the current locale. (command_create): Fix a glitch for the Posteo hack. Insert the locale into the confirmation request. (send_confirmation_response): Ditto. * tools/gpg-wks-server.c (struct server_ctx_s): Add field language. (only_ascii): New. (struct my_subst_vars_s, my_subst_vars_cb, my_subst_vars): New. (send_confirmation_request): Use a template. (send_congratulation_message): Ditto. (check_and_publish): Pss ctx to send_congratulation_message. (command_receive_cb): Add arg language. * doc/wks-utils.txt, doc/wks-utils.de.txt: New. * doc/Makefile.am (helpfiles): Add them. -- GnuPG-bug-id: 7381 Note that the subject is not yet translated or templated due to a missing header encoding function.
12 daysgpg-mail-tube: Support templates.Werner Koch4-1/+84
* tools/gpg-mail-tube.c: Include i18n.h. (main): Call i18n.h (only_ascii): New. (mail_tube_encrypt): Use a template or fallback to the old version. * doc/mail-tube.txt, doc/mail-tube.de.txt: Two standard templates. * doc/Makefile.am (helpfiles): Add them. -- GnuPG-bug-id: 7381
2025-05-13agent: Recover the old behavior with max-cache-ttl=0.NIIBE Yutaka1-4/+1
* agent/cache.c (compute_expiration): Expire newly created entry when max-cache-ttl is zero. -- Fixes-commit: 92de0387f04b1e87a4a49ed063323624f25ac3ef GnuPG-bug-id: 6681 Suggested-by: Lucas Mulling <[email protected]> Signed-off-by: NIIBE Yutaka <[email protected]>
2025-04-29gpg: New command --quick-tsign-key.Werner Koch1-0/+13
* g10/gpg.c (aQuickTSignKey): New. (opts): Add new command. (main): Parse args for it. * g10/keyedit.c: Include mbox-util.h. (parse_trustsig_string): New. (sign_uids): Add arg trustsig for use in quick mode. (keyedit_quick_sign): Also add arg trustsig and print a diagnostic on error.
2025-04-29gpg: Make the internal sign_uids function easier to read.Werner Koch1-2/+6
* g10/keyedit.c (SIGN_UIDS_LOCAL): New. (SIGN_UIDS_NONREVOCABLE): New. (SIGN_UIDS_TRUSTSIG): New. (SIGN_UIDS_INTERACTIVE): New. (SIGN_UIDS_QUICK): New. (sign_uids): Replace several boolean args by flags arg.
2025-04-29gpg: New list options "show-trustsig"Werner Koch1-0/+9
* g10/options.h (LIST_SHOW_TRUSTSIG): New. * g10/gpg.c (parse_list_options): Add "show-trustsig". * g10/keylist.c (parse_trust_name): New. (list_signature_print): Print trust signature info.
2025-04-24doc: Add missing whitespace gnupg7 manpage.Andreas Metzler1-1/+1
--
2025-04-04gpg: New key generation parameter "User-Id".Werner Koch1-5/+7
* g10/keygen.c (read_parameter_file): Add keyword "User-Id".
2025-03-17gpgsm: Extend --learn-card by an optional s/n argument.Werner Koch1-4/+5
* agent/command.c (cmd_learn): Allow for s/n argument. * agent/learncard.c (agent_handle_learn): Ditto. * agent/call-scd.c (agent_card_learn): Ditto. Pass it on to scd. * scd/command.c (cmd_switchcard): Factor most code out to ... (switchcard_core): new. (cmd_learn): Add option --demand to specify a s/n. * sm/gpgsm.c (main): Allow a s/n argument for --learn-card. -- This help Kleopatra to get a stable certificate listing. GnuPG-bug-id: 7379
2025-03-14doc: Minor updatesWerner Koch1-1/+12
--
2025-03-12common: Add a flag for left anchored substring match to recsel.Werner Koch1-2/+4
* common/recsel.c (struct recsel_expr_s): Add field lefta. (recsel_parse_expr): Parse it. (recsel_select): Implement selection. -- This flags makes it for example easy to select keys last updated from an ldap server: gpg --list-filter 'select=origin=ks && -^ url =~ ldap' \ -k --with-key-origin
2025-02-19doc: Declare --disable-http as legacy.Werner Koch1-1/+6
--
2025-02-18doc: Add some notesWerner Koch1-0/+2
--
2025-02-12agent: New option --change-std-env-name.Werner Koch1-0/+10
* common/session-env.c (stdenvnames): Add field "disabled". (INITIAL_ARRAYSIZE): Increase size a bit. (session_env_mod_stdenvnames): New. (session_env_list_stdenvnames): Handle the disabled flag. * agent/gpg-agent.c (oChangeStdEnvName): New. (opts): Add --change-std-env-name. (main): Implement option. -- GnuPG-bug-id: 7522
2025-02-12doc: Do not install gnupg.7.html into usr/share/man/manh/Daniel Kahn Gillmor1-4/+5
* doc/Makefile.am: Ship gnupg.7.html with other html, not with manpages. -- Without this change, gnupg.7.html gets placed in /usr/share/manh/ Since it can't be correctly rendered by groff, this is undesirable. Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2025-02-06gpg: New option --disable-pqc-encryption.Werner Koch2-0/+11
* g10/options.h (flags): Add field disable_pqc_encryption. * g10/gpg.c (oDisablePQCEncryption): New. (opts): Add --option. (main): Set option. * g10/getkey.c (finish_lookup): Skip subkeys if option is set. -- This option can be used to avoid the use of Kyber encryption subkeys if this does not make sense (i.e. protection of local files).
2025-02-03gpg: Simplify the compliance settings.Werner Koch1-1/+3
* g10/gpg.c (set_compliance_option): Base most settings on oGnuPG. For oGnuPG explictly clear the allow_old_cipher_algos flag. -- Note that --allow-old-cipher-algos must now come after a compliance settings. This avoids a bug when first setting oRFC2440 and then oGnuPG which would not clear the flag. GnuPG-bug-id: T7501
2025-02-03doc: Record that gpg policy compliance options are last-one-winsDaniel Kahn Gillmor via Gnupg-devel1-1/+2
* doc/gpg.texi (Compliance options): Explain that when multiple --compliance options are given, the final one supersedes any previous option. -- Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2025-01-29gpgsm: Allow unattended PKCS#12 export without passphrase.Werner Koch1-1/+14
* sm/gpgsm.c (oNoProtection): New. (opts): Add "--no-protection". (main): PArse it. * sm/gpgsm.h (struct server_control_s): Add field no_protection. * sm/server.c (option_handler): Add option "no-protection". (reset_notify): Clear option. * sm/export.c (export_p12): Use empty passphrase if option is set.
2025-01-29gpgsm: Allow CSR generation with an unprotected key.Werner Koch1-0/+3
* sm/call-agent.c (gpgsm_agent_genkey): Add arg no_protection. * sm/certreqgen.c (struct reqgen_ctrl_s): Add field no_protection. (read_parameters): Add keyword "%no-protection". (proc_parameters): Pass no_protection to gpgsm_agent_genkey.
2025-01-08Remove the default keyserver.Werner Koch1-3/+1
2025-01-08Stronger deprecate the --supervised option.Werner Koch2-10/+8
* agent/gpg-agent.c (opts): Rename option supervised. * dirmngr/dirmngr.c (opts): Ditto. -- The --supervised way to start gpg-agent has been deprecated for 2.5 years and will probably entirely removed with version 2.6.0. To allow its use until its removal the systemd service description need to be adjusted to use this option. The reason for the deprecation are conflicts with the way systemd starts gpg-agent and gpg expects how gpg-agent is started. In particular gpg expects that the gpg-agent matching its own version is started. Further the systemd way is not portable to other platforms and long term experience on Windows has show that the standard way of starting gpg-agent is less error prone. Note to those who want to re-introduse this option: Pretty please do not use socket names conflicting with our standard socket names. For example use /run/user/1000/foo-gnupg/S.gpg-agent.
2025-01-06gpg: Force the use of AES-256 in some casesDamien Goutte-Gattat via Gnupg-devel1-4/+6
* g10/encrypt.c (create_dek_with_warnings): Forcefully use AES-256 if PQC encryption was required or if all recipient keys are Kyber keys. -- If --require-pqc-encryption was set, then it should be safe to always force AES-256, without even checking if we are encrypting to Kyber keys (if some recipients do not have Kyber keys, --require-pqc-encryption will fail elsewhere). Otherwise, we force AES-256 if we encrypt *only* to Kyber keys -- unless the user explicitly requested another algo, in which case we assume they know what they are doing. GnuPG-bug-id: 7472 Signed-off-by: Damien Goutte-Gattat <[email protected]> Man page entry extended Signed-off-by: Werner Koch <[email protected]>
2024-11-22doc: Explain that qualified.txt is a legacy method.Werner Koch1-10/+14
--
2024-11-14gpg: For composite algos add the algo string to the colons listings.Werner Koch1-2/+3
* g10/keylist.c (list_keyblock_colon): Put the algo string into the curve field for Kyber. -- GnuPG-bug-id: 6638
2024-11-08gpg: Improve wording for only-pubkeys.Werner Koch1-1/+1
* g10/import.c (parse_import_options): Add a description to only-pubkeys. -- See gnupg-devel for a brief discussion.
2024-11-07gpgtar: Use log-file from common.conf only in --batch mode.Werner Koch1-1/+2
* tools/gpgtar.c (main): Do it. -- This makes the interactive use of gpgtar more convenient and is more aligned to what gpg and gpgsm do.
2024-10-07Implement GNUPG_ASSUME_COMPLIANCE envvar for testingWerner Koch2-0/+10
* common/compliance.c (assumed_de_vs_compliance): New. (get_compliance_cache): Check envvar and fake compliance. (gnupg_status_compliance_flag): Return 2023 for de-vs if in faked mode. * g10/gpg.c (gpgconf_list): For compliance_de_vs return 23 or 2023. -- The user visible changes are that GNUPG_ASSUME_COMPLIANCE=de-vs gpgconf --list-options gpg \ | awk -F: '$1=="compliance_de_vs" {print $8}' returns 2023 if "compliance de-vs" is found in gpg.conf. If eventually the software is arpproved the returned value will be 23 and not 1 as it was before. Consumers should check whether they see value of true (Kleopatra does this right now) and also check whether the value is > 2000 and in this case print a beta/non-approved warning. The envvar is currently used to assume that the underlying libgcrypt is compliant and approved. This is not yet the case but eventually libgcrypt will announce this itself and from then on the envvar is not anymore required for testing.
2024-09-11build: Fix make distclean for gnupg.7.htmlWerner Koch1-3/+3
--
2024-09-11gpgsm: New option --assert-signerWerner Koch1-0/+15
* sm/gpgsm.c (oAssertSigner, oNoop): New. (opts): Add option --assert-signer. (assert_signer_true): New var. (main): Set new option. (gpgsm_exit): Handle assert_signer_true. * sm/gpgsm.h (opt): Add field assert_signer_list. * sm/verify.c (is_x509_fingerprint): New. (check_assert_signer_list): New. (gpgsm_verify): Handle option. -- GnuPG-bug-id: 7286
2024-09-11build: Remove configure option --enable-gpg-is-gpg2Werner Koch3-70/+4
* configure.ac (--enable-gpg-is-gpg2): Remove option. (USE_GPG2_HACK): Remove var. * common/homedir.c (gnupg_module_name): Remove code for gpg2 installation option. * g10/keygen.c (generate_keypair): Ditto. * g10/Makefile.am (noinst_PROGRAMS): Ditto. * doc/gpg.texi: Ditto. * doc/gpgv.texi: Ditto. -- This option and all its build stuff does not make anymore sense. gpg1 is way too old for anyone to use on a regualar base along with a standard gpg. It is better to rename that single gpg (1.4) binary to gpg1 and adjust any scripts.
2024-09-11build: Also cleanup generated html file in a make distcheckWerner Koch1-9/+14
* doc/Makefile.am (myman_pages): Add gpg and gpgv. (USE_GPG2_HACK): Remove conditional. (myhtmlman_pages): New. (DISTCLEANFILES): Add html pages. --
2024-08-29gpg-mail-tube: New feature --as-attach.Werner Koch1-2/+11
* tools/gpg-mail-tube.c (oAsAttach): NEw. (opts): Add --as-attach. (opt): Add .as_attach. (parse_arguments): Set it. (mail_tube_encrypt): Detect plain text and hhandle new option.
2024-08-29doc: Minor fix for the description of gpg's --default-*-expireWerner Koch1-2/+2
--
2024-08-23gpg: New option --proc-all-sigsWerner Koch1-0/+11
* g10/options.h (flags): Add proc_all_sigs. * g10/mainproc.c (proc_tree): Do not stop signature checking if this new option is used. * g10/gpg.c (oProcAllSigs): New. (opts): Add "proc-all-sigs". (main): Set it. -- GnuPG-bug-id: 7261
2024-08-19doc: Remove included yat2m and build HTML versions of the man pages.Werner Koch1-7/+7
* configure.ac (YAT2M): Use standard detection. * doc/Makefile.am (EXTRA_DIST): Remove yat2m.c. (CLEANFILES): Ditto. (yat2m): Remove targets. (yat2m-stamp): Also build html versions.
2024-08-16doc: Add another example for gpg-mail-tubeWerner Koch1-0/+33
--
2024-08-12gpg: Improve decryption diagnostic for an ADSK key.Werner Koch1-1/+1
* g10/keydb.h (GET_PUBKEYBLOCK_FLAG_ADSK): New constant. * g10/packet.h (PUBKEY_USAGE_XENC_MASK): New constant. * g10/pubkey-enc.c (get_session_key): Consider an ADSK also as "marked for encryption use". (get_it): Print a note if an ADSK key was used. Use the new get_pubkeyblock flag. * g10/getkey.c (struct getkey_ctx_s): Add field allow_adsk. (get_pubkeyblock): Factor all code out to ... (get_pubkeyblock_ext): new. (finish_lookup): Add new arg allow_adsk and make use of it. -- This patch solves two purposes: - We write a note that the ADSK key was used for decryption - We avoid running into a "oops: public key not found for preference check\n" due to ADSK keys. The error is mostly harmless but lets gpg return with an exit code of 2.
2024-08-08doc: Explain that sort-sigs has no effect in colon mode.Werner Koch1-1/+2
--
2024-08-01doc: Fix URL to the OpenPGP card specsWerner Koch1-3/+2
--
2024-07-23doc: Clarify gpgv man page synopsis.Werner Koch1-2/+4
-- GnuPG-bug-id: 7209
2024-07-05build: Prepare docs for GnuPG 2.6Werner Koch1-1/+1
--
2024-06-28gpg-mail-tube: New utility.Werner Koch2-2/+118
* tools/gpg-mail-tube.c: new. * tools/Makefile.am: Add it.
2024-06-25doc: fix home dir path in common.confTodd Zullinger via Gnupg-devel1-2/+2
* doc/examples/common.conf: fix home dir path -- Fix a few typos in user-specific path of common.conf added in d13c5bc24 (gpg,gpgsm: Move use-keyboxd to the new conf file common.conf, 2021-04-19). The file is in the GnuPG home dir. Replace 'use if' with 'use of' as well. Signed-off-by: Todd Zullinger <[email protected]>
2024-06-24gpg: New option --show-only-session-keyWerner Koch2-3/+9
* g10/options.h (opt): Add show_only_session_key and turn show_session_key into a bit flag. * g10/gpg.c (oShowOnlySessionKey): New. (opts): Add "show-only-session-key". (main): Set flag. * g10/mainproc.c (proc_encrypted): Handle the new option. * g10/decrypt-data.c (decrypt_data): Ditto. Add compliance error flag to the DECRYPTION_INFO status line. -- This new option is somehow related to GnuPG-bug-id: 1825
2024-06-24gpg: Rename recently added import option no-seckeys to only-pubkeys.Werner Koch1-1/+1
* g10/import.c (parse_import_options): Rename option. * g10/options.h (IMPORT_NO_SECKEY): Rename to IMPORT_ONLY_PUBKEYS. Change all users. -- GnuPG-bug-id: 7146
2024-06-21sm: Emit user IDs in colon mode even if the Subject is empty.Werner Koch1-1/+4
* sm/keylist.c (list_cert_colon): Rework listing of user IDs. -- Only in colon mode this did not work. Note that an updated libksba is anyway required to parse a certificate with an empty Subject. GnuPG-bug-id: 7171
2024-06-11gpg: Add --import-option "no-seckeys".Werner Koch1-0/+3
* g10/import.c (parse_import_options): Add "no-seckeys". -- GnuPG-bug-id: 7146
2024-06-11gpg: Allow shortcut algo string "pqc" for --quick-gen-key.Werner Koch1-6/+8
* g10/keygen.c (PQC_STD_KEY_PARAM): New. (quickgen_set_para): Always store the provided NBITS. (parse_key_parameter_string): Detect the special value "pqc". (quick_generate_keypair): Ditto. -- With this change we can finally do a gpg --quick-gen-key --batch --passphrase='' [email protected] pqc and get a full key. Currently with a brainpoolp386r1 primary key and a Kyber768_brainpoolp256 subkey.
2024-06-05gpg: Add magic parameter "default" to --quick-add-adsk.Werner Koch1-1/+3
* g10/getkey.c (has_key_with_fingerprint): New. * g10/keyedit.c (menu_addadsk): Replace code by new function. (keyedit_quick_addadsk): Handle magic arg "default". * g10/keygen.c (append_all_default_adsks): New. -- GnuPG-bug-id: 6882