* agent.h: Add a callback function to the pin_entry_info structure.
[gnupg.git] / agent / ChangeLog
1 2002-06-17  Werner Koch  <wk@gnupg.org>
2
3         * agent.h: Add a callback function to the pin_entry_info structure.
4         * query.c (agent_askpin): Use the callback to check for a correct
5         PIN.  Removed the start_err_text argument becuase it is not
6         anymore needed; changed callers.
7         * findkey.c (unprotect): Replace our own check loop by a callback.
8         (try_unprotect_cb): New.
9         * genkey.c (reenter_compare_cb): New.
10         (agent_genkey): Use this callback here.  Fixed setting of the pi2
11         variable and a segv in case of an empty PIN.
12
13         * divert-scd.c (getpin_cb): Removed some unused stuff and
14         explained what we still have to change.
15
16 2002-06-12  Werner Koch  <wk@gnupg.org>
17
18         * gpg-agent.c (main): New option --disable-pth.
19
20 2002-06-11  Werner Koch  <wk@gnupg.org>
21
22         * protect-tool.c: Add command --show-keygrip
23         (show_keygrip): New.
24
25 2002-05-23  Werner Koch  <wk@gnupg.org>
26
27         * call-scd.c: Seirialized all scdaeom access when using Pth.
28
29         * cache.c: Made the cache Pth-thread-safe.
30         (agent_unlock_cache_entry): New.
31         * findkey.c (unprotect): Unlock the returned cache value.
32         * command.c (cmd_get_passphrase): Ditto.
33
34         * gpg-agent.c (main): Register pth_read/write with Assuan.
35
36 2002-05-22  Werner Koch  <wk@gnupg.org>
37
38         * query.c: Serialized all pinentry access when using Pth.
39
40         * gpg-agent.c (handle_signal,start_connection_thread)
41         (handle_connections): New
42         (main): Use the new Pth stuff to allow concurrent connections.
43         * command.c (start_command_handler): Add new arg FD so that the
44         fucntion can also be used for an already connected socket.
45         * Makefile.am: Link with Pth.
46
47 2002-05-14  Werner Koch  <wk@gnupg.org>
48
49         * cache.c (housekeeping, agent_put_cache): Use our time() wrapper.
50
51 2002-04-26  Werner Koch  <wk@gnupg.org>
52
53         * cache.c (agent_put_cache): Reinitialize the creation time and
54         the ttl when reusing a slot.
55
56         * call-scd.c (start_scd): Print debug messages only with debug
57         flags set.
58         * query.c (start_pinentry): Ditto.
59
60 2002-04-25  Marcus Brinkmann  <marcus@g10code.de>
61
62         * agent.h (agent_get_confirmation): Replace paramter prompt with
63         two parameters ok and cancel.
64         * query.c (agent_get_confirmation): Likewise.  Implement this.
65         * trustlist.c (agent_marktrusted): Fix invocation of
66         agent_get_confirmation.
67         * divert-scd.c (ask_for_card): Likewise.
68
69 2002-04-24  Marcus Brinkmann  <marcus@g10code.de>
70
71         * agent.h (struct opt): Add members display, ttyname, ttytype,
72         lc_ctype, and lc_messages.
73         * gpg-agent.c (enum cmd_and_opt_values): Add oDisplay, oTTYname,
74         oTTYtype, oLCctype, and LCmessages.
75         (main): Handle these options.
76         * command.c (option_handler): New function.
77         (register_commands): Register option handler.
78         * query.c (start_pinentry): Pass the various display and tty
79         options to the pinentry.
80
81 2002-04-05  Werner Koch  <wk@gnupg.org>
82
83         * protect-tool.c (show_file): New.  Used as default action.
84
85 2002-03-28  Werner Koch  <wk@gnupg.org>
86
87         * divert-scd.c (encode_md_for_card): Don't do the pkcs-1 padding,
88         the scdaemon should take care of it.
89         (ask_for_card): Hack to not display the trailing zero.
90
91 2002-03-11  Werner Koch  <wk@gnupg.org>
92
93         * learncard.c (kpinfo_cb): Remove the content restrictions from
94         the keyID.
95
96 2002-03-06  Werner Koch  <wk@gnupg.org>
97
98         * learncard.c: New.
99         * divert-scd.c (ask_for_card): The serial number is binary so
100         convert it to hex here.
101         * findkey.c (agent_write_private_key): New.
102         * genkey.c (store_key): And use it here.
103         
104         * pkdecrypt.c (agent_pkdecrypt): Changed the way the diversion is done.
105         * divert-scd.c (divert_pkdecrypt): Changed interface and
106         implemented it.
107
108 2002-03-05  Werner Koch  <wk@gnupg.org>
109
110         * call-scd.c (inq_needpin): New.
111         (agent_card_pksign): Add getpin_cb args.
112         (agent_card_pkdecrypt): New.
113
114 2002-03-04  Werner Koch  <wk@gnupg.org>
115
116         * pksign.c (agent_pksign): Changed how the diversion is done.
117         * divert-scd.c (divert_pksign): Changed interface and implemented it.
118         (encode_md_for_card): New.
119         * call-scd.c (agent_card_pksign): New.
120
121 2002-02-28  Werner Koch  <wk@gnupg.org>
122
123         * pksign.c (agent_pksign): Detect whether a Smartcard is to be
124         used and divert the operation in this case.
125         * pkdecrypt.c (agent_pkdecrypt): Likewise
126         * findkey.c (agent_key_from_file): Add optional arg shadow_info
127         and have it return information about a shadowed key.
128         * protect.c (agent_get_shadow_info): New.
129
130         * protect.c (snext,sskip,smatch): Moved to
131         * sexp-parse.h: new file.
132         * divert-scd.c: New.
133         
134 2002-02-27  Werner Koch  <wk@gnupg.org>
135
136         * protect.c (agent_shadow_key): New.
137
138         * command.c (cmd_learn): New command LEARN.
139         * gpg-agent.c: New option --scdaemon-program.
140         * call-scd.c (start_scd): New. Based on query.c
141         * query.c: Add 2 more arguments to all uses of assuan_transact.
142
143 2002-02-18  Werner Koch  <wk@gnupg.org>
144
145         * findkey.c (unprotect): Show an error message for a bad passphrase.
146
147         * command.c (cmd_marktrusted): Implemented.
148         * trustlist.c (agent_marktrusted): New.
149         (open_list): Add APPEND arg.
150
151         * query.c (agent_get_confirmation): New.
152
153 2002-02-06  Werner Koch  <wk@gnupg.org>
154
155         * cache.c (housekeeping): Fixed linking in the remove case.
156
157 2002-02-01  Werner Koch  <wk@gnupg.org>
158
159         * gpg-agent.c: New option --default-cache-ttl.
160         * cache.c (agent_put_cache): Use it.
161         
162         * cache.c: Add a few debug outputs.
163
164         * protect.c (agent_private_key_type): New.
165         * agent.h: Add PRIVATE_KEY_ enums.
166         * findkey.c (agent_key_from_file): Use it to decide whether we
167         have to unprotect a key.
168         (unprotect): Cache the passphrase.
169         
170         * findkey.c (agent_key_from_file,agent_key_available): The key
171         files do now require a ".key" suffix to make a script's life
172         easier. 
173         * genkey.c (store_key): Ditto.
174
175 2002-01-31  Werner Koch  <wk@gnupg.org>
176
177         * genkey.c (store_key): Protect the key.
178         (agent_genkey): Ask for the passphrase.
179         * findkey.c (unprotect): Actually unprotect the key.
180         * query.c (agent_askpin): Add an optional start_err_text. 
181
182 2002-01-30  Werner Koch  <wk@gnupg.org>
183
184         * protect.c: New.  
185         (hash_passphrase): Based on the GnuPG 1.0.6 version.
186         * protect-tool.c: New
187
188 2002-01-29  Werner Koch  <wk@gnupg.org>
189
190         * findkey.c (agent_key_available): New.
191         * command.c (cmd_havekey): New.
192         (register_commands): And register new command.
193
194 2002-01-20  Werner Koch  <wk@gnupg.org>
195
196         * command.c (cmd_get_passphrase): Remove the plus signs.
197
198         * query.c (start_pinentry): Send no-grab option to pinentry
199         * gpg-agent.c (main): Move variable grab as no_grab to agent.h.
200
201 2002-01-19  Werner Koch  <wk@gnupg.org>
202
203         * gpg-agent.c (main): Disable core dumps.
204
205         * cache.c: New.
206         * command.c (cmd_get_passphrase): Use the cache.
207         (cmd_clear_passphrase): Ditto.
208
209         * gpg-agent.c:  Removed unused cruft and implement the socket
210         based server.
211         (my_strusage): Take bug report address from configure.ac.
212         * command.c (start_command_handler): Add an argument to start as
213         regular server.
214         (start_command_handler): Enable Assuan logging.
215
216 2002-01-15  Werner Koch  <wk@gnupg.org>
217
218         * trustlist.c: New.
219         * command.c (cmd_istrusted, cmd_listtrusted, cmd_marktrusted): New.
220
221 2002-01-07  Werner Koch  <wk@gnupg.org>
222
223         * genkey.c: Store the secret part and return the public part.
224
225 2002-01-03  Werner Koch  <wk@gnupg.org>
226
227         * command.c (cmd_get_passphrase): New.
228         (cmd_clear_passphrase): New.
229         * query.c (agent_get_passphrase): New.
230
231 2002-01-02  Werner Koch  <wk@gnupg.org>
232
233         * genkey.c: New.
234         * command.c (cmd_genkey): New.
235
236         * command.c (rc_to_assuan_status): Removed and changed all callers
237         to use map_to_assuan_status.
238         
239 2001-12-19  Werner Koch  <wk@gnupg.org>
240
241         * keyformat.txt: New. 
242
243 2001-12-19  Marcus Brinkmann  <marcus@g10code.de>
244
245         * query.c (start_pinentry): Add new argument to assuan_pipe_connect.
246
247 2001-12-18  Werner Koch  <wk@gnupg.org>
248
249         * Makefile.am: Use LIBGCRYPT macros
250
251 2001-12-14  Werner Koch  <wk@gnupg.org>
252
253         * gpg-agent.c (main): New option --batch.  New option --debug-wait
254         n, so that it is possible to attach gdb when used in server mode.
255         * query.c (agent_askpin): Don't ask in batch mode.
256
257         * command.c: Removed the conversion macros as they are now in
258         ../common/util.h.
259
260 2001-12-14  Marcus Brinkmann  <marcus@g10code.de>
261
262         * query.c (LINELENGTH): Removed.
263         (agent_askpin): Use ASSUAN_LINELENGTH, not LINELENGTH.
264
265 2001-11-19  Werner Koch  <wk@gnupg.org>
266
267         * gpg-agent.c: Removed all GUI code, removed code for old
268         protocol.  New code to use the Assuan protocol as a server and
269         also to communicate with a new ask-passphrase utility.
270
271 2000-11-22  Werner Koch  <wk@gnupg.org>
272
273         * gpg-agent.c (main): csh support by Dan Winship, new options --sh
274         and --csh and set default by consulting $SHELL.
275
276 Mon Aug 21 17:59:17 CEST 2000  Werner Koch  <wk@openit.de>
277
278         * gpg-agent.c (passphrase_dialog): Cleanup the window and added the
279         user supplied text to the window.
280         (main): Fixed segv in gtk_init when used without a command to start.
281
282         * gpg-agent.c: --flush option.
283         (req_flush): New.
284         (req_clear_passphrase): Implemented.
285
286 Fri Aug 18 14:27:14 CEST 2000  Werner Koch  <wk@openit.de>
287
288         * gpg-agent.c: New.
289         * Makefile.am: New.
290
291
292  Copyright 2001, 2002 Free Software Foundation, Inc.
293
294  This file is free software; as a special exception the author gives
295  unlimited permission to copy and/or distribute it, with or without
296  modifications, as long as this notice is preserved.
297
298  This file is distributed in the hope that it will be useful, but
299  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
300  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.