aboutsummaryrefslogtreecommitdiffstats
path: root/tests/openpgp (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* gpg: Fix (quick) key generation with --always-trust.Justus Winter2017-03-021-4/+0
| | | | | | | | | | | * g10/keygen.c (do_generate_keypair): Only update the ownertrust if we do have a trust database. * g10/trustdb.c (have_trustdb): New function. * g10/trustdb.h (have_trustdb): New prototype. * tests/openpgp/quick-key-manipulation.scm: Remove workaround. GnuPG-bug-id: 2695 Signed-off-by: Justus Winter <[email protected]>
* g10: Signal an error when trying to revoke non-existant UID.Justus Winter2017-03-021-0/+6
| | | | | | | | | * g10/keyedit.c (keyedit_quick_revuid): Signal an error when trying to revoke non-existant UID. * tests/openpgp/quick-key-manipulation.scm: Test that. GnuPG-bug-id: 2962 Signed-off-by: Justus Winter <[email protected]>
* tests: Log information about ssh, add comments to test.Justus Winter2017-03-021-5/+18
| | | | | | | | | | | | | | * tests/openpgp/ssh-import.scm (ssh-version-string): New variable, and log the binary and version used in the test. (ssh-supports?): Document how we test what algorithms are supported by ssh, and log ssh-keygen's replies. -- We have some trouble with this test on macOS, and adding some more information in verbose mode will hopefully make tracking down these problems easier in the future. GnuPG-bug-id: 2980 Signed-off-by: Justus Winter <[email protected]>
* tests: Improve support for gpgconf.Justus Winter2017-02-283-40/+50
| | | | | | | | * tests/openpgp/defs.scm: Improve high-level inteface to gpgconf. * tests/openpgp/gpgconf.scm: Adapt. * tests/openpgp/tofu.scm: Use it to select the trust model. Signed-off-by: Justus Winter <[email protected]>
* tests: No spelling fix for test text.NIIBE Yutaka2017-02-221-1/+4
| | | | | | | * tests/openpgp/verify.scm (msg_ed25519_rshort): Revert the spelling fix. Signed-off-by: NIIBE Yutaka <[email protected]>
* Clean up word replication.Yuri Chornoivan2017-02-212-2/+2
| | | | | | | | | -- This fixes extra word repetitions (like "the the" or "is is") in the code and docs. Signed-off-by: Daniel Kahn Gillmor <[email protected]>
* tests: Test and document other ways to create keys.Justus Winter2017-02-151-0/+33
| | | | | | | | * doc/gpg.texi: Clarify usage and expiration arguments for key generation. * tests/openpgp/quick-key-manipulation.scm: Test all variants. Signed-off-by: Justus Winter <[email protected]>
* tests: Check expiration times of created keys.Justus Winter2017-02-152-9/+18
| | | | | | | | | | | | * tests/gpgscm/ffi.c (do_get_time): New function. (ffi_init): Expose new function. * tests/gpgscm/ffi.scm (get-time): Document new function. * tests/gpgscm/time.scm: New file. * tests/openpgp/quick-key-manipulation.scm: Use the new facilities to check the expiration times of created keys. * tests/openpgp/tofu.scm: Use the new module. Signed-off-by: Justus Winter <[email protected]>
* gpg: Make --export-ssh-key work for the primary key.Werner Koch2017-02-143-0/+63
| | | | | | | | | | | | | | | * g10/export.c (export_ssh_key): Also check the primary key. -- If no suitable subkey was found for export, we now check whether the primary key is suitable for export and export this one. Without this change it was only possible to export the primary key by using the '!' suffix in the key specification. Also added a sample key for testing this. GnuPG-bug-id: 2957 Signed-off-by: Werner Koch <[email protected]>
* gpg,common: Make sure that all fd given are valid.Justus Winter2017-02-082-1/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common/sysutils.c (gnupg_fd_valid): New function. * common/sysutils.h (gnupg_fd_valid): New declaration. * common/logging.c (log_set_file): Use the new function. * g10/cpr.c (set_status_fd): Likewise. * g10/gpg.c (main): Likewise. * g10/keylist.c (read_sessionkey_from_fd): Likewise. * g10/passphrase.c (set_attrib_fd): Likewise. * tests/openpgp/Makefile.am (XTESTS): Add the new test. * tests/openpgp/issue2941.scm: New file. -- Consider a situation where the user passes "--status-fd 3" but file descriptor 3 is not open. During the course of executing the rest of the commands, it's possible that gpg itself will open some files, and file descriptor 3 will get allocated. In this situation, the status information will be appended directly to whatever file happens to have landed on fd 3 (the trustdb? the keyring?). This is a potential data destruction issue for all writable file descriptor options: --status-fd --attribute-fd --logger-fd It's also a potential issue for readable file descriptor options, but the risk is merely weird behavior, and not data corruption: --override-session-key-fd --passphrase-fd --command-fd Fixes this by checking whether the fd is valid early on before using it. GnuPG-bug-id: 2941 Signed-off-by: Justus Winter <[email protected]>
* tests: Skip key types not supported by OpenSSH.Justus Winter2017-02-071-4/+29
| | | | | | | | | | | | | | * tests/openpgp/ssh-import.scm (path): New variable. (ssh,ssh-keygen,ssh-version,ssh-supports?): Likewise. -- Skip algorithms not supported by the OpenSSH in the ssh import test. This notably fixes the test on macOS when the stock ssh version is used. GnuPG-bug-id: 2847 GnuPG-bug-id: 2947 Signed-off-by: Justus Winter <[email protected]>
* tests: Improve description of test.Neal H. Walfield2017-02-021-1/+1
| | | | | | * tests/openpgp/issue2929.scm: Improve description of test. Signed-off-by: Neal H. Walfield <[email protected]>
* Revert "Revert "tests: Add test demonstrating issue2929.""Neal H. Walfield2017-02-022-1/+34
| | | | This reverts commit 59048b0f1aa77313573a1004cd3a9f02692a7521.
* Revert "tests: Add test demonstrating issue2929."Justus Winter2017-01-302-34/+1
| | | | This reverts commit 5aafa56dffefe3fac55b9d0555c7c86e8a07f072.
* tests: Add test demonstrating issue2929.Justus Winter2017-01-242-1/+34
| | | | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/issue2929.scm: New file. -- This test demonstrates a problem with the TOFU trust model when a new key is created. Signed-off-by: Justus Winter <[email protected]>
* tests: Enable gpgconf test.Justus Winter2017-01-241-4/+1
| | | | | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Re-add gpgconf.scm. -- This partially reverts 25e029823813e190a18b601af60efcb1fb3b84af. That change was not sufficiently motivated, and our continuous integration server shows no recent distcheck failures. Signed-off-by: Justus Winter <[email protected]>
* build: Change make distcheck configure and temp. remove gpgconf.scm.Werner Koch2017-01-231-1/+4
| | | | | | | | * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Also test gpgtar and wks-tools. Disable ntbtls. * tests/openpgp/Makefile.am (XTESTS): Temporary remove gpgconf.scm. Signed-off-by: Werner Koch <[email protected]>
* tests: Improve GPGHOME handling.Justus Winter2017-01-163-12/+6
| | | | | | | | * tests/openpgp/defs.scm (GPGHOME): New variable. * tests/openpgp/ssh-import.scm: Remove redundant code, use 'path-join'. * tests/openpgp/tofu.scm: Likewise. Signed-off-by: Justus Winter <[email protected]>
* tests: Improve gpgconf test.Justus Winter2017-01-102-6/+25
| | | | | | | | * tests/openpgp/defs.scm (valgrind): New variable. (gpg-config): Fix clearing an option. * tests/openpgp/gpgconf.scm: Also toggle 'quiet'. Signed-off-by: Justus Winter <[email protected]>
* tests: Add test for gpgconf.Justus Winter2017-01-103-2/+73
| | | | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/defs.scm (percent-encode): New function. (gpg-conf): Generalize so that we can feed stdin. (gpg-config): New function. * tests/openpgp/gpgconf.scm: New file. Signed-off-by: Justus Winter <[email protected]>
* tests: New test for --{show,override}-session-key.Justus Winter2017-01-052-0/+46
| | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/decrypt-session-key.scm: New file. Signed-off-by: Justus Winter <[email protected]>
* tests: Fix macro.Justus Winter2017-01-052-8/+11
| | | | | | | | | | * tests/openpgp/defs.scm (with-ephemeral-home-directory): Make hygienic, use define-macro, do not change to the ephemeral home directory. * tests/gpgsm/setup.scm: Change to the ephemeral home directory. * tests/openpgp/setup.scm: Likewise. Signed-off-by: Justus Winter <[email protected]>
* tests,w32: Fix locating the components.Justus Winter2017-01-041-9/+29
| | | | | | | | | | | * tests/openpgp/defs.scm (percent-decode): New function. (bin-prefix): New variable. (installed?): Likewise. (tool-hardcoded): Use the new variables. (gpg-conf): Use the new function to decode the values. (gpg-components): Do not use '--build-prefix' when 'installed?'. Signed-off-by: Justus Winter <[email protected]>
* tests: Fix faked time in the TOFU test.Justus Winter2017-01-021-1/+1
| | | | | | * tests/openpgp/tofu.scm (GPG): Fix time delta. Signed-off-by: Justus Winter <[email protected]>
* tests: Add macro managing ephemeral home directories.Justus Winter2016-12-202-2/+12
| | | | | * tests/openpgp/defs.scm (with-ephemeral-home-directory): New macro. * tests/openpgp/setup.scm: Use the new macro.
* tests: Add missing encrypted sample, cleanup samples handling.Justus Winter2016-12-203-5/+1340
| | | | | | | | | | | * tests/openpgp/Makefile.am (TEST_FILES): Add new file. * tests/openpgp/defs.scm (plain-files): Add 'plain-large'. (all-files): New variable. (create-sample-files): New function. (create-legacy-gpghome): Use new function. * tests/openpgp/plain-large.asc: New file. Signed-off-by: Justus Winter <[email protected]>
* tests: Use sequential test runner if only one test is given.Justus Winter2016-12-191-3/+4
| | | | | | | | | | | | * tests/openpgp/run-tests.scm: Use sequential test runner if only one test is given. -- This allows one to set the environment variable TESTFLAGS to '--parallel' and enjoy faster test execution times without interfering with stdio when one works on a single test. Signed-off-by: Justus Winter <[email protected]>
* test: Extend TOFU tests to also check the days with signatures.Neal H. Walfield2016-12-191-15/+71
| | | | | | | | | | | * tests/openpgp/tofu.scm (GPGTIME): Define the "standard" base time. (faketime): New function. (days->seconds): Likewise. (GPG): Use faketime. (check-counts): Also check the number of expected days with signatures and encryptions. Update callers. Extend tests. Signed-off-by: Neal H. Walfield <[email protected]>
* tests: New test for --delete-[secret-]keys.Justus Winter2016-12-194-7/+153
| | | | | | | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/defs.scm (keys): New variable. (have-public-key?): New function. (have-secret-key?): Likewise. (have-secret-key-file?): Likewise. * tests/openpgp/delete-keys.scm: New file. * tests/openpgp/quick-key-manipulation.scm: Move the accessors to 'defs.scm'. Signed-off-by: Justus Winter <[email protected]>
* g10: Rework the --quick-* interface.Justus Winter2016-12-151-4/+4
| | | | | | | | | | | | * g10/gpg.c (opts): Rename options. (main): Update errors. * doc/gpg.texi: Update accordingly. -- I decided not to keep the old versions as aliases in the documentation because the interface is a fairly recent addition. GnuPG-bug-id: 2700 Signed-off-by: Justus Winter <[email protected]>
* common: Support locating components in the build tree.Justus Winter2016-12-141-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | * common/homedir.c (gnupg_build_directory): New variable. (gnupg_module_name_called): Likewise. (gnupg_set_builddir): New function. (gnupg_set_builddir_from_env): Likewise. (gnupg_module_name): Support locating components in the build tree. * common/util.h (gnupg_set_builddir): New prototype. * tests/openpgp/defs.scm (tools): Drop 'gpg and 'gpg-agent. (tool): Rename to 'tool-hardcoded. (gpg-conf): New function, with accessors for the results. (gpg-components): New variable. (tool): New function. * tools/gpgconf.c (enum cmd_and_opt_values): New key. (opts): New option '--build-prefix'. (main): Handle new option. -- This change makes sure that the components from the build tree are used, and not some older installed version in PATH. It also lets us make GPGME use components from the build tree, making it possible to execute GPGME's test suite with them. Signed-off-by: Justus Winter <[email protected]>
* tests: Rework check for trust models.Justus Winter2016-12-141-2/+7
| | | | | | | | * tests/openpgp/defs.scm (gpg-has-option?): New function. (have-opt-always-trust): Use a simpler test for that option. This way that is less distracting when we run the tests with verbose=3. Signed-off-by: Justus Winter <[email protected]>
* g10,sm: Spell out --gen-key.Justus Winter2016-12-131-1/+1
| | | | | | | | | * g10/gpg.c (opts): Spell out option. * sm/gpgsm.c (opts): Likewise. * doc/gpg.texi: Update accordingly. GnuPG-bug-id: 2700 Signed-off-by: Justus Winter <[email protected]>
* g10: Hyphenate --clearsign.Justus Winter2016-12-131-2/+2
| | | | | | | | | | * g10/gpg.c (opts): Hyphenate option. * doc/gpg.texi: Update accordingly. * po: Update translations. * tests/openpgp: Update tests. GnuPG-bug-id: 2700 Signed-off-by: Justus Winter <[email protected]>
* g10: Create expiring keys in quick key generation mode.Justus Winter2016-12-131-17/+14
| | | | | | | | | * doc/gpg.texi: Document that fact. * g10/keygen.c (quick_generate_keypair): Use a default value. * tests/openpgp/quick-key-manipulation.scm: Test that fact. GnuPG-bug-id: 2701 Signed-off-by: Justus Winter <[email protected]>
* gpgscm: Generalize the test runner.Justus Winter2016-12-131-1/+2
| | | | | | | | * tests/gpgscm/tests.scm (test::scm) Add explicit name argument. (test::binary): Likewise. Also, add missing unquote. * tests/openpgp/run-tests.scm: Adapt accordingly. Signed-off-by: Justus Winter <[email protected]>
* gpgscm: Move the test runner to the Scheme library.Justus Winter2016-12-131-141/+0
| | | | | | | * tests/openpgp/run-tests.scm: Move most of the code... * tests/gpgscm/tests.scm: ... here. Signed-off-by: Justus Winter <[email protected]>
* tests: Refactor test runner.Justus Winter2016-12-131-17/+28
| | | | | | | | * tests/openpgp/run-tests.scm (locate-test): New function. (test): Factor-out the code starting the child process. (test::binary): New function. Signed-off-by: Justus Winter <[email protected]>
* tests: Add a test for '--quick-addkey'.Justus Winter2016-12-091-0/+65
| | | | | | * tests/openpgp/quick-key-manipulation.scm: Test '--quick-addkey'. Signed-off-by: Justus Winter <[email protected]>
* tests: New test using all available compression algorithms.Justus Winter2016-12-093-0/+38
| | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/compression.scm: New file. * tests/openpgp/defs.scm (all-compression-algos): New variable. Signed-off-by: Justus Winter <[email protected]>
* tests: Add test for '--quick-set-expire'.Justus Winter2016-12-071-0/+22
| | | | | | * tests/openpgp/quick-key-manipulation.scm: Test '--quick-set-expire'. Signed-off-by: Justus Winter <[email protected]>
* tests: Improve quick key manipulation test.Justus Winter2016-12-071-7/+1
| | | | | | | * tests/openpgp/quick-key-manipulation.scm: Do not update the trust database, rather be more specific when filtering the user ids. Signed-off-by: Justus Winter <[email protected]>
* tests: Add test importing a revocation certificate.Justus Winter2016-12-063-1/+48
| | | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/import-revocation-certificate.scm: New file. * tests/openpgp/samplemsgs/revoke-2D727CC768697734.asc: Likewise. Signed-off-by: Justus Winter <[email protected]>
* tests: Rename 'error' to 'fail'.Justus Winter2016-12-0618-32/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/gpgscm/tests.scm (error): Rename to 'fail'. 'error' is a primitive function (an opcode) of the TinySCHEME vm, and 'error' is also defined by R6RS. Better avoid redefining that. Fix all call sites. * tests/openpgp/4gb-packet.scm: Adapt. * tests/openpgp/decrypt-multifile.scm: Likewise. * tests/openpgp/ecc.scm: Likewise. * tests/openpgp/export.scm: Likewise. * tests/openpgp/gpgtar.scm: Likewise. * tests/openpgp/gpgv-forged-keyring.scm: Likewise. * tests/openpgp/import.scm: Likewise. * tests/openpgp/issue2015.scm: Likewise. * tests/openpgp/issue2346.scm: Likewise. * tests/openpgp/issue2419.scm: Likewise. * tests/openpgp/key-selection.scm: Likewise. * tests/openpgp/mds.scm: Likewise. * tests/openpgp/multisig.scm: Likewise. * tests/openpgp/setup.scm: Likewise. * tests/openpgp/signencrypt.scm: Likewise. * tests/openpgp/ssh-import.scm: Likewise. * tests/openpgp/tofu.scm: Likewise. * tests/openpgp/verify.scm: Likewise. Signed-off-by: Justus Winter <[email protected]>
* tests: Remove debugging display.Justus Winter2016-12-061-1/+0
| | | | | | * tests/openpgp/tofu.scm: Remove debugging display. Signed-off-by: Justus Winter <[email protected]>
* tests: Update distributed filesNeal H. Walfield2016-12-061-2/+21
| | | | | | | | | | | | | | | | | | | | | * tests/openpgp/Makefile.am (TEST_FILES): Remove tofu-keys.asc, tofu-keys-secret.asc, tofu-2183839A-1.txt, tofu-BC15C85A-1.txt and tofu-EE37CF96-1.txt. Add tofu/conflicting/1C005AF3.gpg, tofu/conflicting/1C005AF3-secret.gpg, tofu/conflicting/1C005AF3-1.txt, tofu/conflicting/1C005AF3-2.txt, tofu/conflicting/1C005AF3-3.txt, tofu/conflicting/1C005AF3-4.txt, tofu/conflicting/1C005AF3-5.txt, tofu/conflicting/B662E42F.gpg, tofu/conflicting/B662E42F-secret.gpg, tofu/conflicting/B662E42F-1.txt, tofu/conflicting/B662E42F-2.txt, tofu/conflicting/B662E42F-3.txt, tofu/conflicting/B662E42F-4.txt, tofu/conflicting/B662E42F-5.txt, tofu/conflicting/BE04EB2B.gpg, tofu/conflicting/BE04EB2B-secret.gpg, tofu/conflicting/BE04EB2B-1.txt, tofu/conflicting/BE04EB2B-2.txt, tofu/conflicting/BE04EB2B-3.txt, tofu/conflicting/BE04EB2B-4.txt, tofu/conflicting/BE04EB2B-5.txt and tofu/conflicting/README. -- Signed-off-by: Neal H. Walfield <[email protected]> Fixes-commit: d5b18d6
* tests: Check the signature count in the TOFU TFS record.Neal H. Walfield2016-12-061-0/+56
| | | | | | | * tests/openpgp/tofu.scm: Check the signature count in the TOFU TFS record. Signed-off-by: Neal H. Walfield <[email protected]>
* tests: Replace data used by the TOFU conflict test.Neal H. Walfield2016-12-0628-192/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/openpgp/tofu-2183839A-1.txt: Remove file. * tests/openpgp/tofu-BC15C85A-1.txt: Remove file. * tests/openpgp/tofu-EE37CF96-1.txt: Remove file. * tests/openpgp/tofu-keys-secret.asc: Remove file. * tests/openpgp/tofu-keys.asc: Remove file. * tests/openpgp/tofu/conflicting/1C005AF3.gpg: New file. * tests/openpgp/tofu/conflicting/1C005AF3-secret.gpg: New file. * tests/openpgp/tofu/conflicting/1C005AF3-1.txt: New file. * tests/openpgp/tofu/conflicting/1C005AF3-2.txt: New file. * tests/openpgp/tofu/conflicting/1C005AF3-3.txt: New file. * tests/openpgp/tofu/conflicting/1C005AF3-4.txt: New file. * tests/openpgp/tofu/conflicting/1C005AF3-5.txt: New file. * tests/openpgp/tofu/conflicting/B662E42F.gpg: New file. * tests/openpgp/tofu/conflicting/B662E42F-secret.gpg: New file. * tests/openpgp/tofu/conflicting/B662E42F-1.txt: New file. * tests/openpgp/tofu/conflicting/B662E42F-2.txt: New file. * tests/openpgp/tofu/conflicting/B662E42F-3.txt: New file. * tests/openpgp/tofu/conflicting/B662E42F-4.txt: New file. * tests/openpgp/tofu/conflicting/B662E42F-5.txt: New file. * tests/openpgp/tofu/conflicting/BE04EB2B.gpg: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-secret.gpg: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-1.txt: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-2.txt: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-3.txt: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-4.txt: New file. * tests/openpgp/tofu/conflicting/BE04EB2B-5.txt: New file. * tests/openpgp/tofu/conflicting/README: New file. * tests/openpgp/tofu.scm: Update accordingly. -- Signed-off-by: Neal H. Walfield <[email protected]> There are two motivations for this change. First, we decided that test data should live in a subdirectory rather than in tests/openpgp. Second, secret key material is password protected, and I don't remember the password that I used. (The new data is not password protected.) I have also added some new examples of signed messages.
* tests: New test for '--enarmor' and '--dearmor'.Justus Winter2016-12-052-0/+32
| | | | | | | * tests/openpgp/Makefile.am (XTESTS): Add new test. * tests/openpgp/enarmor.scm: New file. Signed-off-by: Justus Winter <[email protected]>
* tests,build: Fix distcheck.Justus Winter2016-12-011-1/+3
| | | | | | | | * tests/openpgp/Makefile.am (sample_msgs): Add messages required for the new test 'verify-multifile.scm'. Fixes-commit: 12af8e84a32df728462da09a00a8bec24a487720 Signed-off-by: Justus Winter <[email protected]>