aboutsummaryrefslogtreecommitdiffstats
path: root/tests (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-02-15tests: Fix previous commitNIIBE Yutaka1-1/+1
Signed-off-by: NIIBE Yutaka <[email protected]>
2018-02-15tests: More Makefile portability.NIIBE Yutaka1-2/+2
* tests/gpg/Makefile.am: Invoke GPG with TESTS_ENVIRONMENT. Signed-off-by: NIIBE Yutaka <[email protected]>
2018-02-15tests: Makefile portability.NIIBE Yutaka2-13/+5
* tests/gpg/Makefile.am: Don't use "export" directive. * tests/gpgsm/Makefile.am: Ditto. * lang/qt/tests/Makefile.am: Ditto. * lang/python/tests/Makefile.am: Ditto. -- GnuPG-bug-id: 3056 Signed-off-by: NIIBE Yutaka <[email protected]>
2018-02-14build: Fix Makefiles for portability.NIIBE Yutaka2-10/+10
* tests/gpg/Makefile.am: Don't allow target with '/'. * tests/gpgsm/Makefile.am: Ditto. -- BSD Make doesn't allow a target with '/'. We still have such a target in lang/python/Makefile.am, but it's for maintainer only, so, assumption to GNU Make is OK there. Signed-off-by: NIIBE Yutaka <[email protected]>
2018-01-29Fix for BSD Make.NIIBE Yutaka2-2/+2
* tests/gpg/Makefile.am, tests/gpgsm/Makefile.am: Remove ./. -- GNU Make is powerful enough for handling and interpreting of pathname as target, but BSD Make is not. GnuPG-bug-id: 3056 Signed-off-by: NIIBE Yutaka <[email protected]>
2018-01-29tests: Fix for NetBSD.NIIBE Yutaka1-1/+1
* tests/gpg/pinentry: Use /bin/sh instead of Bash. Signed-off-by: NIIBE Yutaka <[email protected]>
2017-12-08Spelling fixes for comments and docAndre Heinecke1-1/+1
-- Patch provided by ka7 in dev.gnupg.org Differential D423
2017-12-07tests: Print userid signatures in run-keylistAndre Heinecke1-0/+10
* tests/run-keylist.c (main): Print UID signatures if there are any.
2017-12-04core: Also check for a failed selftest in gpgm_data_new.Werner Koch3-27/+20
* src/data.c (_gpgme_data_new): Check for failed selftest. * tests/run-support.h (make_filename): Print a message on mallooc failure. (init_gpgme_basic): New. * tests/run-identify.c (main): Call init_gpgme_basic becuase we do not need to setup a protocol. * tests/t-data.c: Define PGM and include run-support.h. (make_filename): Remove. (main): Call init_gpgme_basic. -- Note: This patch may break applications which used gpgme_data but no gpgme_new without having called the required gpgme_check_version. GPGME can be used without a protocol for example to work with the data object abstraction. Thus a call to gpgme_data_new also needs to check the result of the core selftests - including on whether gpgme_check_version has been called. Signed-off-by: Werner Koch <[email protected]>
2017-11-30tests: Add missing variable to gpgsm tests MakefileWerner Koch1-0/+1
* tests/gpgsm/Makefile.am (GPG_AGENT): Set var. It is used later. -- Note that the var is used by the gpgsm.conf target. Reported-by: Alon Bar-Lev <[email protected]> Signed-off-by: Werner Koch <[email protected]>
2017-11-21tests: Make portability fix.NIIBE Yutaka2-8/+8
* lang/python/tests/Makefile.am: Distinguish target and path. * tests/gpg/Makefile.am: Ditto. * tests/gpgsm/Makefile.am: Ditto. -- GNU Make is powerful enough to match path to target (and vice versa), but BSD make is not. GnuPG-bug-id: 3056 Signed-off-by: NIIBE Yutaka <[email protected]>
2017-08-24core: New context flag "auto-key-retrieve"Werner Koch1-0/+21
* src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): New flag "auto-key-retrieve". * src/context.h (gpgme_context): New field auto_key_retrieve. * src/engine-backend.h (struct engine_ops): Add arg auto_key_retrieve to field 'decrypt'. * src/engine-gpg.c (gpg_decrypt): Add arg auto_key_retrieve and pass option --auto-key-retrieve to gpg. Adjust all callers. (gpg_verify): Ditto. * src/engine-gpgsm.c (gpgsm_decrypt): Add dummy arg auto_key_retrieve. * src/engine-uiserver.c (uiserver_decrypt): Ditto. * tests/run-verify.c (main): Add option --auto-key-retrieve. -- This makes the --auto-key-retrieve option available in the GPGME API. Test plan: Run GPGME_DEBUG=9:out tests/run-verify SIGNEDFILE with and without its new option --auto-key-retrieve and check in the trace stored in "out" whether --auto-key-retrieve was passed to gpg. Signed-off-by: Werner Koch <[email protected]>
2017-08-15gpgconf: Fix some warnings.Marcus Brinkmann1-14/+17
* tests/gpg/t-gpgconf.c (main): Fix warnings. * src/engine-gpgconf.c (struct gpgconf_config_dir_s): New struct. (gpgconf_config_dir_cb, gpgconf_conf_dir) Use it to fix warning. Signed-off-by: Marcus Brinkmann <[email protected]>
2017-08-15gpgconf: Add access to --list-dirs for non-default engine.Marcus Brinkmann1-0/+17
* src/engine-assuan.c (_gpgme_engine_ops_assuan): Add conf_dir. * src/engine-g13.c (_gpgme_engine_ops_g13): Likewise. * src/engine-gpg.c (_gpgme_engine_ops_gpg): Likewise. * src/engine-gpgsm.c (_gpgme_engine_ops_gpgsm): Likewise. * src/engine-spawn.c (_gpgme_engine_ops_spawn): Likewise. * src/engine-uiserver.c (_gpgme_engine_ops_uiserver): Likewise. * src/engine-backend.h (struct engine_ops): Likewise. * src/engine-gpgconf.c (gpgconf_config_dir_cb, gpgconf_conf_dir): New functions. (struct engine_ops): Add gpgconf_conf_dir. * src/engine.c (_gpgme_engine_op_conf_dir): New function. * src/engine.h (_gpgme_engine_op_conf_dir): New prototype. * src/gpgconf.c (gpgme_op_conf_dir): New function. * src/gpgme.def (gpgme_op_conf_save): New symbol. * src/gpgme.h.in (gpgme_op_conf_dir): New prototype. * src/libgpgme.vers (gpgme_op_conf_dir): New symbol. * tests/gpg/t-gpgconf.c (main): Test gpgme_op_conf_dir. Signed-off-by: Marcus Brinkmann <[email protected]> GnuPG-bug-id: 3018
2017-07-13tests: Fix distcheck.Justus Winter1-0/+1
* tests/start-stop-agent: Remove backup file. Fixes-commit: 9cd2b58dfb2c21cce64520cf4c726859b583d14e Signed-off-by: Justus Winter <[email protected]>
2017-07-13tests: Fix blunder.Justus Winter1-1/+1
-- Fixes-commit: 9cd2b58dfb2c21cce64520cf4c726859b583d14e Signed-off-by: Justus Winter <[email protected]>
2017-07-13tests: Make agent spawning more robust.Justus Winter2-0/+13
* tests/gpgsm/Makefile.am (gpgsm.conf): Add agent-program directive. * tests/start-stop-agent: Update agent-program directive. -- Update the 'agent-program' configuration directive to point to the same agent that we are starting. Previously, it was possible that a different agent was started if 'make check' was run with a different PATH. Signed-off-by: Justus Winter <[email protected]>
2017-07-12tests: Fix printf compiler warning for an error case.Werner Koch1-1/+1
* tests/gpg/t-keylist.c (main): Cast DIM to int. Signed-off-by: Werner Koch <[email protected]>
2017-05-10tests: Remove remnants of 'check-local'.Justus Winter1-7/+0
* tests/gpgsm/Makefile.am (check-local): Drop rule and the dependency on it. -- Previously, the test environment was created during 'make check'. Nowadays we create it using 'BUILT_SOURCES' during 'make all'. Drop remnant of the previous method. Signed-off-by: Justus Winter <[email protected]>
2017-05-10tests: Make sure to kill all previously running daemons.Justus Winter2-0/+2
* lang/python/tests/Makefile.am: Kill all previously running daemons before creating the private key store. * lang/qt/tests/Makefile.am: Likewise. * tests/gpg/Makefile.am: Likewise. * tests/gpgsm/Makefile.am: Likewise. -- Now that the daemons sockets are no longer created in the GNUPGHOME, we cannot rely on cleaning the build directory to make sure they are shut down. Therefore, we explicitly kill any running daemons when creating the test environment. Signed-off-by: Justus Winter <[email protected]>
2017-05-10tests: Harmonize test suites.Justus Winter2-4/+9
* lang/python/tests/Makefile.am: Create test environment as part of 'make all'. * tests/gpg/Makefile.am: Make sure the private keystore is created first. * tests/gpgsm/Makefile.am: Create test environment as part of 'make all'. Make sure the private keystore is created first. Signed-off-by: Justus Winter <[email protected]>
2017-04-25Change copyright from Intevation to BSIAndre Heinecke4-4/+8
* lang/cpp/src/gpggencardkeyinteractor.cpp, lang/cpp/src/gpggencardkeyinteractor.h, lang/cpp/src/gpgmepp_export.h, lang/cpp/src/swdbresult.cpp, lang/cpp/src/swdbresult.h, lang/cpp/src/tofuinfo.cpp, lang/cpp/src/tofuinfo.h, lang/qt/src/abstractimportjob.h, lang/qt/src/adduseridjob.h, lang/qt/src/changeexpiryjob.h, lang/qt/src/changeownertrustjob.h, lang/qt/src/changepasswdjob.h, lang/qt/src/cryptoconfig.cpp, lang/qt/src/cryptoconfig.h, lang/qt/src/dataprovider.cpp, lang/qt/src/dataprovider.h, lang/qt/src/decryptjob.h, lang/qt/src/decryptverifyjob.h, lang/qt/src/deletejob.h, lang/qt/src/dn.cpp, lang/qt/src/dn.h, lang/qt/src/downloadjob.h, lang/qt/src/encryptjob.h, lang/qt/src/exportjob.h, lang/qt/src/hierarchicalkeylistjob.h, lang/qt/src/importfromkeyserverjob.h, lang/qt/src/importjob.h, lang/qt/src/job.cpp, lang/qt/src/job.h, lang/qt/src/keyformailboxjob.h, lang/qt/src/keygenerationjob.h, lang/qt/src/keylistjob.h, lang/qt/src/listallkeysjob.h, lang/qt/src/multideletejob.h, lang/qt/src/protocol.h, lang/qt/src/protocol_p.h, lang/qt/src/qgpgme_export.h, lang/qt/src/qgpgmeadduseridjob.cpp, lang/qt/src/qgpgmeadduseridjob.h, lang/qt/src/qgpgmebackend.cpp, lang/qt/src/qgpgmebackend.h, lang/qt/src/qgpgmechangeexpiryjob.cpp, lang/qt/src/qgpgmechangeexpiryjob.h, lang/qt/src/qgpgmechangeownertrustjob.cpp, lang/qt/src/qgpgmechangeownertrustjob.h, lang/qt/src/qgpgmechangepasswdjob.cpp, lang/qt/src/qgpgmechangepasswdjob.h, lang/qt/src/qgpgmedecryptjob.cpp, lang/qt/src/qgpgmedecryptjob.h, lang/qt/src/qgpgmedecryptverifyjob.cpp, lang/qt/src/qgpgmedecryptverifyjob.h, lang/qt/src/qgpgmedeletejob.cpp, lang/qt/src/qgpgmedeletejob.h, lang/qt/src/qgpgmedownloadjob.cpp, lang/qt/src/qgpgmedownloadjob.h, lang/qt/src/qgpgmeencryptjob.cpp, lang/qt/src/qgpgmeencryptjob.h, lang/qt/src/qgpgmeexportjob.cpp, lang/qt/src/qgpgmeexportjob.h, lang/qt/src/qgpgmeimportfromkeyserverjob.cpp, lang/qt/src/qgpgmeimportfromkeyserverjob.h, lang/qt/src/qgpgmeimportjob.cpp, lang/qt/src/qgpgmeimportjob.h, lang/qt/src/qgpgmekeyformailboxjob.cpp, lang/qt/src/qgpgmekeyformailboxjob.h, lang/qt/src/qgpgmekeygenerationjob.cpp, lang/qt/src/qgpgmekeygenerationjob.h, lang/qt/src/qgpgmekeylistjob.cpp, lang/qt/src/qgpgmekeylistjob.h, lang/qt/src/qgpgmelistallkeysjob.cpp, lang/qt/src/qgpgmelistallkeysjob.h, lang/qt/src/qgpgmenewcryptoconfig.cpp, lang/qt/src/qgpgmenewcryptoconfig.h, lang/qt/src/qgpgmerefreshkeysjob.cpp, lang/qt/src/qgpgmerefreshkeysjob.h, lang/qt/src/qgpgmesecretkeyexportjob.cpp, lang/qt/src/qgpgmesecretkeyexportjob.h, lang/qt/src/qgpgmesignencryptjob.cpp, lang/qt/src/qgpgmesignencryptjob.h, lang/qt/src/qgpgmesignjob.cpp, lang/qt/src/qgpgmesignjob.h, lang/qt/src/qgpgmesignkeyjob.cpp, lang/qt/src/qgpgmesignkeyjob.h, lang/qt/src/qgpgmetofupolicyjob.cpp, lang/qt/src/qgpgmetofupolicyjob.h, lang/qt/src/qgpgmeverifydetachedjob.cpp, lang/qt/src/qgpgmeverifydetachedjob.h, lang/qt/src/qgpgmeverifyopaquejob.cpp, lang/qt/src/qgpgmeverifyopaquejob.h, lang/qt/src/qgpgmewkspublishjob.cpp, lang/qt/src/qgpgmewkspublishjob.h, lang/qt/src/refreshkeysjob.h, lang/qt/src/signencryptjob.h, lang/qt/src/signjob.h, lang/qt/src/signkeyjob.h, lang/qt/src/specialjob.h, lang/qt/src/threadedjobmixin.cpp, lang/qt/src/threadedjobmixin.h, lang/qt/src/tofupolicyjob.h, lang/qt/src/verifydetachedjob.h, lang/qt/src/verifyopaquejob.h, lang/qt/src/wkspublishjob.h, lang/qt/tests/run-keyformailboxjob.cpp, lang/qt/tests/t-config.cpp, lang/qt/tests/t-encrypt.cpp, lang/qt/tests/t-keylist.cpp, lang/qt/tests/t-keylocate.cpp, lang/qt/tests/t-ownertrust.cpp, lang/qt/tests/t-support.cpp, lang/qt/tests/t-support.h, lang/qt/tests/t-tofuinfo.cpp, lang/qt/tests/t-various.cpp, lang/qt/tests/t-verify.cpp, lang/qt/tests/t-wkspublish.cpp, tests/gpg/t-encrypt-mixed.c, tests/gpg/t-thread-keylist-verify.c, tests/gpg/t-thread-keylist.c, tests/run-decrypt.c: Change Intevation GmbH copyright to BSI. -- This should make it more transparent where the BSI is the actual copyright holder as the code was mostly developed as part of a development contract.
2017-04-24tests: Update encrypted sample files.Justus Winter2-25/+22
* tests/gpg/cipher-1.asc: Update file. * tests/gpg/cipher-2.asc: Likewise. -- Convert the plaintext to UTF-8 and re-create the encrypted file. Fixes-commit: a11450eb048df79a3f2b00ebef6d7cab07ad5054 Signed-off-by: Justus Winter <[email protected]>
2017-04-10tests: Do not use check-local magic as dependencyAlon Bar-Lev1-7/+2
* tests/gpg/Makefile.am: Use BUILT_SOURCES instead of check-local and initial.test. * lang/qt/tests/Makefile.am: Ditto. -- This fixes "make dist" failure when source tree is clean: git clean -dxf autoreconf -ivf ./configure make dist BUILT_SOURCES should be used when file as generated without explicit dependency. The check-local is all-am dependency, this means that it will be resolved also in "make dist". Signed-off-by: Alon Bar-Lev <[email protected]>
2017-03-28tests: Run the threading tests only on UNIX.Justus Winter1-3/+3
* tests/gpg/Makefile.am (tests_unix): Add 't-thread-keylist' and 't-thread-keylist-verify'. (c_tests): Drop them here. -- The tests use pthreads and we suspect problems with MinGW's wrappers. Signed-off-by: Justus Winter <[email protected]>
2017-03-28tests: Make error message more helpful.Justus Winter1-1/+2
* tests/gpg/t-keylist.c (main): Print number of returned and expected keys. Signed-off-by: Justus Winter <[email protected]>
2017-03-28core: Prepare for new key listing data send by gpg.Werner Koch1-0/+2
* src/gpgme.h.in (gpgme_user_id_t): New fields 'origin' and 'last_update'. (gpgme_key_t): New fields 'origin' and 'last_update'. * src/conversion.c (_gpgme_parse_timestamp_ul): New. * src/keylist.c (keylist_colon_handler): Parse fields 19 and 20. * tests/run-keylist.c (main): Print new fields. Signed-off-by: Werner Koch <[email protected]>
2017-03-24core: New flags GPGME_DECRYPT_UNWRAP and GPGME_ENCRYPT_WRAP.Werner Koch2-2/+22
* src/gpgme.h.in (GPGME_ENCRYPT_WRAP): New const. (gpgme_decrypt_flags_t): New enum. (GPGME_DECRYPT_VERIFY): New const (GPGME_DECRYPT_UNWRAP): New const (gpgme_op_decrypt_ext_start): New func. (gpgme_op_decrypt_ext): New func. * src/decrypt-verify.c (gpgme_op_decrypt_ext_start): New. (gpgme_op_decrypt_ext): New. (decrypt_verify_start): Add arg FLAGS. Replace call to engine_op_decrypt_verify by the plain decrypt with the flag set. (gpgme_op_decrypt_verify_start): Pass the flag. (gpgme_op_decrypt_verify): Pass the flag. * src/decrypt.c (decrypt_start): Rename to ... (_gpgme_decrypt_start): this. Add arg FLAGS. Pass FLAGS to engine_op_decrypt. (gpgme_op_decrypt_start): Adjust for chnage pass 0 for FLAG. (gpgme_op_decrypt_start): Ditto. * src/engine.c (_gpgme_engine_op_decrypt_verify): Remove. (_gpgme_engine_op_decrypt): Add arg FLAGS. * src/gpgme.def, src/libgpgme.vers: Add new functions. * src/engine-backend.h (struct engine_ops): Remove member 'decrypt_verify'. Add FLAGS to 'decrypt'. Adjust all initialization. * src/engine-uiserver.c (uiserver_decrypt): Remove. (uiserver_decrypt_verify): Remove. (_uiserver_decrypt): Rename to ... (uiserver_decrypt): this. Replace arg VERIFY by new arg FLAGS. * src/engine-gpg.c (gpg_decrypt): Support GPGME_DECRYPT_UNWRAP. (gpg_encrypt): Support GPGME_ENCRYPT_WRAP. * tests/run-decrypt.c (main): New option --unwrap. * tests/run-encrypt.c (main): New option --wrap. -- Manual testing of that wrap/unwrap feature can be done this way: ./run-encrypt --verbose --key Alice /etc/motd > x ./run-decrypt --verbose --unwrap x > y ./run-encrypt --verbose --key Bob --wrap y > z 1. The message was first encrypted to Alice. 2. Alice decrypts the message receiving a valid OpenPGP message. 3. Alice encrypt that message to Bob This will also work with encrypted and signed messages; the signature will be kept intact during re-encryption. Requires GnuPG 2.1.12. Signed-off-by: Werner Koch <[email protected]>
2017-03-21core: New API gpgme_op_set_uid_flag.Werner Koch1-21/+48
* src/gpgme.h.in (gpgme_op_set_uid_flag_start): New. (gpgme_op_set_uid_flag_start): New. * src/gpgme.def, src/libgpgme.vers: Add them. * src/genkey.c (addrevuid_start): Change arg revoke to a flag. (gpgme_op_revuid_start): Pass GENKEY_EXTRAFLAG_REVOKE for the fomer revoke parameter. (gpgme_op_revuid): Ditto. (set_uid_flag): New. (gpgme_op_set_uid_flag_start): New. (gpgme_op_set_uid_flag): New. * src/engine.h (GENKEY_EXTRAFLAG_SETPRIMARY): new. * src/engine-gpg.c (gpg_adduid): Implement that flag. * tests/run-genkey.c (main): New command --set-primary. -- GnuPG-bug-id: 2931 Signed-off-by: Werner Koch <[email protected]>
2017-03-21core: Extend gpgme_get_dirinfo to return the gpg-wks-client name.Werner Koch1-1/+3
* src/dirinfo.c (WANT_GPG_WKS_CLIENT_NAME): New const. (struct dirinfo): New field 'gpg_wks_client_name'. (get_gpgconf_item): Build it on demand. (gpgme_get_dirinfo): New value "gpg-wks-client-name" for WHAT. Signed-off-by: Werner Koch <[email protected]>
2017-03-21core: New encryption flag GPGME_ENCRYPT_THROW_KEYIDS.Werner Koch1-0/+6
* src/gpgme.h.in (GPGME_ENCRYPT_THROW_KEYIDS): New flag. * src/engine-gpg.c (gpg_encrypt): Implement flag (gpg_encrypt_sign): Implement flag. * tests/run-encrypt.c (main): New option --throw-keyids. -- It would be nice to also selectively hide recipients (that is gpg --hidden-recipient) but our API does not ye allow this because it is based on key objects. A possible way to implement that would be a API to set processing flags into a key but this is complicated due to the reference counting and thus the possibility that a key object is used by different context. Signed-off-by: Werner Koch <[email protected]>
2017-03-21core: New public API gpgme_op_keylist_from_data_start.Andre Heinecke1-2/+22
* src/gpgme.h.in: New API gpgme_op_keylist_from_data_start. * src/libgpgme.vers, src/gpgme.def: Add it. * src/keylist.c (gpgme_op_keylist_from_data_start): New. * src/engine-backend.h (engine_ops): Add field 'keylist_data'. Change all engines to pass NULL for it. * src/engine.c (_gpgme_engine_op_keylist_data): New. * src/engine-gpg.c (gpg_keylist_data): New. (_gpgme_engine_ops_gpg): Register gpg_keylist_data. * tests/run-keylist.c (main): New option --from-file. -- Co-authored-by: Werner Koch <[email protected]> GnuPG-bug-id: 2819
2017-03-20core,cpp: New key flag 'is_de_vs'.Werner Koch1-4/+6
* src/gpgme.h.in (_gpgme_subkey): New flag is_de_vs. * tests/run-keylist.c (main): Print that flag. * src/keylist.c (parse_pub_field18): New. (keylist_colon_handler): Parse compliance flags. * lang/cpp/src/key.cpp (Key::isDeVs): New. (Subkey::isDeVs): New. * lang/cpp/src/key.h (class Key): New method isDeVs. (class Subkey): New method isDeVs. Signed-off-by: Werner Koch <[email protected]>
2017-03-20tests: Fix distcheck.Justus Winter1-1/+2
* tests/start-stop-agent: Do not create 'gpg-agent.conf' if it does not exist. Fixes-commit: 16b202d9999591b71fb8bb49f6db10ef96d4cbe8 Signed-off-by: Justus Winter <[email protected]>
2017-03-20tests: Use 'gpg-agent --allow-loopback-pinentry' if applicable.Justus Winter1-0/+8
* lang/python/tests/Makefile.am (gpg-agent.conf): Do not hard-code the option. This breaks gpg-agent from GnuPG 2.0. * tests/start-stop-agent: Rather, check if the option is supported and add it to the configuration if it is. GnuPG-bug-id: 3008 Fixes-commit: bbf19124bbec9eb6298cef2914baae7ac74382fe Signed-off-by: Justus Winter <[email protected]>
2017-01-31core: Add new context flag "redraw".Werner Koch1-0/+4
* src/context.h (struct gpgme_context): New field 'redraw_suggested'. * src/op-support.c (_gpgme_op_reset): Clear REDRAW_SUGGESTED. * src/progress.c (_gpgme_progress_status_handler): Set REDRAW_SUGGESTED. * src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): Add "redraw". * tests/run-sign.c (main): Use it. Signed-off-by: Werner Koch <[email protected]>
2017-01-30tests: Reduce iterations / threadsAndre Heinecke3-3/+3
* tests/gpg/t-gpgconf.c (main): Reduce iterations to 10. * tests/gpg/t-thread-keylist-verify.c, tests/gpg/t-thread-keylist.c (THREAD_COUNT): Reduce to 10. -- While these tests tested for race conditions a smaller number of iteration should still show problems if they are run on multiple systems and regulary. While the 100 Thread count in the t-thread tests could lead to resource problems.
2017-01-25tests: Use --debug-quick-random for testsAndre Heinecke1-5/+7
* tests/start-stop-agent: Don't autostart agent on --stop and running check. Use --debug-quick-random when starting. -- This should speed up the tests especially on low entropy systems. Possibly fixing a hang on pythons op_genkey test in the Launchpad build enviorment (see launchpad issue 1655298)
2017-01-17tests: Add safeguards against nullptr derefAndre Heinecke1-6/+9
* t-gpgconf.c (main): Test some values before dereferencing them.
2017-01-16tests: Fix distcheck.Justus Winter1-1/+1
* tests/gpg/Makefile.am (CLEANFILES): Remove gpgconf backups. Fixes-commit: ea7bb62f5d981615847528b3ce53be9cc4d741a7 Signed-off-by: Justus Winter <[email protected]>
2017-01-12tests: Improve the gpgconf test.Justus Winter2-53/+129
* tests/gpg/t-gpgconf.c: Include support functions. (fail_if_err): Remove macro. (init_gpgme): Remove function. (lookup): New function. (main): Update some values and verify that the changes are applied. * tests/gpg/t-support.h (test): New assert-like macro. GnuPG-bug-id: 2881 Signed-off-by: Justus Winter <[email protected]>
2017-01-12tests: Enable gpgconf test.Justus Winter1-4/+0
-- Fixes: 02ba35c1b6a2cbb3361b2f2ad507c53564b2be0b Signed-off-by: Justus Winter <[email protected]>
2016-11-25tests: Remove tofu.db.Justus Winter1-1/+2
* lang/python/Makefile.am (CLEANFILES): Add 'tofu.db'. * tests/gpg/Makefile.am (CLEANFILES): Likewise. Signed-off-by: Justus Winter <[email protected]>
2016-11-16doc: Replace http: by https: in core source files.Werner Koch18-18/+18
-- Signed-off-by: Werner Koch <[email protected]>
2016-11-16core: Do not leak the override session key to ps(1).Werner Koch1-1/+2
* src/engine-gpg.c (struct engine_gpg): New field override_session_key. (gpg_release): Free that field. (gpg_decrypt): With gnupg 2.1.16 use --override-session-key-fd. * tests/run-decrypt.c (main): Fix setting over the override key. -- Note that this works only with gnupg 2.1.16 and later. Signed-off-by: Werner Koch <[email protected]>
2016-11-16doc,tests: Require use of ctx_flag before use of session_key.Daniel Kahn Gillmor1-6/+23
* doc/gpgme.texi: Document requirements of verifying that it is OK to use session_key. * tests/run-decrypt.c: Ensure that we fail if we're unable to access the session key, so that we do not violate the guidance above. Signed-off-by: Daniel Kahn Gillmor <[email protected]> Changed the description -@code{gpgme_set_ctx_flag (ctx, "export-session-key")} returns -@code{GPG_ERR_NO_ERROR} or @code{gpgme_get_ctx_flag (ctx, -"export-session-key")} returns @code{"1"}. +@code{gpgme_set_ctx_flag (ctx, "export-session-key")} returns success +or @code{gpgme_get_ctx_flag (ctx, "export-session-key")} returns true +(non-empty string). to get gpgme_get_ctx_flag for boolean values in sync with its own description. Note that I don't agree with the above suggestion but it does not really harm to have it in the man page. Signed-off-by: Werner Koch <[email protected]>
2016-11-15core: Implement context flag "override-session-key".Werner Koch1-1/+26
* src/gpgme.c (gpgme_set_ctx_flag): Add flags "export-session-key" and "override-session-key". (gpgme_get_ctx_flag): Ditto. (gpgme_set_export_session_keys): Remove. (gpgme_get_export_session_keys): Remove. * src/gpgme.def, src/libgpgme.vers: Remove them. * src/context.h (struct gpgme_context): Add field override_session_key. * src/decrypt-verify.c (decrypt_verify_start): Pass override_session_key value to the engine. * src/decrypt.c (decrypt_start): Ditto. * src/engine.c (_gpgme_engine_op_decrypt): Ditto. (_gpgme_engine_op_decrypt_verify): Ditto. * src/engine-backend.h (struct engine_ops): Extend DECRYPT and DECRYPT_VERIFY_START with override_session_key. * src/engine-uiserver.c (_uiserver_decrypt): Add stub arg override_session_key. (uiserver_decrypt): Ditto. (uiserver_decrypt_verify): Ditto. * src/engine-gpgsm.c (gpgsm_decrypt): Ditto. * src/engine-gpg.c (gpg_decrypt): Add arg override_session_key and set corresponding gpg option. * tests/run-decrypt.c (print_result): Print the session key if available. (main): Add options --export-session-key and --override-session-key. -- To keep the number of context manipulation functions at bay, this patches removes the just added gpgme_set_export_session_keys and gpgme_get_export_session_keys by flags for the generic context function. The patch also implements the --override-session-key feature. GnuPG-bug-id: 2754 Signed-off-by: Werner Koch <[email protected]>
2016-11-15core: Add public function gpgme_get_ctx_flag.Werner Koch1-0/+22
* src/gpgme.h.in (gpgme_get_ctx_flag): New. * src/gpgme.c (gpgme_set_ctx_flag): Move down the file and add a trace statement. (gpgme_get_ctx_flag): New. * src/gpgme.def, src/libgpgme.vers: Add new interface. Signed-off-by: Werner Koch <[email protected]>
2016-11-11tests,python: Atomic directory creationAlon Bar-Lev2-2/+2
* lang/python/tests/Makefile.am: Use MIDIR_P. * tests/gpg/Makefile.am: Ditto. * tests/gpgsm/Makefile.am: Ditto. -- Solves race in parallel build when mkdir fails if directory exists. Signed-off-by: Alon Bar-Lev <[email protected]> - Tweaked the ChangeLog Signed-off-by: Werner Koch <[email protected]>
2016-11-10tests: Reduce thread count in new thread testsAndre Heinecke2-2/+2
* gpg/t-thread-keylist-verify.c, gpg/t-thread-keylist.c: Reduce threads to 100 -- Due to the limit of FD_SETSIZE the number of parallel threads is limited. So some systems run into this problem when running the testsuite.