-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
2119 lines (1609 loc) · 80.4 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Noteworthy changes in version 1.14.0 (unreleased)
-------------------------------------------------
* New context flag "extended-edit" to enable expert key edit. [#4734]
* cpp: Add convenience API to obtain remarks. [#4734]
* cpp: The sign key edit-interactor now supports multiple signatures
from the same key. [#4734]
* qt: Extended signkeyjob to handle remarks and multiple signatures.
[#4734]
* qt: Added job API for gpg-card.
* qt: The logging category has been changed to gpg.qgpgme to be more
consistent with other qt logging categories.
* Interface changes relative to the 1.13.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_user_id_t EXTENDED: New field 'uidhash'.
cpp: UserID::remark NEW.
cpp: UserID::remarks NEW.
cpp: GpgSignKeyEditInteractor::setDupeOk NEW.
qt: SignKeyJob::setDupeOk NEW.
qt: SignKeyJob::setRemark NEW.
qt: GpgCardJob NEW.
Noteworthy changes in version 1.13.1 (2019-06-13)
-------------------------------------------------
* cpp: gpgme_set_global_flag is now wrapped. [#4471]
* w32: Improved handling of unicode install paths. [#4453]
* w32: The gpgme_io_spawn error message is now only shown once. [#4453]
* Fixed a crash introduced in 1.13.0 when working with S/MIME. [#4556]
* w32: Fixed format string errors introduced in 1.13.0 that could
cause crashes. [#4440]
* w32: Fixed an error in the new diagnostic gpgsm support introduced
in 1.13.0 that caused crashes in low fd scenarios. [#4439]
* python: Fixed a DecryptionError Exception. [#4478]
* python: No longer raises BadSignatures from decrypt(verify=True).
[#4276]
* Interface changes relative to the 1.13.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cpp: setGlobalFlag NEW.
[c=C33/A22/R1 cpp=C16/A10/R0 qt=C10/A3/R4]
Release-info: https://dev.gnupg.org/T4551
Noteworthy changes in version 1.13.0 (2019-03-26)
-------------------------------------------------
* Support GPGME_AUDITLOG_DIAG for gpgsm. [#4426]
* New context flag "trust-model".
* Removed support for WindowsCE and Windows ME.
* Aligned the gpgrt-config code with our other libaries.
* Auto-check for all installed Python versions. [#3354]
* Fixed generating card key in the C++ bindings. [#4428]
* Fixed a segv due to bad parameters in genkey. [#4192]
* Fixed crash if the plaintext is ignored in a CMS verify.
* Fixed memleak on Windows. [T4238]
* Tweaked the Windows I/O code.
* Fixed random crashes on Windows due to closing an arbitrary
handle. [#4237]
* Fixed a segv on Windows. [#4369]
* Fixed test suite problems related to dtags. [#4298]
* Fixed bunch of python bugs. [#4242,commit 9de1c96ac3cf]
* Several fixes to the Common Lisp bindings.
* Fixed minor bugs in gpgme-json. [#4331,#4341,#4342,#4343
* Require trace level 8 to dump all I/O data.
* The compiler must now support variadic macros.
* Interface changes relative to the 1.12.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_set_ctx_flag EXTENDED: New flag 'trust-model'.
cpp: Context::create NEW.
cpp: Key::isBad NEW.
cpp: Subkey::isBad NEW.
cpp: UserID::isBad NEW.
cpp: UserID::Signature::isBad NEW.
cpp: GenCardKeyInteractor::setAlgo NEW.
[c=C33/A22/R0 cpp=C15/A9/R0 qt=C10/A3/R3]
Release-info: https://dev.gnupg.org/T4376
Noteworthy changes in version 1.12.0 (2018-10-08)
-------------------------------------------------
* Enhanced the JSON based interface tool gpgme-json to support Native
Messaging as well as new Javascript code to support the browser
site. See lang/js/README for details.
* Major overhaul of the Python language bindings documentation.
* Even for old versions of gpg a missing MDC will now lead to a
decryption failure.
* Added context flag "auto-key-locate" to control the
behavior of GPGME_KEYLIST_MODE_LOCATE.
* New data function to create a data object from an estream.
* Add more interfaces to the C++ bindings.
* Improved error codes on decryption failure.
* Lots of minor fixes.
* Interface changes relative to the 1.11.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_data_new_from_estream NEW.
gpgme_decrypt_result_t EXTENDED: New field legacy_cipher_nomdc.
gpgme_set_ctx_flag EXTENDED: New flag 'ignore-mdc-error'.
GPGME_AUDITLOG_DEFAULT NEW.
GPGME_AUDITLOG_DIAG NEW.
gpgme_set_ctx_flag EXTENDED: New flag 'auto-key-locate'.
cpp: DecryptionResult::sessionKey NEW.
cpp: DecryptionResult::symkeyAlgo NEW.
cpp: DecryptionResult::isLegacyCipherNoMDC New.
cpp: Data::rewind NEW.
cpp: Context::setFlag NEW.
cpp: Context::getFlag NEW.
cpp: Context::createKeyEx NEW.
[c=C32/A21/R0 cpp=C14/A8/R0 qt=C10/A3/R2]
Release-info: https://dev.gnupg.org/T4109
Noteworthy changes in version 1.11.1 (2018-04-20)
-------------------------------------------------
* Fixed build problems in the 1.11.0 release.
* Added C++ interfaces which were planned for 1.11.0.
* Interface changes relative to the 1.10.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cpp: Key::origin NEW.
cpp: Key::lastUpdate NEW.
cpp: UserID::origin NEW.
cpp: UserID::lastUpdate NEW.
[c=C31/A20/R1 cpp=C13/A7/R0 qt=C10/A3/R2]
Noteworthy changes in version 1.11.0 (2018-04-18)
-------------------------------------------------
* New encryption API to support direct key specification including
hidden recipients option and taking keys from a file. This also
allows to enforce the use of a subkey.
* New encryption flag for the new API to enforce the use of plain
mail addresses (addr-spec).
* The import API can now tell whether v3 keys are skipped. These old
and basically broken keys are not anymore supported by GnuPG 2.1.
* The decrypt and verify API will now return the MIME flag as
specified by RFC-4880bis.
* The offline mode now has an effect on gpg by disabling all network
access. [#3831]
* A failed OpenPGP verification how returns the fingerprint of the
intended key if a recent gpg version was used for signature
creation.
* New tool gpgme-json as native messaging server for web browsers.
As of now public key encryption and decryption is supported.
Requires Libgpg-error 1.29.
* New context flag "request-origin" which has an effect when used
with GnuPG 2.2.6 or later.
* New context flag "no-symkey-cache" which has an effect when used
with GnuPG 2.2.7 or later.
* New convenience constant GPGME_KEYLIST_MODE_LOCATE.
* Improved the Python documentation.
* Fixed a potential regression with GnuPG 2.2.6 or later.
* Fixed a crash in the Python bindings on 32 bit platforms. [#3892]
* Various minor fixes.
* Interface changes relative to the 1.10.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_op_encrypt_ext NEW.
gpgme_op_encrypt_ext_start NEW.
gpgme_op_encrypt_sign_ext NEW.
gpgme_op_encrypt_sign_ext_start NEW.
GPGME_ENCRYPT_WANT_ADDRESS NEW.
GPGME_KEYLIST_MODE_LOCATE NEW.
gpgme_import_result_t EXTENDED: New field 'skipped_v3_keys'.
gpgme_decrypt_result_t EXTENDED: New field 'symkey_algo'.
gpgme_decrypt_result_t EXTENDED: New field 'is_mime'.
gpgme_verify_result_t EXTENDED: New field 'is_mime'.
cpp: Key::locate NEW.
cpp: Data::toString NEW.
cpp: ImportResult::numV3KeysSkipped NEW.
[c=C31/A20/R0 cpp=C12/A6/R0 qt=C10/A3/R1]
Noteworthy changes in version 1.10.0 (2017-12-12)
-------------------------------------------------
* Now returns more specific error codes for decryption to distinguish
between bad passphrase, user canceled, and no secret key.
* Now returns key origin information if available.
* Added context flag "auto-key-retrieve" to selectively enable the
corresponding gpg option.
* Added flag is_de_vs to decryption and verify results.
* py: Use SEEK_SET as default for data.seek.
* cpp: Various new APIs.
* Reduced spawn overhead on Linux again. Added new configure option
--disable-linux-getdents to disable this feature for very old
Linux versions.
* Improved the Python bindings build system.
* Made the test suite less fragile.
* Interface changes relative to the 1.9.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_decrypt_result_t EXTENDED: New field 'is_de_vs'.
gpgme_signature_t EXTENDED: New field 'is_de_vs'.
gpgme_keyorg_t NEW.
gpgme_op_delete_ext NEW.
gpgme_op_delete_ext_start NEW.
GPGME_DELETE_ALLOW_SECRET NEW.
GPGME_DELETE_FORCE NEW.
gpgme_op_conf_dir NEW.
gpgme_set_ctx_flag EXTENDED: New flag 'auto-key-retrieve'.
cpp: DecryptionResult::isDeVs NEW.
cpp: Signature::isDeVs NEW.
cpp: EngineInfo::Version::operator> NEW.
cpp: Context::createKey NEW.
cpp: Context::startCreateKey NEW.
cpp: Context::createSubkey NEW.
cpp: Context::startCreateSubkey NEW.
qt: QuickJob NEW.
py: DecryptResult EXTENDED: New boolean field 'is_de_vs'.
py: Signature EXTENDED: New boolean field 'is_de_vs'.
py: GpgError EXTENDED: Partial results in 'results'.
[c=C30/A19/R0 cpp=C11/A5/R0 qt=C10/A3/R0]
Noteworthy changes in version 1.9.0 (2017-03-28)
------------------------------------------------
* Clarified meaning of the 'expire' parameter of gpgme_op_createkey
and gpgme_op_createsubkey. New flag to force a key without an
expiration date.
* New function gpgme_op_keylist_from_data_start to list keys from
data objects without importing them.
* New function gpgme_op_set_uid_flag to flag a key as primary.
* New function gpgme_op_decrypt_ext to run decryption with special
flags. This can for example be used to unwrap keys (remove only
the encryption layer).
* New encryption flags to wrap a key (adding an encryption layer to
an OpenPGP message) or to create anonymously encrypted messages.
* Support for adduid and revuid operations in the C++ bindings.
* Support for smartcard key generation in the C++ bindings.
* Several new functions for the Python binding.
* Many smaller bug fixes.
* Interface changes relative to the 1.8.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_op_createkey CHANGED: Meaning of 'expire' parameter.
gpgme_op_createsubkey CHANGED: Meaning of 'expire' parameter.
GPGME_CREATE_NOEXPIRE NEW.
gpgme_key_t EXTENDED: New field 'origin'.
gpgme_key_t EXTENDED: New field 'last_update'.
gpgme_subkey_t EXTENDED: New field 'is_de_vs'.
gpgme_user_id_t EXTENDED: New field 'origin'.
gpgme_user_id_t EXTENDED: New field 'last_update'.
gpgme_op_keylist_from_data_start NEW.
gpgme_op_set_uid_flag_start NEW.
gpgme_op_set_uid_flag NEW.
gpgme_op_decrypt_ext_start NEW.
gpgme_op_decrypt_ext NEW.
GPGME_ENCRYPT_THROW_KEYIDS NEW.
GPGME_ENCRYPT_WRAP NEW.
GPGME_DECRYPT_VERIFY NEW.
GPGME_DECRYPT_UNWRAP NEW.
gpgme_data_rewind UN-DEPRECATE.
cpp: Context::revUid(const Key&, const char*) NEW.
cpp: Context::startRevUid(const Key&, const char*) NEW.
cpp: Context::addUid(const Key&, const char*) NEW.
cpp: Context::startAddUid(const Key&, const char*) NEW.
cpp: Key::UserID::revoke() NEW.
cpp: Key::addUid() NEW.
cpp: Key::isDeVs NEW.
cpp: GpgGenCardKeyInteractor NEW.
cpp: Subkey::keyGrip NEW.
cpp: Subkey::isDeVs NEW.
cpp: Data::toKeys NEW.
cpp: Context::setDecryptFlags NEW.
cpp: Context::decrypt EXTENDED: Flags added.
cpp: Context::startDecrypt EXTENDED: Flags added.
cpp: Context::decryptAndVerify EXTENDED: Flags added.
cpp: Context::startCombinedDecryptionAndVerification EXTENDED: Flags.
cpp: Context::encryptFlags EXTENDED: New flags.
qt: CryptoConfig::stringValueList() NEW.
py: Context.__init__ EXTENDED: New keyword arg home_dir.
py: Context.home_dir NEW.
py: Context.keylist EXTENDED: New keyword arg mode.
py: Context.keylist EXTENDED: New keyword arg source.
py: Context.create_key NEW.
py: Context.create_subkey NEW.
py: Context.key_add_uid NEW.
py: Context.key_revoke_uid NEW.
py: Context.key_sign NEW.
py: Context.key_tofu_policy NEW.
py: core.pubkey_algo_string NEW.
py: core.addrspec_from_uid NEW.
[c=C29/A18/R0 cpp=C10/A4/R0 qt=C9/A2/R0]
Noteworthy changes in version 1.8.0 (2016-11-16)
------------------------------------------------
* The module of the Python bindings has been renamed to 'gpg'.
* New interface to query current software versions.
* New feature to use gpg's --{show,override}session-key options.
* New interface to set the sender of a mail.
* qt: Added Distinguished Name parser from libkleo
* The --homedir option is now used with recent gpgconf versions.
* On 64 bit Windows systems gpgconf is now properly located.
* The internal locking functions have been replaced by libgpg-error
locking functions.
* Interface changes relative to the 1.7.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_set_sender NEW.
gpgme_get_sender NEW.
gpgme_op_query_swdb NEW.
gpgme_op_query_swdb_result NEW.
gpgme_query_swdb_result_t NEW.
gpgme_get_ctx_flag NEW.
gpgme_decrypt_result_t EXTENDED: New field session_key.
qt: DN NEW.
qt: DN::Attribute NEW.
qt: Job::context(Job*) NEW.
cpp: EngineInfo::Version::Version(const char*) NEW.
cpp: EngineInfo::Version::Version() NEW.
cpp: SwdbResult NEW.
cpp: Context::setSender(const char*) NEW.
cpp: Context::getSender() NEW.
[c=C28/A17/R0 cpp=C9/A3/R0 qt=C8/A1/R0]
Noteworthy changes in version 1.7.1 (2016-10-18)
------------------------------------------------
* Fixed problems with the new language bindings.
* New helper function gpgme_addrspec_from_uid.
* Use option --exit-on-status-write-error with newer gpg versions.
* qt: Missed API from the Qt Binding inclusion has
been added again.
* qt: abstractimportjob.h is now installed to that
ImportJobs can be used again.
* qt: Fixed spelling error in API (startReceive).
* Interface changes relative to the 1.7.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_addrspec_from_uid NEW.
qt: WksPublishJob::startRecieve RENAMED to ::startReceive.
qt: MultiDeleteJob NEW.
qt: AbstractImportJob NEW.
qt: SpecialJob NEW.
cpp: Signature::key(bool, bool) NEW.
cpp: UserID::addrSpecFromString(const char*) NEW.
cpp: UserID::addrSpec() NEW.
[c=C27/A16/R0 cpp=C8/A2/R0 qt=C7/A0/R0]
Noteworthy changes in version 1.7.0 (2016-09-21)
------------------------------------------------
* New language bindings for Python 2 and 3.
* New language Bindings for C++ and the Qt-Framework API.
* New functions gpgme_op_createkey and gpgme_op_createsubkey to make
key creation easier (requires GnuPG 2.1).
* New functions gpgme_op_adduid and gpgme_op_revuid to make user id
management easier (requires GnuPG 2.1).
* New function gpgme_op_keysign to make key signing easier (requires
GnuPG 2.1).
* New function gpgme_op_interact to replace the now deprecated
functions gpgme_op_edit and gpgme_op_card_edit.
* New function gpgme_pubkey_algo_string to convert a public key
algorithm into a GnuPG 2.1 style string.
* Support for GnuPG 2.1's TOFU trust model.
* Notation flags are now correctly set on verify.
* New global flag "require-gnupg" to set a minimal gnupg version.
* More supported items in gpgme_get_dirinfo.
* New function gpgme_data_set_flag and flag "size-hint".
* New function gpgme_set_ctx_flag and flags "full-status" and
"raw-description".
* Improved gpgme_data_identify to distinguish more file types.
* New flag GPGME_ENCRYPT_SYMMETRIC for gpgme_op_encrypt to allow
mixed public key and symmetric encryption.
* New field KEYGRIP in gpgme_subkey_t. New fields FPR in gpgme_key_t.
* New flag GPGME_DATA_ENCODING_MIME to declare that the encrypted or
signed data is a valid MIME part. This is to support future GnuPG
versions.
* Interface changes relative to the 1.6.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_pubkey_algo_string NEW.
GPGME_PK_EDDSA NEW.
gpgme_set_ctx_flag NEW.
gpgme_data_set_flag NEW.
gpgme_op_createkey NEW.
gpgme_op_createkey_start NEW.
gpgme_op_createsubkey NEW.
gpgme_op_createsubkey_start NEW.
gpgme_op_adduid_start NEW.
gpgme_op_adduid NEW.
gpgme_op_revuid_start NEW.
gpgme_op_revuid NEW.
gpgme_op_keysign_start NEW.
gpgme_op_keysign NEW.
gpgme_op_tofu_policy_start NEW.
gpgme_op_tofu_policy NEW.
gpgme_op_interact_start NEW.
gpgme_op_interact NEW.
gpgme_interact_cb_t NEW.
gpgme_op_edit_start DEPRECATED.
gpgme_op_edit DEPRECATED.
gpgme_op_card_edit_start DEPRECATED.
gpgme_op_card_edit DEPRECATED.
gpgme_edit_cb_t DEPRECATED.
gpgme_status_code_t DEPRECATED.
gpgme_genkey_result_t EXTENDED: New fields pubkey and seckey.
gpgme_signature_t EXTENDED: New field key.
gpgme_key_t EXTENDED: New field fpr.
gpgme_subkey_t EXTENDED: New field keygrip.
gpgme_user_id_t EXTENDED: New field tofu.
gpgme_tofu_policy_t NEW.
gpgme_tofu_info_t NEW.
GPGME_STATUS_KEY_CONSIDERED NEW.
GPGME_STATUS_TOFU_USER NEW.
GPGME_STATUS_TOFU_STATS NEW.
GPGME_STATUS_TOFU_STATS_LONG NEW.
GPGME_STATUS_NOTATION_FLAGS NEW.
GPGME_KEYLIST_MODE_WITH_TOFU NEW.
GPGME_DATA_TYPE_PGP_ENCRYPTED NEW.
GPGME_DATA_TYPE_PGP_SIGNATURE NEW.
GPGME_DATA_ENCODING_MIME NEW.
GPGME_ENCRYPT_SYMMETRIC NEW.
GPGME_CREATE_SIGN NEW.
GPGME_CREATE_ENCR NEW.
GPGME_CREATE_CERT NEW.
GPGME_CREATE_AUTH NEW.
GPGME_CREATE_NOPASSWD NEW.
GPGME_CREATE_SELFSIGNED NEW.
GPGME_CREATE_NOSTORE NEW.
GPGME_CREATE_WANTPUB NEW.
GPGME_CREATE_WANTSEC NEW.
GPGME_CREATE_FORCE NEW.
GPGME_KEYSIGN_LOCAL NEW.
GPGME_KEYSIGN_LFSEP NEW.
GPGME_INTERACT_CARD NEW.
[c=C26/A15/R0 cpp=C6/A0/R1 qt=C6/A0/R1]
Noteworthy changes in version 1.6.0 (2015-08-26) [C25/A14/R0]
------------------------------------------------
* Added gpgme_set_offline to do a key listinging w/o requiring CRL.
* Added gpgme_set_status_cb to allow a user to see some status
messages.
* Added an export mode for secret keys.
* More precise error codes are returned if GnuPG >= 2.1.8 is used.
* The passphrase handler for the loopback mode has been improved and may
also be used with genkey.
* [w32] The standard GnuPG 2.1 install directory is now searched for
gpgconf.exe before a registry specified directory and the Gpg4win
install directory.
* [w32] gpgme-w32spawn.exe will now only be searched in the gpgme DLL
directory.
* Interface changes relative to the 1.5.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_set_offline NEW.
gpgme_get_offline NEW.
gpgme_set_status_cb NEW.
gpgme_get_status_cb NEW.
GPGME_EXPORT_MODE_SECRET NEW
GPGME_EXPORT_MODE_RAW NEW.
GPGME_EXPORT_MODE_PKCS12 NEW.
Noteworthy changes in version 1.5.5 (2015-06-08) [C24/A13/R4]
------------------------------------------------
* Fixed crash in key listings for user ids with a backslash.
* Fixed regression for GPGSM use with GnuPG < 2.1.
* Properly set signature summary for revoked OpenPGP keys.
Noteworthy changes in version 1.5.4 (2015-04-13) [C24/A13/R3]
------------------------------------------------
* Fixed a possible crash in the debug code.
* Fixed building for Windows with newer versions of Mingw.
Noteworthy changes in version 1.5.3 (2014-12-11) [C24/A13/R2]
-------------------------------------------------------------
* The export key functions do now return an error if used with the
latest GnuPG version.
Noteworthy changes in version 1.5.2 (2014-11-21) [C24/A13/R1]
-------------------------------------------------------------
* gpgme-tool is now installed.
* Fix external listing for modern keyservers.
* Minor other fixes.
Noteworthy changes in version 1.5.1 (2014-07-30) [C24/A13/R0]
-------------------------------------------------------------
* Fixed possible overflow in gpgsm and uiserver engines.
[CVE-2014-3564]
* Added support for GnuPG 2.1's --with-secret option.
* Interface changes relative to the 1.5.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPGME_KEYLIST_MODE_WITH_SECRET NEW.
Noteworthy changes in version 1.5.0 (2014-05-21) [C23/A12/R0]
-------------------------------------------------------------
* On Unices the engine file names are not not anymore hardwired but
located via the envvar PATH. All options to set the name of the
engines for the configure run are removed.
* If GPGME finds the gpgconf binary it defaults to using gpg2 or
whatever gpgconf tells as name for the OpenPGP engine. If gpgconf
is not found, GPGME looks for an engine named "gpg".
* New feature to use the gpgme I/O subsystem to run arbitrary
commands.
* New flag to use encryption without the default compression step.
* New function to access "gpg-conf --list-dirs"
* New configure option --enable-fixed-path for use by Android.
* Support ECC algorithms.
* Interface changes relative to the 1.4.3 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_get_dirinfo NEW.
gpgme_op_spawn_start NEW.
gpgme_op_spawn NEW.
GPGME_PROTOCOL_SPAWN NEW.
GPGME_SPAWN_DETACHED NEW.
GPGME_SPAWN_ALLOW_SET_FG NEW.
GPGME_ENCRYPT_NO_COMPRESS NEW.
GPGME_PK_ECC NEW.
GPGME_MD_SHA224 NEW.
gpgme_subkey_t EXTENDED: New field curve.
GPGME_STATUS_PLAINTEXT_LENGTH NEW.
GPGME_STATUS_MOUNTPOINT NEW.
GPGME_STATUS_PINENTRY_LAUNCHED NEW.
GPGME_STATUS_ATTRIBUTE NEW.
GPGME_STATUS_BEGIN_SIGNING NEW.
GPGME_STATUS_KEY_NOT_CREATED NEW.
Noteworthy changes in version 1.4.3 (2013-08-12) [C22/A11/R0]
-------------------------------------------------------------
* The default engine names are now taken from the output of gpgconf.
If gpgconf is not found the use of gpg 1 is assumed.
* Under Windows the default engines names are first searched in the
installation directory of the gpgme DLL.
* New function gpgme_data_identify to detect the type of a message.
* Interface changes relative to the 1.4.2 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_signers_count NEW.
gpgme_data_type_t NEW.
gpgme_data_identify NEW.
Noteworthy changes in version 1.4.2 (2013-05-28) [C21/A10/R0]
-------------------------------------------------------------
* Allow symmetric encryption with gpgme_op_encrypt_sign.
* Fixed mismatching off_t definitions on Windows.
* Interface changes relative to the 1.4.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_off_t NEW.
gpgme_size_t NEW.
GPGME_PROTOCOL_OPENPGP NEW alias.
Noteworthy changes in version 1.4.1 (2013-05-01) [C20/A9/R1]
------------------------------------------------------------
* Fixed reading of gpg.conf files with excessive use of the group
option.
* Fixed building with the i686-w64-mingw32 toolchain.
* Disabled FD passing by default for Apple.
Noteworthy changes in version 1.4.0 (2013-02-26) [C20/A9/R0]
------------------------------------------------------------
* New function gpgme_set_global_flag to help debugging on Android.
* New function gpgme_io_writen as a convenience wrapper around
gpgme_io_write.
* New functions to support the pinentry mode feature of GnuPG 2.1.
* New macro GPGME_VERSION_NUMBER to allow supporting different API
versions without the need for a configure test.
* Several improvements for gpgme-tool.
* Better logging of the common "invalid engine" error code.
* Support for FD passing is now enabled by default. The configure
option --disable-fd-passing may be used to disable this.
* Interface changes relative to the 1.3.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPGME_VERSION_NUMBER NEW.
gpgme_io_writen NEW.
gpgme_set_global_flag NEW.
gpgme_set_pinentry_mode NEW.
gpgme_get_pinentry_mode NEW.
gpgme_pinentry_mode_t NEW.
GPGME_PINENTRY_MODE_DEFAULT NEW.
GPGME_PINENTRY_MODE_ASK NEW.
GPGME_PINENTRY_MODE_CANCEL NEW.
GPGME_PINENTRY_MODE_ERROR NEW.
GPGME_PINENTRY_MODE_LOOPBACK NEW.
Noteworthy changes in version 1.3.2 (2012-05-02)
------------------------------------------------
* Remove support for libgpgme-pth. As far as we know, this was never used,
and GnuPG is going to use our own npth in the future.
* Fix signature summary information for a missing X.509 key.
* Fix parsing of dates >= year 2038.
Noteworthy changes in version 1.3.1 (2011-06-16)
------------------------------------------------
* Ported to Windows CE.
* Detect GPG versions not supporting ---passwd.
* Interface changes relative to the 1.3.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPGME_EXPORT_MODE_MINIMAL NEW
GPGME_STATUS_SUCCESS NEW
gpgme_err_code_from_syserror NEW
gpgme_err_set_errno NEW
gpgme_error_from_errno CHANGED: Return gpgme_error_t (compatible type).
gpgme_error_from_syserror NEW
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.3.0 (2010-01-11)
------------------------------------------------
* GPGME does not come with an internal libassuan version anymore.
The external libassuan 1.1.0 release or later is required. For
application programmers on systems that can resolve inter-library
dependencies at runtime, this is a transparent change.
* New engine GPGME_PROTOCOL_G13 to support the new g13 tool.
* New engine GPGME_PROTOCOL_UISERVER to support UI Servers.
* New API to change the passphrase of a key.
* Interface changes relative to the 1.2.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPGME_STATUS_INV_SGNR NEW.
GPGME_STATUS_NO_SGNR NEW.
GPGME_PROTOCOL_G13 NEW.
gpgme_op_g13_mount NEW.
gpgme_g13_result_t NEW.
GPGME_PK_ECDSA NEW.
GPGME_PK_ECDH NEW.
gpgme_op_passwd_start NEW.
gpgme_op_passwd NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.2.0 (2009-06-18)
------------------------------------------------
* New encryption flag GPGME_ENCRYPT_NO_ENCRYPT_TO to disable default
recipients.
* gpgme_new will fail if gpgme_check_version was not called, or a
selftest failed (for example, if -mms-bitfields was not used on
MingW32 targets).
* New functions gpgme_io_read and gpgme_io_write for use with
gpgme_passphrase_cb_t and gpgme_edit_cb_t functions.
* New functions gpgme_result_ref and gpgme_result_unref to detach
result structures from a context.
* New functions gpgme_op_export_keys_start and gpgme_op_export_keys
that allow to specify exported keys through gpgme_key_t objects
instead of patterns.
* New mode of operation gpgme_export_mode_t that allows exporting
external keys.
* Interface changes relative to the 1.1.7 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GPGME_KEYLIST_MODE_EPHEMERAL NEW.
GPGME_PROTOCOL_ASSUAN NEW.
gpgme_assuan_data_cb_t NEW.
gpgme_assuan_inquire_cb_t NEW.
gpgme_assuan_status_cb_t NEW.
gpgme_op_assuan_transact_start NEW.
gpgme_op_assuan_transact NEW.
gpgme_op_assuan_result NEW.
gpgme_op_import_keys NEW.
gpgme_op_import_keys_start NEW.
gpgme_subkey_t EXTENDED: New fields is_cardkey, card_number.
GPGME_ENCRYPT_NO_ENCRYPT_TO NEW.
gpgme_check_version CHANGED: Is now a macro.
gpgme_new EXTENDED: More failure codes.
gpgme_io_read NEW.
gpgme_io_write NEW.
gpgme_result_ref NEW.
gpgme_result_unref NEW.
gpgme_export_mode_t NEW.
gpgme_export_ext_start EXTENDED: Arg RESERVED is now a MODE flag.
gpgme_op_export EXTENDED: Arg RESERVED is now a MODE flag.
gpgme_op_export_ext_start EXTENDED: Arg RESERVED is now a MODE flag.
gpgme_op_export_ext EXTENDED: Arg RESERVED is now a MODE flag.
gpgme_op_export_keys_start NEW.
gpgme_op_export_keys NEW.
GPGME_DATA_ENCODING_URL NEW.
GPGME_DATA_ENCODING_URL0 NEW.
GPGME_DATA_ENCODING_URLESC NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.1.8 (2008-12-08)
------------------------------------------------
* SIGPIPE is now again ignored as described in the manual. Fixes
regression introduced with 1.1.6.
Noteworthy changes in version 1.1.7 (2008-10-17)
------------------------------------------------
* Using GPGME_KEYLIST_MODE_LOCAL combined with
GPGME_KEYLIST_MODE_EXTERN is now supported; it uses the
--locate-keys feature of gpg (>= 2.0.10).
* The encoding of gpgme_data_t objects can affect the output encoding
of export, sign and encrypt operations now (the same operations
that are also affected by the ASCII mode switch). We believe this
change in the ABI is innocent enough not to break existing
applications (it only affects the S/MIME backend on certain
operations).
* The reference manual now includes the specification of "The GnuPG
UI Server protocol".
* A new function gpgme_cancel_async can be used to asynchronously
cancel any pending operation at any time, from any thread.
* Interface changes relative to the 1.1.6 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_op_encrypt CHANGED: Output encoding can affect result.
gpgme_op_encrypt_start CHANGED: Output encoding can affect result.
gpgme_op_encrypt_sign CHANGED: Output encoding can affect result.
gpgme_op_encrypt_sign_start CHANGED: Output encoding can affect result.
gpgme_op_sign CHANGED: Output encoding can affect result.
gpgme_op_sign_start CHANGED: Output encoding can affect result.
gpgme_op_export CHANGED: Output encoding can affect result.
gpgme_op_export_start CHANGED: Output encoding can affect result.
gpgme_op_export_ext CHANGED: Output encoding can affect result.
gpgme_op_export_ext_start CHANGED: Output encoding can affect result.
gpgme_cancel_async NEW
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.1.6 (2008-01-04)
------------------------------------------------
* Bug fixes for for W32.
* A new, experimental (and thus undocumented and potentially
unstable) interface for accessing gpg-conf through GPGME has been
added.
* Interface changes relative to the 1.1.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_signature_t EXTENDED: New field chain_model.
gpgme_op_getauditlog_start NEW.
gpgme_op_getauditlog NEW.
GPGME_AUDITLOG_HTML NEW.
GPGME_AUDITLOG_WITH_HELP NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.1.5 (2007-07-09)
------------------------------------------------
* Bug and portability fixes (mainly for W32).
Noteworthy changes in version 1.1.4 (2007-03-05)
------------------------------------------------
* Detect and bail out on double plaintext messages. This is required
so that applications can properly detect the signed parts of a
message. Actual there is now a double protection as GnuPG 1.4.7
will detect this case too.
Noteworthy changes in version 1.1.3 (2007-01-29)
------------------------------------------------
* Fixed a memory leak in gpgme_data_release_and_get_mem.
* Fixed a bug in Windows command line quoting.
Noteworthy changes in version 1.1.2 (2006-03-02)
------------------------------------------------
* Fixed a bug in the W32 glib backend.
Noteworthy changes in version 1.1.1 (2006-02-23)
------------------------------------------------
* Fixed a bug in that the fingerprints of subkeys are not available.
* Clarified usage of the SECRET flag in key listings. It is now
reset for stub keys.
* Reading signature notations and policy URLs on key signatures is
supported. They can be found in the new field notations of the
gpgme_key_sig_t structure. This has to be enabled with the keylist
mode flag GPGME_KEYLIST_MODE_SIG_NOTATIONS.
* A new gpgme_free() function solves the problem of using different
allocators in a single program. This function should now be used
instead calling free() to release the buffer returned by
gpgme_data_release_and_get_mem. It is recommended that you always
do this, but it is only necessary on certain platforms, so backwards
compatibility is provided. In other words: If free() worked for
you before, it will keep working.
* New status codes GPGME_PKA_TRUST_GOOD and GPGME_PKA_TRUST_BAD.
They are analyzed by the verify handlers and made available in the
new PKA_TRUST and PKA_ADDRESS fields of the signature result structure.
* Interface changes relative to the 1.1.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgme_key_sig_t EXTENDED: New field notations.
GPGME_KEYLIST_MODE_SIG_NOTATIONS NEW
gpgme_free NEW
GPGME_STATUS_PKA_TRUST_BAD NEW
GPGME_STATUS_PKA_TRUST_GOOD NEW
gpgme_signature_t EXTENDED: New field pka_trust.
gpgme_signature_t EXTENDED: New field pka_address.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.1.0 (2005-10-01)
------------------------------------------------
* You can now configure the backend engine file name and home
directory to be used, as default and per context.
* Information about the recipients of an encrypted text is now
available at decryption time.