9f1f83ba5f7ceb324fe0c90d275582c587d29724
[gpgme.git] / gpgme / ChangeLog
1 2001-03-13  Werner Koch  <wk@gnupg.org>
2
3         * context.h: Add invalid and revoke flags to user_id structure.
4         * keylist.c (gpgme_op_keylist_start): Use --fixed-list-mode.
5         (keylist_colon_handler): Adjust for that.
6         (set_userid_flags): New. 
7         (set_mainkey_trust_info): Handle new key invalid flag
8         (set_subkey_trust_info): Ditto.
9         * gpgme.h: Add new attributes for key and user ID flags.
10         * key.c (_gpgme_key_append_name): Init these flags
11         (gpgme_key_get_as_xml): Print them.
12         (one_uid_as_xml): New helper for above.
13         (gpgme_key_get_string_attr, gpgme_key_get_ulong_attr):
14         Return the new attributes.  Enhanced, so that subkey information
15         can be returned now.
16
17 2001-02-28  Werner Koch  <wk@gnupg.org>
18
19         * w32-io.c (destroy_reader): Set sop_me flag.
20         (writer,create_writer,destroy_writer,find_writer,kill_writer): New.
21         (_gpgme_io_write): Use a writer thread to avaoid blocking.
22         (_gpgme_io_close): Cleanup a writer thread
23         (_gpgme_io_select): Repalce tthe faked wait on writing by a real
24         waiting which is now possible due to the use of a writer thread.
25
26 2001-02-20  Werner Koch  <wk@gnupg.org>
27
28         * w32-io.c (destroy_reader,kill_reader): New. 
29         (create_reader, reader): Add a new event to stop the thread.
30         (_gpgme_io_close): Kill the reader thread.
31
32         * posix-io.c (_gpgme_io_select): Handle frozen fds here. 
33         * 32-io.c (_gpgme_io_select): Ditto. Removed a bunch of unused code.
34
35         * wait.c: Reworked the whole thing.
36         * rungpg.c (_gpgme_gpg_new): Init pid to -1.
37         (_gpgme_gpg_release): Remove the process from the wait queue.
38
39 2001-02-19  Werner Koch  <wk@gnupg.org>
40
41         * w32-io.c (_gpgme_io_set_close_notify): New.
42         (_gpgme_io_close): Do the notification.
43
44         * posix-io.c (_gpgme_io_select): Use a 1 sec timeout and not 200
45         microseconds.
46
47         * wait.c (remove_process): Don't close the fd here.
48         (do_select): Set the fd to -1 and remove the is_closed flag everywhere.
49         (_gpgme_wait_on_condition): Remove the assert on the queue and
50         break out if we could not find the queue.  The whole thing should
51         be reworked.
52
53         * posix-io.c (_gpgme_io_set_close_notify): New.
54         (_gpgme_io_close): Do the notification.
55
56         * rungpg.c (close_notify_handler): New. 
57         (_gpgme_gpg_new): Register a callback for the fd.
58         (_gpgme_gpg_set_colon_line_handler): Ditto.
59         (build_argv): Ditto
60
61 2001-02-13  Werner Koch  <wk@gnupg.org>
62
63         * rungpg.c (struct reap_s): Replaced pid_t by int.
64
65         * types.h: Add ulong typedef.
66
67         * rungpg.c (do_reaping,_gpgme_gpg_housecleaning): New.
68         (_gpgme_gpg_release): Reap children.
69         * io.h, posix-io.c (_gpgme_io_kill): New.
70         * w32-io.c (_gpgme_io_kill): New (dummy).
71
72         * keylist.c (gpgme_op_keylist_start): Cancel a pending request.
73
74         * posix-io.c (_gpgme_io_read): Add some debug output. 
75         (_gpgme_io_write): Ditto.
76         (_gpgme_io_select): Increased the timeout.
77
78 2001-02-12  Werner Koch  <wk@gnupg.org>
79
80         Enhanced the signature verification, so that it can how handle
81         more than one signature and is able to return more information on 
82         the signatures.
83         * verify.c (gpgme_get_sig_key): New.
84         (gpgme_get_sig_status): New.
85
86         * gpgme.h: Add stdio.h. 
87         (GpgmeSigStat): New status DIFF.
88
89 2001-02-01  Werner Koch  <wk@gnupg.org>
90
91         * w32-io.c (set_synchronize): Add EVENT_MODIFY_STATE.  Add Debug
92         code to all Set/ResetEvent().
93
94         * rungpg.c (read_status): Check for end of stream only if we have
95         an r.  By Timo.
96
97 2001-01-31  Werner Koch  <wk@gnupg.org>
98
99         * wait.c (_gpgme_wait_on_condition): Removed all exit code processing.
100         (propagate_term_results,clear_active_fds): Removed.
101         (count_active_fds): Renamed to .. 
102         (count_active_and_thawed_fds): .. this and count only thawed fds. 
103
104         * rungpg.c (gpg_colon_line_handler): Return colon.eof and not
105         status.eof ;-)
106
107 2001-01-30  Werner Koch  <wk@gnupg.org>
108
109         * w32-io.c (_gpgme_io_spawn): Use the supplied path arg.
110
111         * version.c (get_engine_info): Return better error information.
112
113         * posix-util.c, w32-util.c: New.
114         (_gpgme_get_gpg_path): New, suggested by Jan-Oliver.
115         * rungpg.c (_gpgme_gpg_spawn): Use new function to get GPG's path.
116
117         * signers.c (gpgme_signers_add): Ooops, one should test code and
118         not just write it; the newarr was not assigned.  Thanks to José
119         for pointing this out.  Hmmm, still not tested, why shoudl a coder
120         test his fix :-)
121
122         * w32-io.c: Does now use reader threads, so that we can use
123         WaitForMultipleObjects. 
124         * sema.h, posix-sema.c, w32-sema.c: Support for Critcial sections.
125         Does currently only work for W32.
126
127         * debug.c, util.h : New. Changed all fprintfs to use this new
128         set of debugging functions.
129
130 2001-01-23  Werner Koch  <wk@gnupg.org>
131
132         * data.c (_gpgme_data_release_and_return_string): Fixed string
133         termination.
134
135 2001-01-22  Werner Koch  <wk@gnupg.org>
136
137         * delete.c: New.
138
139         * signers.c: New.
140         * key.c (gpgme_key_ref, gpgme_key_unref): New.
141         * sign.c (gpgme_op_sign_start): Allow the use of other keys.
142
143         * version.c (gpgme_get_engine_info,gpgme_check_engine): New.
144         * rungpg.c (_gpgme_gpg_set_simple_line_handler): New.
145
146 2001-01-05  Werner Koch  <wk@gnupg.org>
147
148         * data.c (gpgme_data_rewind): Allow to rewind data_type_none.