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