aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/examples/howto/encrypt-to-group-trustno1.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-06-15core: Use 64 bit instead of gpgme_off_t for some internal functions.Werner Koch5-8/+10
* src/conversion.c (_gpgme_string_to_off): Return an u64 value. * src/data.c (_gpgme_data_get_size_hint): Ditto. (gpgme_data_set_flag): Use u64 for io-buffer-size due to string_to_off change. * src/data.h (struct gpgme_data): Change size_hint to u64. * src/engine-gpg.c (add_input_size_hint): Replace gpgme_off_t by u64. -- GnuPG-bug-id: 6534
2023-06-13Fix definition of GPG_ERR_ENABLE_GETTEXT_MACROSAndre Heinecke1-1/+1
* configure.ac: Add missing value. -- Otherwise it would not be included in config.h
2023-06-01doc,cpp: Treat GPG_ERR_FULLY_CANCELED as canceledIngo Klöcker3-1/+9
* doc/gpgme.texi (GPG_ERR_FULLY_CANCELED): New. * lang/cpp/src/context.cpp (Error::isCanceled): Also return true for GPG_ERR_FULLY_CANCELED. -- For internal purposes, GnuPG sometimes uses the error code GPG_ERR_FULLY_CANCELED instead of GPG_ERR_CANCELED. From a user perspective both values mean the same thing and should therefore be treated identically. GnuPG-bug-id: 6510
2023-05-30cpp,python: Respect --disable-gpg-test for testsBiswapriyo Nath2-2/+14
lang/cpp/Makefile.am (SUBDIRS): Depend tests in RUN_GPG_TESTS. lang/python/Makefile.am (SUBDIRS): Ditto. -- This is similar to the core and qt switch to disable the tests. Signed-off-by: Biswapriyo Nath <[email protected]> ChangeLog entries added by wk.
2023-05-30core: For key signing and uid revoking allow an empty user id.Werner Koch1-2/+2
* src/engine-gpg.c (gpg_keysign): Required USERID to be non-empty. -- For some language bindings it is easier if the engine considers an empty user id to be equivalent to NULL.
2023-05-23python: Fix wrong use of write.Werner Koch2-10/+5
* lang/python/helpers.c (pyPassphraseCb): Use gpgme_io_writen. (_gpg_interact_cb): Ditto. * lang/python/helpers.h (write) [W32]: Remove bad write macro. -- GnuPG-bug-id: T6501 Using write(2) without checking for EINTR is a not a good idea. Futher gpgme_io_writen is the correct way to send data from a callback. This also fixed the wrong use of a simple macro for Windows.
2023-05-16build: Sync to libtool from libgpg-error for 64-bit Windows.NIIBE Yutaka1-0/+13
* build-aux/ltmain.hs: Update from libgpg-error. -- GnuPG-bug-id: 6484 Signed-off-by: NIIBE Yutaka <[email protected]>
2023-04-25doc: Fix Python example code.NIIBE Yutaka4-15/+24
* lang/python/doc/src/gpgme-python-howto.org: Fix chmod race. * lang/python/examples/howto/export-secret-key.py: Likewise. * lang/python/examples/howto/export-secret-keys.py: Likewise. * lang/python/examples/howto/temp-homedir-config.py: Likewise. -- It's not for Python 2.7. GnuPG-bug-id: 6466 Reported-by: Hanno Böck Co-authored-by: Ingo Klöcker Signed-off-by: NIIBE Yutaka <[email protected]>
2023-04-20Post release updatesWerner Koch2-1/+5
--
2023-04-20Release 1.20.0gpgme-1.20.0Werner Koch2-12/+22
2023-04-20core: Support the new macOS Homebrew location.Werner Koch1-1/+2
* src/posix-util.c (find_executable): Extend the path. -- GnuPG-bug-id: 6440
2023-04-19build,qt: Simplify check for mocIngo Klöcker1-24/+3
m4/qt6.m4: Remove alternative checks for moc that were taken over from Qt 5 and that are obsolete for Qt 6. --
2023-04-19Update NEWSIngo Klöcker1-1/+5
* NEWS: Add news for recent changes -- GnuPG-bug-id: 5960, 6456
2023-04-18cpp: Fix Key::canSign()Ingo Klöcker2-17/+4
* lang/cpp/src/key.h (canReallySign): Deprecate. * lang/cpp/src/key.cpp (canSign): Remove workaround. Use implementation of canReallySign. (canReallySign): Use canSign(). (operator<<): Use canSign(). -- The workaround in canSign was added 19 years ago and canReallySign, the workaround for the workaround, was added 13 years ago. Time to get rid of those workarounds for a bug in gpgme which has been fixed long ago and which cause bugs for any unsuspecting user of Key::canSign(). GnuPG-bug-id: 6456
2023-04-17core: Avoid printf format warnings due to gpgme_ssize_t.Werner Koch1-1/+1
* src/debug.h (_trace_sysres_ssize_t): Cast arg.
2023-04-17core,w32: Fix invocation of gpgtarWerner Koch2-13/+32
* src/dirinfo.c (EXEEXT_S): New. (get_gpgconf_item): Append ".exe" to gpg-wks-client and gpgtar. * src/gpgme-w32spawn.c (mystderr): Add code to ease debugging.
2023-04-05build: Update gpg-error.m4.NIIBE Yutaka1-7/+5
* m4/gpg-error.m4: Update from libgpg-error master. -- Signed-off-by: NIIBE Yutaka <[email protected]>
2023-04-04w32: Always use UTF-8 for localized textsIngo Klöcker3-0/+9
* configure.ac: Define GPG_ERR_ENABLE_GETTEXT_MACROS. * src/version.c (do_subsystem_inits) [W32]: Switch gettext to UTF-8. -- On Windows, applications using GpgME can now rely on localized texts returned by GpgME, e.g. the texts for error codes, to be UTF-8 encoded. In particular, this saves a useless and possibly lossy conversion to native encoding and back to UTF-8. On other OSes, where we use the system provided gettext, we assume that UTF-8 is used nowadays. GnuPG-bug-id: 5960
2023-03-27core: Minor code cleanup.Werner Koch1-50/+25
* src/engine-gpg.c (build_argv): Remove superfluous tes. -- gpg_error_from_syserror is guaranteed not to return 0 even if errno is not set.
2023-03-27core: Initialize error variableIngo Klöcker1-1/+1
* src/engine-gpg.c (build_argv): Initialize err. -- Fixes-commit: fbce7deb3b68af900f692591d5d05fa5c1a83f5f
2023-03-21core,cpp: Add new key flags to gpgme_subkey_tWerner Koch6-4/+58
* src/gpgme.h.in (struct _gpgme_subkey): Add bit flags can_renc, can_timestamp, adn is_group_owned. Reduce size of _unused. * src/keylist.c (set_subkey_capability): Set them. * tests/run-keylist.c (main): Print them. * lang/cpp/src/key.h (Subkey::canRenc): New. (Subkey::canTimestamp): New. (Subkey::isGroupOwned): New. * lang/cpp/src/key.cpp: Implement new methods. (Subkey::isQualified): Print them. (std::ostream &operator<<): Print them. -- GnuPG-bug-id: 6395
2023-03-17Post release updatesWerner Koch2-1/+8
--
2023-03-17Release 1.19.0gpgme-1.19.0Werner Koch2-7/+9
2023-03-17python: Update python.m4 configure script.Ben Greiner (bnavigator)2-91/+198
* configure.ac: Unset PYTHON_LIBS. Support python 3.10. * m4/python.m4: Find correct version string for python >= 3.10. -- See-also: https://dev.gnupg.org/D546 Also test for 3.11 and 3.12 (wk).
2023-03-17tests: Package the ownertrust fileIngo Klöcker1-1/+1
tests/gpg/Makefile.am (EXTRA_DIST): Add ownertrust.txt. -- This fixes `make distcheck`. GnuPG-bug-id: 6342
2023-03-15build: Update autogen.sh from libgpg-errorWerner Koch1-23/+20
-- This fixes hopefully issues with the beta numbering. Also removes the Windows-CE support
2023-03-08core: Also detect legacy X.509 v0 certificates.Werner Koch1-19/+31
* src/data-identify.c (basic_detection): Loose the detection of X.509 certs.
2023-03-08tests: Add option --binary to run-verifyWerner Koch1-0/+8
* tests/run-verify.c (main): Set encoding. -- gpgsm usually used autodetection of the input format. But sometimes it is required to tell gpgsm that the input is binary encoded. In particular, this allows to strip trailing zeroes from a detached signature.
2023-02-14qt: Add signals for file-based and data-based progressIngo Klöcker9-0/+101
* lang/qt/src/decryptverifyarchivejob.h (DecryptVerifyArchiveJob): Add signals fileProgress and dataProgress. * lang/qt/src/encryptarchivejob.h (EncryptArchiveJob): Ditto. * lang/qt/src/signarchivejob.h (SignArchiveJob): Ditto. * lang/qt/src/signencryptarchivejob.h (SignEncryptArchiveJob): Ditto. * lang/qt/src/job_p.h (emitArchiveProgressSignals): New. * lang/qt/src/qgpgmedecryptverifyarchivejob.cpp (QGpgMEDecryptVerifyArchiveJob::QGpgMEDecryptVerifyArchiveJob): Emit appropriate signal when receiving Job::rawProgress signal. * lang/qt/src/qgpgmeencryptarchivejob.cpp (QGpgMEEncryptArchiveJob::QGpgMEEncryptArchiveJob): Ditto. * lang/qt/src/qgpgmesignarchivejob.cpp (QGpgMESignArchiveJob::QGpgMESignArchiveJob): Ditto. * lang/qt/src/qgpgmesignencryptarchivejob.cpp (QGpgMESignEncryptArchiveJob::QGpgMESignEncryptArchiveJob): Ditto. -- GnuPG-bug-id: 6342
2023-02-14qt: Remove commented out codeIngo Klöcker1-12/+0
-- GnuPG-bug-id: 6342
2023-02-14qt: Add simple and extended progress signals replacing old signalIngo Klöcker6-18/+80
* lang/qt/src/job.h (Job): Add signals jobProgress and rawProgress. Deprecate signal progress. * lang/qt/src/multideletejob.cpp (MultiDeleteJob::slotResult): Emit new progress signals. * lang/qt/src/qgpgmerefreshsmimekeysjob.cpp (QGpgMERefreshSMIMEKeysJob::slotStatus): Ditto. * lang/qt/src/threadedjobmixin.h (ThreadedJobMixin::showProgress): Use modern overload of QMetaObject::invokeMethod to forward the progress signal and add the value of what. Add forwarding of progress to the new signals. * lang/qt/tests/t-encrypt.cpp (EncryptionTest::testProgress): Test the new signals instead of the deprecated one. -- The new signal jobProgress omits the what value which is useless for most consumers. The new signal rawProgress makes all information provided by the backend available to consumers. The latter is not really meant to be used by users of gpgme. It will be used by the archive jobs to provide more user-friendly signals. GnuPG-bug-id: 6342
2023-02-10core: Switch to logging via gpgrtWerner Koch3-96/+109
* src/debug.c (errfp): Remove. (debug_init): Factor some code out to ... (safe_to_use_debug_file): new. (tid_log_callback): New. (debug_init): Rewrite to make use of gpgrt logging. (_gpgme_debug): Ditto. (_gpgme_debug_end): Remove extra LF testing code. * src/dirinfo.c (get_gpgconf_item): Remove now unneeded LFs. Realign output.
2023-02-10core: Update copyright noticesWerner Koch3-4/+4
--
2023-02-10tests: Fix cleaning up at the end of the testIngo Klöcker1-0/+2
* tests/gpg/t-import.c (main): Unref key and release context. -- This fixes leaks found with -fsanitize=address.
2023-02-10core: Allow finalization of signature verification of unencrypted dataIngo Klöcker2-3/+38
* src/decrypt-verify.c (decrypt_verify_status_handler): Call _gpgme_verify_status_handler on EOF even if _gpgme_decrypt_status_handler returned NO DATA error. * tests/gpg/t-decrypt-verify.c (normal_signed_message): New. (main): Add test with signed, but not encrypted data. -- This allows the verify status handler to finalize the verification of the last signature even if the decrypt status handler returned a NO DATA error because the input data wasn't encrypted. GnuPG-bug-id: 6368
2023-02-09cpp: Improve debug output of some enumsIngo Klöcker1-19/+32
* lang/cpp/src/verificationresult.cpp (operator<<): Fix output of Signature::PKAStatus which doesn't represent flags. Print corresponding name of enum value if Signature::Summary or Notation::Flags are 0. -- GnuPG-bug-id: 6368
2023-02-09tests: Stop daemons after setting up test environmentIngo Klöcker4-0/+4
* lang/python/tests/Makefile.am, lang/qt/tests/Makefile.am, tests/gpg/Makefile.am, tests/json/Makefile.am (pubring-stamp): Call `gpgconf --kill all` after importing test keys. -- This ensures that no gpg-agents or other daemons are running after "make".
2023-02-08tests: Extend tests with an ultimately trusted keyIngo Klöcker7-42/+56
* tests/gpg/Makefile.am (gpg-sample.stamp, pubring-stamp): Unify usage of tabs. (pubring-stamp): Import owner trust values. * tests/gpg/ownertrust.txt: New. * tests/gpg/t-decrypt-verify.c, tests/gpg/t-verify.c: Update expected values for signature summary and validity. * tests/gpg/t-keylist-secret-sig.c, tests/gpg/t-keylist-sig.c, tests/gpg/t-keylist.c: Update expected values of owner trust and uid validity. -- This change marks the "Alpha Test" test key as ultimately trusted which makes it possible to check for correct values derived from this, i.e. key owner trust, user id validity, signature summary and signature validity. GnuPG-bug-id: 6342
2023-02-08tests: Make t-edit-sign idempotentIngo Klöcker1-3/+56
* tests/gpg/t-edit-sign.c (test_key, test_key_fpr, import_key, delete_key): New. (main): Remove key_fpr. Import test key to sign. Delete test key after test. -- Using a dedicated test key for testing key signing, which is imported before the test and deleted after the test, makes sure that the keys in the test key ring don't change. This is important for stable results of the key listing tests. GnuPG-bug-id: 6342
2023-02-02doc: Add new flagsIngo Klöcker1-0/+2
-- GnuPG-bug-id: 6342
2023-02-02qt,tests: Add test for the previous commitIngo Klöcker2-0/+135
* lang/qt/tests/t-decryptverify.cpp: New. * lang/qt/tests/Makefile.am: Add new test. -- GnuPG-bug-id: 6342
2023-02-02cpp: Return successful verification for signed but not encrypted dataIngo Klöcker1-7/+15
* lang/cpp/src/context.cpp (Context::decrypt): Use decryptionResult(). (Context::verifyDetachedSignature, Context::verifyOpaqueSignature): Use verificationResult(). (Context::verificationResult): Ignore "no data" error for signed but not encrypted data. (Context::decryptAndVerify): Use decryptionResult() and verificationResult(). -- gpgme's decrypt operations set the error to GPG_ERR_NO_DATA if no encrypted data was found. It makes sense to use this error for the encryption result, but it doesn't make sense to use it also for the verfication result if signed data was found. This way using the combined decrypt-verify operations on data that may be encrypted and/or signed doesn't produce confusing results. GnuPG-bug-id: 6342
2023-02-02qt: Add job for extracting encrypted and signed archivesIngo Klöcker11-1/+566
* lang/qt/src/decryptverifyarchivejob.cpp, lang/qt/src/decryptverifyarchivejob.h, lang/qt/src/decryptverifyarchivejob_p.h, lang/qt/src/qgpgmedecryptverifyarchivejob.cpp, lang/qt/src/qgpgmedecryptverifyarchivejob.h: New. * lang/qt/src/protocol.h (class Protocol): Add pure virtual member function decryptVerifyArchiveJob * lang/qt/src/protocol_p.h (Protocol::decryptVerifyArchiveJob): ... and implement it. * lang/qt/src/Makefile.am: Update accordingly. * lang/qt/tests/run-decryptverifyarchivejob.cpp: New. * lang/qt/tests/Makefile.am: Add new test runner. -- GnuPG-bug-id: 6342
2023-02-02core: Make usage of input size hint compatible with gpgtarIngo Klöcker1-13/+8
* src/engine-gpg.c (add_input_size_hint): Use add_gpg_arg_with_value to add the --input-size-hint option. -- GnuPG-bug-id: 6342
2023-02-02cpp: Update decryption flagsIngo Klöcker2-0/+2
* lang/cpp/src/context.h (DecryptArchive): New flag. -- This flag corresponds to the GPGME_DECRYPT_ARCHIVE flag in gpgme. GnuPG-bug-id: 6342
2023-02-02qt: Allow checking if the sign/encrypt archive jobs are supportedIngo Klöcker8-0/+44
* lang/qt/src/encryptarchivejob.cpp, lang/qt/src/encryptarchivejob.h (isSupported): New. * lang/qt/src/signarchivejob.cpp, lang/qt/src/signarchivejob.h (isSupported): New. * lang/qt/src/signencryptarchivejob.cpp, lang/qt/src/signencryptarchivejob.h (isSupported): New. * lang/qt/tests/run-encryptarchivejob.cpp (main), lang/qt/tests/run-signarchivejob.cpp (main): Check if jobs are supported. -- GnuPG-bug-id: 6342
2023-02-02cpp: Add const-overloads of version comparison operatorsIngo Klöcker1-0/+70
* lang/cpp/src/engineinfo.h (EngineInfo::Version): Add const-overloads of all comparison operators. -- We keep the non-const overloads for binary compatibility. GnuPG-bug-id: 6342
2023-02-02core: Allow usage of gpgtar also for new enough gpg 2.2Ingo Klöcker1-19/+23
* src/engine-gpg.c (have_usable_gpgtar): New. (start): Always pass --status-fd to the called process. (gpg_decrypt, gpg_encrypt, gpg_encrypt_sign, gpg_sign, gpg_verify): Use have_usable_gpgtar() to check for suitable gpg. -- The version check in start() is not needed because versions of gpg that are unsuitable for the usage of gpgtar are rejected already by the callers. GnuPG-bug-id: 6342
2023-02-01core,w32: More robust detection of GnuPG Desktop dir layoutWerner Koch1-20/+75
* src/w32-util.c (INST_TYPE_GPG4WIN, INST_TYPE_GPGDESK): New to replace the numeric constants. (find_version_file): New. (_gpgme_get_gpgconf_path): Guess a default for inst_type. -- GnuPG-bug-id: 6362
2023-01-31qt: Fix build without installed gpgme++ headersIngo Klöcker1-1/+1
* lang/qt/src/filelistdataprovider.cpp: Include error.h without folder prefix. -- GnuPG-bug-id: 6342