f63ae88a1f6d7860c7e4d14cded11db5df0646e0
[gnupg.git] / agent / ChangeLog
1 2004-04-21  Werner Koch  <wk@gnupg.org>
2
3         * call-scd.c (start_scd): Send event-signal option. Always check
4         that the scdaemon is still running.
5
6         * gpg-agent.c (handle_signal): Do not use SIGUSR{1,2} anymore for
7         changing the verbosity.
8
9 2004-04-16  Werner Koch  <wk@gnupg.org>
10
11         * gpg-agent.c (main): Tell the logging code taht we are runnign
12         detached.
13
14 2004-04-06  Werner Koch  <wk@gnupg.org>
15
16         * gpg-agent.c (main): Use new libgcrypt thread library register
17         scheme.
18
19 2004-03-23  Marcus Brinkmann  <marcus@g10code.de>
20
21         * gpg-agent.c (main): For now, always print the default config
22         file name for --gpgconf-list.
23
24 2004-03-17  Werner Koch  <wk@gnupg.org>
25
26         * gpg-agent.c (main) <gpgconf>: Fixed default value quoting.
27
28 2004-03-16  Werner Koch  <wk@gnupg.org>
29
30         * gpg-agent.c (parse_rereadable_options): Use the new
31         DEFAULT_CACHE_TTL macro.
32         (main): Updated --gpgconf-list output.
33
34 2004-02-21  Werner Koch  <wk@gnupg.org>
35
36         * command.c (cmd_passwd): Take acount of a key description.
37
38         * genkey.c (reenter_compare_cb): Do not set the error text.
39         (agent_protect_and_store, agent_genkey): Force a re-enter after a
40         non-matching passphrase.
41         * query.c (agent_askpin): Add new arg INITIAL_ERRTEXT; changed
42         all callers.
43
44 2004-02-19  Werner Koch  <wk@gnupg.org>
45
46         * protect-tool.c: New options --have-cert and --prompt.
47         (export_p12_file): Read a certificate from STDIN and pass it to
48         p12_build.  Detect a keygrip and construct the filename in that
49         case.  Unprotcet a key if needed.  Print error messages for key
50         formats we can't handle.
51         (release_passphrase): New.
52         (get_passphrase): New arg PROMPTNO. Return the allocated
53         string. Changed all callers.
54
55         * minip12.c: Revamped the build part.
56         (p12_build): New args CERT and CERTLEN.  
57
58 2004-02-18  Werner Koch  <wk@gnupg.org>
59
60         * protect-tool.c (main): Setup the used character set.
61         * gpg-agent.c (main): Ditto.
62
63         * gpg-agent.c (set_debug): New.  New option --debug-level.
64         (main): New option --gpgconf-list.
65
66 2004-02-17  Werner Koch  <wk@gnupg.org>
67
68         * pksign.c (do_encode_md): Cleaned up by using gcry_sexp_build.
69
70         * Makefile.am (gpg_protect_tool_SOURCES): Removed
71         simple-pwquery.[ch], as we once moved it to ../common.
72
73 2004-02-13  Werner Koch  <wk@gnupg.org>
74
75         * command.c (cmd_setkeydesc): New.
76         (register_commands): Add command SETKEYDESC.
77         (cmd_pksign, cmd_pkdecrypt): Use the key description.
78         (reset_notify): Reset the description.
79         * findkey.c (unprotect): Add arg DESC_TEXT.
80         (agent_key_from_file): Ditto.
81         * pksign.c (agent_pksign): Ditto.
82         * pkdecrypt.c (agent_pkdecrypt): Ditto. Made CIPHERTEXT an
83         unsigned char*.
84
85         * protect-tool.c (main): New options --no-fail-on-exist, --homedir.
86         (store_private_key): Use them here.
87
88 2004-02-12  Werner Koch  <wk@gnupg.org>
89
90         * protect-tool.c (read_file, main): Allow reading from stdin.
91
92         * Makefile.am: Include cmacros.am for common flags.
93         (libexec_PROGRAMS): Put gpg-protect-tool there.
94
95 2004-02-10  Werner Koch  <wk@gnupg.org>
96
97         * minip12.c (parse_bag_encrypted_data): Finished implementation.
98         (p12_parse): Add callback args.
99         * protect-tool.c (import_p12_cert_cb): New.
100         (import_p12_file): Use it.
101
102 2004-02-06  Werner Koch  <wk@gnupg.org>
103
104         * minip12.c (crypt_block): Add arg CIPHER_ALGO; changed all callers.
105         (set_key_iv): Add arg KEYBYTES; changed caller.
106
107 2004-02-03  Werner Koch  <wk@gnupg.org>
108
109         * findkey.c (agent_key_from_file): Extra paranoid wipe.
110         * protect.c (agent_unprotect): Ditto.
111         (merge_lists): Ditto. Add arg RESULTLEN.
112         * pkdecrypt.c (agent_pkdecrypt): Don't show the secret key even in
113         debug mode.
114
115         * protect.c: Add DSA and Elgamal description.
116
117 2004-01-29  Werner Koch  <wk@gnupg.org>
118
119         * agent.h (server_control_s): Add connection_fd field.
120         * command.c (start_command_handler): Init it here.
121         * gpg-agent.c (agent_init_default_ctrl): and here.
122         * call-scd.c: Add the CTRL arg to all functions calling start_scd
123         and pass it to start_scd.  Changed all callers
124         (start_scd): Keep track of the current active connection.
125         (agent_reset_scd): New.
126         * command.c (start_command_handler): Call it here.
127         * learncard.c (agent_handle_learn): Add arg CTRL; changed caller.
128         (send_cert_back): Ditto.
129
130 2004-01-28  Werner Koch  <wk@gnupg.org>
131
132         * trustlist.c (agent_marktrusted): Check whether the trustlist is
133         writable.
134
135 2004-01-27  Werner Koch  <wk@gnupg.org>
136
137         * sexp-parse.h: Moved to ../common.
138
139 2004-01-24  Werner Koch  <wk@gnupg.org>
140
141         * call-scd.c (atfork_cb): New.
142         (start_scd): Make sure secmem gets cleared.
143         * query.c  (atfork_cb): New.
144         (start_pinentry): Make sure secmem gets cleared.
145
146 2004-01-16  Werner Koch  <wk@gnupg.org>
147
148         * findkey.c (agent_key_from_file): Now return an error code so
149         that we have more detailed error messages in the upper layers.
150         This fixes the handling of pinentry's cancel button. 
151         * pksign.c (agent_pksign): Changed accordingly.
152         * pkdecrypt.c (agent_pkdecrypt): Ditto.
153         * command.c (cmd_passwd): Ditto.
154
155 2003-12-16  Werner Koch  <wk@gnupg.org>
156
157         * gpg-agent.c (main): Set the prefixes for assuan logging.
158
159 2003-12-15  Werner Koch  <wk@gnupg.org>
160
161         * protect.c (do_encryption): Use gcry_create_nonce instad of the
162         obsolete WEAK_RANDOM.
163
164 2003-11-20  Werner Koch  <wk@gnupg.org>
165
166         * sexp-parse.h (snext): Don't use atoi_1 and digitp macros, so
167         that this file is useful by other applications too.
168
169 2003-10-27  Werner Koch  <wk@gnupg.org>
170
171         * command.c (cmd_get_confirmation): New command.
172
173 2003-08-20  Timo Schulz  <twoaday@freakmail.de>
174
175         * pksign.c (do_encode_md): Allocate enough space. Cast md
176         byte to unsigned char to prevent sign extension.
177         
178 2003-08-14  Timo Schulz  <twoaday@freakmail.de>
179
180         * pksign.c (do_encode_md): Due to the fact pkcs#1 padding
181         is now in Libgcrypt, use the new interface.
182         
183 2003-07-31  Werner Koch  <wk@gnupg.org>
184
185         * Makefile.am (gpg_agent_LDADD): Added INTLLIBS.
186         (gpg_protect_tool_SOURCES): Added simple-pwquery.[ch]
187
188 2003-07-27  Werner Koch  <wk@gnupg.org>
189
190         Adjusted for gcry_mpi_print and gcry_mpi_scan API change.
191
192 2003-07-15  Werner Koch  <wk@gnupg.org>
193
194         * simple-pwquery.c, simple-pwquery.h:  Moved to ../common.
195         * Makefile.am (gpg_protect_tool_LDADD): Add simple-pwquery.o.
196         Removed it from xx_SOURCES.
197
198 2003-07-04  Werner Koch  <wk@gnupg.org>
199
200         * gpg-agent.c (handle_connections): Kludge to allow use of Pth 1
201         and 2.
202
203 2003-06-30  Werner Koch  <wk@gnupg.org>
204
205         * call-scd.c (learn_status_cb): Store the serialno in PARM.
206
207 2003-06-26  Werner Koch  <wk@gnupg.org>
208
209         * call-scd.c (agent_card_serialno): Don't do a RESET anymore.
210
211 2003-06-25  Werner Koch  <wk@gnupg.org>
212
213         * command.c (cmd_scd): New.
214         * call-scd.c (agent_card_scd): New.
215         * divert-scd.c (divert_generic_cmd): New
216
217         * call-scd.c (agent_card_learn): New callback args SINFO.
218         (learn_status_cb): Pass all other status lines to the sinfo
219         callback.
220         * learncard.c (release_sinfo, sinfo_cb): New.
221         (agent_handle_learn): Pass the new cb to the learn function and
222         pass the collected information back to the client's assuan
223         connection.
224
225         * gpg-agent.c (main): Moved pth_init before gcry_check_version.
226
227 2003-06-24  Werner Koch  <wk@gnupg.org>
228
229         * gpg-agent.c (handle_connections): Adjusted for Pth 2.0
230
231         Adjusted for changes in the libgcrypt API. Some more fixes for the
232         libgpg-error stuff.  
233
234 2003-06-04  Werner Koch  <wk@gnupg.org>
235
236         Renamed error codes from INVALID to INV and removed _ERROR suffixes.
237
238 2003-06-03  Werner Koch  <wk@gnupg.org>
239
240         Changed all error codes in all files to the new libgpg-error scheme.
241
242         * agent.h: Include gpg-error.h and errno.h
243         * Makefile.am: Link with libgpg-error
244
245         * query.c: assuan.h is now a system header.
246         * genkey.c (agent_genkey): Fixed silly use of xmalloc by
247         xtrymalloc.
248
249 2003-04-29  Werner Koch  <wk@gnupg.org>
250
251         * command.c (register_commands): Adjusted for new Assuan semantics.
252
253         * Makefile.am: Don't override LDFLAGS.
254
255 2002-12-04  Werner Koch  <wk@gnupg.org>
256
257         * gpg-agent.c: New variable config_filename.
258         (parse_rereadable_options): New.
259         (main): Use it here.  Add setting of default values, set
260         config_filename.
261         (reread_configuration): Filled with actual code.
262
263 2002-12-03  Werner Koch  <wk@gnupg.org>
264
265         * protect-tool.c (read_key): Don't run make_canonical on a NULL
266         buffer.
267
268         * command.c (parse_hexstring): New.
269         (cmd_sethash): Use it.
270         (parse_keygrip): New.
271         (cmd_havekey, cmd_sigkey): Use it.
272         (cmd_passwd): New.
273         * genkey.c (agent_protect_and_store): New.
274         (store_key): Add arg FORCE.
275         (agent_genkey): Pass false to this force of store_key.
276
277 2002-11-13  Werner Koch  <wk@gnupg.org>
278
279         * gpg-agent.c (main): Switch all messages to utf-8.
280
281         * simple-pwquery.c (agent_send_all_options): Use $GPG_TTY and
282         stdin with ttyname.
283
284         * cache.c (new_data): Uiih - /sizeof d/sizeof *d/.
285
286 2002-11-10  Werner Koch  <wk@gnupg.org>
287
288         * command.c (option_handler): Fix keep_tty check.
289
290 2002-11-06  Werner Koch  <wk@gnupg.org>
291
292         * gpg-agent.c (main): Make sure we have a default ttyname.
293         * command.c (option_handler): Check opt.keep_tty here
294         * query.c (start_pinentry): but not anymore here.
295
296 2002-11-05  Werner Koch  <wk@gnupg.org>
297
298         * agent.h (opt,server_control_s): Move display and lc_ variables
299         to the control struct so that they are per connection.
300         * gpg-agent.c (agent_init_default_ctrl): New.
301         (main): Assign those command line options to new default_* variables.
302         Reset DISPLAY in server mode so that tehre is no implicit default.
303         * command.c (start_command_handler): Initialize and deinitialize
304         the control values.
305         (option_handler): Work on the ctrl values and not on the opt.
306         * query.c (start_pinentry): New argument CTRL to set the display
307         connection specific.  Changed all callers to pass this value.
308         (agent_askpin,agent_get_passphrase,agent_get_confirmation): Add
309         CTRL arg and pass it ot start_pinentry.
310         * command.c (cmd_get_passphrase): Pass CTRL argument.
311         * trustlist.c (agent_marktrusted):  Add CTRL argument  
312         * command.c (cmd_marktrusted): Pass CTRL argument
313         * divert-scd.c (ask_for_card):  Add CTRL arg. 
314         (divert_pksign,divert_pkdecrypt): Ditto.  Changed caller.
315         (getpin_cb): Use OPAQUE to pass the CTRL variable.  Changed both 
316         users.
317         * findkey.c (unprotect): Add CTRL arg.
318         (agent_key_from_file): Ditto.
319
320         * query.c (unlock_pinentry): Disconnect the pinentry so that we
321         start a new one for each request.  This is required to support
322         clients with different environments (e.g. X magic cookies).
323
324 2002-09-05  Neal H. Walfield  <neal@cs.uml.edu>
325
326         * gpg-agent.c (main) [USE_GNU_PTH]: No need to call
327         assuan_set_io_func as assuan is smart.
328
329 2002-09-25  Werner Koch  <wk@gnupg.org>
330
331         * gpg-agent.c (handle_signal): Flush cache on SIGHUP.
332         * cache.c (agent_flush_cache): New.
333
334         * gpg-agent.c, agent.h: Add --keep-display and --keep-tty.
335         * query.c (start_pinentry): Implement them.  The option passing
336         needs more thoughts.
337
338 2002-09-09  Werner Koch  <wk@gnupg.org>
339
340         * gpg-agent.c (create_private_keys_directory)
341         (create_directories): New.
342         (main): Try to create a home directory.
343
344 2002-09-04  Neal H. Walfield  <neal@g10code.de>
345
346         * gpg-agent.c (main): Use sigaction, not signal.
347
348 2002-09-03  Neal H. Walfield  <neal@g10code.de>
349
350         * findkey.c: Include <fcntl.h>.
351         (agent_write_private_key): Prefer POSIX compatibity, open and
352         fdopen, over the simplicity of GNU extensions, fopen(file, "x").
353
354 2002-08-22  Werner Koch  <wk@gnupg.org>
355
356         * query.c (agent_askpin): Provide the default desc text depending
357         on the pininfo.  Do the basic PIN verification only when
358         min_digits is set.
359
360 2002-08-21  Werner Koch  <wk@gnupg.org>
361
362         * query.c (agent_askpin): Hack to show the right default prompt.
363         (agent_get_passphrase): Ditto.
364
365         * trans.c: Removed and replaced all usages with standard _()
366
367         * divert-scd.c (getpin_cb): Pass a more descritive text to the
368         pinentry.
369
370         * Makefile.am: Renamed the binary protect-tool to gpg-protect-tool.
371         * protect-tool.c: Removed the note about internal use only.
372
373         * gpg-agent.c (main): New option --daemon so that the program is
374         not accidently started in the background.
375
376 2002-08-16  Werner Koch  <wk@gnupg.org>
377
378         * call-scd.c (learn_status_cb): Handle CERTINFO status.
379         (agent_card_learn): Add args for certinfo cb.
380         * learncard.c (release_certinfo,certinfo_cb): New.
381         (send_cert_back): New. With factored out code from ..
382         (agent_handle_learn): here.  Return certinfo stuff.
383
384 2002-07-26  Werner Koch  <wk@gnupg.org>
385
386         * gpg-agent.c (main): New option --ignore-cache-for-signing.
387         * command.c (option_handler): New server option
388         use-cache-for-signing defaulting to true.
389         (cmd_pksign): handle global and per session option.
390         * findkey.c (agent_key_from_file, unprotect): New arg
391         ignore_cache.  Changed all callers.
392         * pksign.c (agent_pksign): Likewise.
393
394 2002-06-29  Werner Koch  <wk@gnupg.org>
395
396         * query.c (start_pinentry): Use GNUPG_DERAULT_PINENTRY.
397         * call-scd.c (start_scd): Use GNUPG_DEFAULT_SCDAEMON.
398
399 2002-06-28  Werner Koch  <wk@gnupg.org>
400
401         * protect-tool.c (export_p12_file): New.
402         (main): New command --p12-export.
403         * minip12.c (create_final,p12_build,compute_tag_length): New.
404         (store_tag_length): New.
405
406 2002-06-27  Werner Koch  <wk@gnupg.org>
407
408         * minip12.c (crypt_block): Renamed from decrypt_block, add arg to
409         allow encryption.
410
411         * Makefile.am (pkglib_PROGRAMS): Put protect-tool there.
412
413         * findkey.c (agent_write_private_key,agent_key_from_file)
414         (agent_key_available): Use GNUPG_PRIVATE_KEYS_DIR constant.
415         * gpg-agent.c (main): Use GNUPG_DEFAULT_HOMEDIR constant.
416
417         * protect-tool.c (store_private_key): New.
418         (import_p12_file): Store the new file if requested.
419         (main): New options --force and --store.
420
421         * gpg-agent.c (main): Set a global flag when running detached.
422         * query.c (start_pinentry): Pass the list of FD to keep in the
423         child when not running detached.
424         * call-scd.c (start_scd): Ditto.
425
426 2002-06-26  Werner Koch  <wk@gnupg.org>
427
428         * command.c (cmd_istrusted, cmd_listtrusted, cmd_marktrusted)
429         (cmd_pksign, cmd_pkdecrypt, cmd_genkey, cmd_get_passphrase)
430         (cmd_learn): Print an error message for a failed operation.
431
432         * simple-pwquery.c, simple-pwquery.h: New.
433         * protect-tool. (get_passphrase): New, used to get a passphrase
434         from the agent if none was given on the command line.
435
436 2002-06-25  Werner Koch  <wk@gnupg.org>
437
438         * protect-tool.c (rsa_key_check): New.
439         (import_p12_file): New.
440         (main): New command --p12-import.
441         * minip12.c, minip12.h: New.
442
443 2002-06-24  Werner Koch  <wk@gnupg.org>
444
445         * protect-tool.c (read_file): New.
446         (read_key): Factored most code out to read_file.
447
448 2002-06-17  Werner Koch  <wk@gnupg.org>
449
450         * agent.h: Add a callback function to the pin_entry_info structure.
451         * query.c (agent_askpin): Use the callback to check for a correct
452         PIN.  Removed the start_err_text argument because it is not
453         anymore needed; changed callers.
454         * findkey.c (unprotect): Replace our own check loop by a callback.
455         (try_unprotect_cb): New.
456         * genkey.c (reenter_compare_cb): New.
457         (agent_genkey): Use this callback here.  Fixed setting of the pi2
458         variable and a segv in case of an empty PIN.
459
460         * divert-scd.c (getpin_cb): Removed some unused stuff and
461         explained what we still have to change.
462
463 2002-06-12  Werner Koch  <wk@gnupg.org>
464
465         * gpg-agent.c (main): New option --disable-pth.
466
467 2002-06-11  Werner Koch  <wk@gnupg.org>
468
469         * protect-tool.c: Add command --show-keygrip
470         (show_keygrip): New.
471
472 2002-05-23  Werner Koch  <wk@gnupg.org>
473
474         * call-scd.c: Seirialized all scdaeom access when using Pth.
475
476         * cache.c: Made the cache Pth-thread-safe.
477         (agent_unlock_cache_entry): New.
478         * findkey.c (unprotect): Unlock the returned cache value.
479         * command.c (cmd_get_passphrase): Ditto.
480
481         * gpg-agent.c (main): Register pth_read/write with Assuan.
482
483 2002-05-22  Werner Koch  <wk@gnupg.org>
484
485         * query.c: Serialized all pinentry access when using Pth.
486
487         * gpg-agent.c (handle_signal,start_connection_thread)
488         (handle_connections): New
489         (main): Use the new Pth stuff to allow concurrent connections.
490         * command.c (start_command_handler): Add new arg FD so that the
491         fucntion can also be used for an already connected socket.
492         * Makefile.am: Link with Pth.
493
494 2002-05-14  Werner Koch  <wk@gnupg.org>
495
496         * cache.c (housekeeping, agent_put_cache): Use our time() wrapper.
497
498 2002-04-26  Werner Koch  <wk@gnupg.org>
499
500         * cache.c (agent_put_cache): Reinitialize the creation time and
501         the ttl when reusing a slot.
502
503         * call-scd.c (start_scd): Print debug messages only with debug
504         flags set.
505         * query.c (start_pinentry): Ditto.
506
507 2002-04-25  Marcus Brinkmann  <marcus@g10code.de>
508
509         * agent.h (agent_get_confirmation): Replace paramter prompt with
510         two parameters ok and cancel.
511         * query.c (agent_get_confirmation): Likewise.  Implement this.
512         * trustlist.c (agent_marktrusted): Fix invocation of
513         agent_get_confirmation.
514         * divert-scd.c (ask_for_card): Likewise.
515
516 2002-04-24  Marcus Brinkmann  <marcus@g10code.de>
517
518         * agent.h (struct opt): Add members display, ttyname, ttytype,
519         lc_ctype, and lc_messages.
520         * gpg-agent.c (enum cmd_and_opt_values): Add oDisplay, oTTYname,
521         oTTYtype, oLCctype, and LCmessages.
522         (main): Handle these options.
523         * command.c (option_handler): New function.
524         (register_commands): Register option handler.
525         * query.c (start_pinentry): Pass the various display and tty
526         options to the pinentry.
527
528 2002-04-05  Werner Koch  <wk@gnupg.org>
529
530         * protect-tool.c (show_file): New.  Used as default action.
531
532 2002-03-28  Werner Koch  <wk@gnupg.org>
533
534         * divert-scd.c (encode_md_for_card): Don't do the pkcs-1 padding,
535         the scdaemon should take care of it.
536         (ask_for_card): Hack to not display the trailing zero.
537
538 2002-03-11  Werner Koch  <wk@gnupg.org>
539
540         * learncard.c (kpinfo_cb): Remove the content restrictions from
541         the keyID.
542
543 2002-03-06  Werner Koch  <wk@gnupg.org>
544
545         * learncard.c: New.
546         * divert-scd.c (ask_for_card): The serial number is binary so
547         convert it to hex here.
548         * findkey.c (agent_write_private_key): New.
549         * genkey.c (store_key): And use it here.
550         
551         * pkdecrypt.c (agent_pkdecrypt): Changed the way the diversion is done.
552         * divert-scd.c (divert_pkdecrypt): Changed interface and
553         implemented it.
554
555 2002-03-05  Werner Koch  <wk@gnupg.org>
556
557         * call-scd.c (inq_needpin): New.
558         (agent_card_pksign): Add getpin_cb args.
559         (agent_card_pkdecrypt): New.
560
561 2002-03-04  Werner Koch  <wk@gnupg.org>
562
563         * pksign.c (agent_pksign): Changed how the diversion is done.
564         * divert-scd.c (divert_pksign): Changed interface and implemented it.
565         (encode_md_for_card): New.
566         * call-scd.c (agent_card_pksign): New.
567
568 2002-02-28  Werner Koch  <wk@gnupg.org>
569
570         * pksign.c (agent_pksign): Detect whether a Smartcard is to be
571         used and divert the operation in this case.
572         * pkdecrypt.c (agent_pkdecrypt): Likewise
573         * findkey.c (agent_key_from_file): Add optional arg shadow_info
574         and have it return information about a shadowed key.
575         * protect.c (agent_get_shadow_info): New.
576
577         * protect.c (snext,sskip,smatch): Moved to
578         * sexp-parse.h: New file.
579         * divert-scd.c: New.
580         
581 2002-02-27  Werner Koch  <wk@gnupg.org>
582
583         * protect.c (agent_shadow_key): New.
584
585         * command.c (cmd_learn): New command LEARN.
586         * gpg-agent.c: New option --scdaemon-program.
587         * call-scd.c (start_scd): New. Based on query.c
588         * query.c: Add 2 more arguments to all uses of assuan_transact.
589
590 2002-02-18  Werner Koch  <wk@gnupg.org>
591
592         * findkey.c (unprotect): Show an error message for a bad passphrase.
593
594         * command.c (cmd_marktrusted): Implemented.
595         * trustlist.c (agent_marktrusted): New.
596         (open_list): Add APPEND arg.
597
598         * query.c (agent_get_confirmation): New.
599
600 2002-02-06  Werner Koch  <wk@gnupg.org>
601
602         * cache.c (housekeeping): Fixed linking in the remove case.
603
604 2002-02-01  Werner Koch  <wk@gnupg.org>
605
606         * gpg-agent.c: New option --default-cache-ttl.
607         * cache.c (agent_put_cache): Use it.
608         
609         * cache.c: Add a few debug outputs.
610
611         * protect.c (agent_private_key_type): New.
612         * agent.h: Add PRIVATE_KEY_ enums.
613         * findkey.c (agent_key_from_file): Use it to decide whether we
614         have to unprotect a key.
615         (unprotect): Cache the passphrase.
616         
617         * findkey.c (agent_key_from_file,agent_key_available): The key
618         files do now require a ".key" suffix to make a script's life
619         easier. 
620         * genkey.c (store_key): Ditto.
621
622 2002-01-31  Werner Koch  <wk@gnupg.org>
623
624         * genkey.c (store_key): Protect the key.
625         (agent_genkey): Ask for the passphrase.
626         * findkey.c (unprotect): Actually unprotect the key.
627         * query.c (agent_askpin): Add an optional start_err_text. 
628
629 2002-01-30  Werner Koch  <wk@gnupg.org>
630
631         * protect.c: New.  
632         (hash_passphrase): Based on the GnuPG 1.0.6 version.
633         * protect-tool.c: New
634
635 2002-01-29  Werner Koch  <wk@gnupg.org>
636
637         * findkey.c (agent_key_available): New.
638         * command.c (cmd_havekey): New.
639         (register_commands): And register new command.
640
641 2002-01-20  Werner Koch  <wk@gnupg.org>
642
643         * command.c (cmd_get_passphrase): Remove the plus signs.
644
645         * query.c (start_pinentry): Send no-grab option to pinentry
646         * gpg-agent.c (main): Move variable grab as no_grab to agent.h.
647
648 2002-01-19  Werner Koch  <wk@gnupg.org>
649
650         * gpg-agent.c (main): Disable core dumps.
651
652         * cache.c: New.
653         * command.c (cmd_get_passphrase): Use the cache.
654         (cmd_clear_passphrase): Ditto.
655
656         * gpg-agent.c:  Removed unused cruft and implement the socket
657         based server.
658         (my_strusage): Take bug report address from configure.ac.
659         * command.c (start_command_handler): Add an argument to start as
660         regular server.
661         (start_command_handler): Enable Assuan logging.
662
663 2002-01-15  Werner Koch  <wk@gnupg.org>
664
665         * trustlist.c: New.
666         * command.c (cmd_istrusted, cmd_listtrusted, cmd_marktrusted): New.
667
668 2002-01-07  Werner Koch  <wk@gnupg.org>
669
670         * genkey.c: Store the secret part and return the public part.
671
672 2002-01-03  Werner Koch  <wk@gnupg.org>
673
674         * command.c (cmd_get_passphrase): New.
675         (cmd_clear_passphrase): New.
676         * query.c (agent_get_passphrase): New.
677
678 2002-01-02  Werner Koch  <wk@gnupg.org>
679
680         * genkey.c: New.
681         * command.c (cmd_genkey): New.
682
683         * command.c (rc_to_assuan_status): Removed and changed all callers
684         to use map_to_assuan_status.
685         
686 2001-12-19  Werner Koch  <wk@gnupg.org>
687
688         * keyformat.txt: New. 
689
690 2001-12-19  Marcus Brinkmann  <marcus@g10code.de>
691
692         * query.c (start_pinentry): Add new argument to assuan_pipe_connect.
693
694 2001-12-18  Werner Koch  <wk@gnupg.org>
695
696         * Makefile.am: Use LIBGCRYPT macros
697
698 2001-12-14  Werner Koch  <wk@gnupg.org>
699
700         * gpg-agent.c (main): New option --batch.  New option --debug-wait
701         n, so that it is possible to attach gdb when used in server mode.
702         * query.c (agent_askpin): Don't ask in batch mode.
703
704         * command.c: Removed the conversion macros as they are now in
705         ../common/util.h.
706
707 2001-12-14  Marcus Brinkmann  <marcus@g10code.de>
708
709         * query.c (LINELENGTH): Removed.
710         (agent_askpin): Use ASSUAN_LINELENGTH, not LINELENGTH.
711
712 2001-11-19  Werner Koch  <wk@gnupg.org>
713
714         * gpg-agent.c: Removed all GUI code, removed code for old
715         protocol.  New code to use the Assuan protocol as a server and
716         also to communicate with a new ask-passphrase utility.
717
718 2000-11-22  Werner Koch  <wk@gnupg.org>
719
720         * gpg-agent.c (main): csh support by Dan Winship, new options --sh
721         and --csh and set default by consulting $SHELL.
722
723 Mon Aug 21 17:59:17 CEST 2000  Werner Koch  <wk@openit.de>
724
725         * gpg-agent.c (passphrase_dialog): Cleanup the window and added the
726         user supplied text to the window.
727         (main): Fixed segv in gtk_init when used without a command to start.
728
729         * gpg-agent.c: --flush option.
730         (req_flush): New.
731         (req_clear_passphrase): Implemented.
732
733 Fri Aug 18 14:27:14 CEST 2000  Werner Koch  <wk@openit.de>
734
735         * gpg-agent.c: New.
736         * Makefile.am: New.
737
738
739  Copyright 2001, 2002 Free Software Foundation, Inc.
740
741  This file is free software; as a special exception the author gives
742  unlimited permission to copy and/or distribute it, with or without
743  modifications, as long as this notice is preserved.
744
745  This file is distributed in the hope that it will be useful, but
746  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
747  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.