* delete.c: New.
[gnupg.git] / sm / ChangeLog
1 2002-07-22  Werner Koch  <wk@gnupg.org>
2
3         * delete.c: New.
4         * gpgsm.c: Made --delete-key work.
5         * server.c (cmd_delkeys): New.
6         (register_commands): New command DELKEYS.
7
8         * decrypt.c (gpgsm_decrypt): Print a convenience note when RC2 is
9         used and a STATUS_ERROR with the algorithm oid.
10
11 2002-07-03  Werner Koch  <wk@gnupg.org>
12
13         * server.c (gpgsm_status2): Insert a blank between all optional
14         arguments when using assuan.
15         * server.c (cmd_recipient): No more need for extra blank in constants.
16         * import.c (print_imported_status): Ditto.
17         * gpgsm.c (main): Ditto.
18
19 2002-07-02  Werner Koch  <wk@gnupg.org>
20
21         * verify.c (gpgsm_verify): Extend the STATUS_BADSIG line with
22         the fingerprint.
23
24         * certpath.c (check_cert_policy): Don't use log_error to print a
25         warning.
26
27         * keydb.c (keydb_store_cert): Add optional ar EXISTED and changed
28         all callers.
29         * call-agent.c (learn_cb): Print info message only for real imports.
30
31         * import.c (gpgsm_import): Moved duplicated code to ...
32         (check_and_store): new function.  Added magic to import the entire
33         chain. Print status only for real imports and moved printing code
34         to ..
35         (print_imported_status): New.
36
37         * call-dirmngr.c (gpgsm_dirmngr_isvalid): print status of dirmngr
38         call in very verbose mode.
39
40         * gpgsm.c (main): Use the same error codes for STATUS_INV_RECP as
41         with the server mode.
42
43 2002-06-29  Werner Koch  <wk@gnupg.org>
44
45         * gpgsm.c: New option --auto-issuer-key-retrieve.
46         * certpath.c (find_up): Try to retrieve an issuer key from an
47         external source and from the ephemeral key DB.
48         (find_up_store_certs_cb): New.
49
50         * keydb.c (keydb_set_ephemeral): Does now return the old
51         state.  Call the backend only when required.
52
53         * call-dirmngr.c (start_dirmngr): Use GNUPG_DEFAULT_DIRMNGR.
54         (lookup_status_cb): Issue status only when CTRL is not NULL.
55         (gpgsm_dirmngr_lookup): Document that CTRL is optional.
56
57         * call-agent.c (start_agent): Use GNUPG_DEFAULT_AGENT.
58
59 2002-06-28  Werner Koch  <wk@gnupg.org>
60
61         * server.c (cmd_recipient): Add more reason codes.
62
63 2002-06-27  Werner Koch  <wk@gnupg.org>
64
65         * certpath.c (gpgsm_basic_cert_check): Use
66         --debug-no-path-validation to also bypass this basic check.
67
68         * gpgsm.c (main): Use GNUPG_DEFAULT_HOMEDIR constant.
69
70         * call-agent.c (start_agent): Create and pass the list of FD to
71         keep in the child to assuan.
72         * call-dirmngr.c (start_dirmngr): Ditto.
73
74 2002-06-26  Werner Koch  <wk@gnupg.org>
75
76         * import.c (gpgsm_import): Print an STATUS_IMPORTED.
77
78         * gpgsm.c: --debug-no-path-validation does not take an argument.
79
80 2002-06-25  Werner Koch  <wk@gnupg.org>
81
82         * certdump.c (print_dn_part): Always print a leading slash,
83         removed NEED_DELIM arg and changed caller.
84
85         * export.c (gpgsm_export): Print LFs to FP and not stdout.
86         (print_short_info): Ditto.  Make use of gpgsm_print_name.
87
88         * server.c (cmd_export): Use output-fd instead of data lines; this
89         was actually the specified way.
90
91 2002-06-24  Werner Koch  <wk@gnupg.org>
92
93         * gpgsm.c: Removed duped help entry for --list-keys.
94         
95         * gpgsm.c, gpgsm.h: New option --debug-no-path-validation.
96
97         * certpath.c (gpgsm_validate_path): Use it here instead of the
98         debug flag hack.
99
100         * certpath.c (check_cert_policy): Return No_Policy_Match if the
101         policy file could not be opened.
102
103 2002-06-20  Werner Koch  <wk@gnupg.org>
104
105         * certlist.c (gpgsm_add_to_certlist): Fixed locating of a
106         certificate with the required key usage.
107
108         * gpgsm.c (main): Fixed a segv when using --outfile without an
109         argument.
110
111         * keylist.c (print_capabilities): Also check for non-repudiation
112         and data encipherment.
113         * certlist.c (cert_usage_p): Test for signing and encryption was
114         swapped.  Add a case for certification usage, handle
115         non-repudiation and data encipherment.
116         (gpgsm_cert_use_cert_p): New.
117         (gpgsm_add_to_certlist): Added a CTRL argument and changed all
118         callers to pass it.
119         * certpath.c (gpgsm_validate_path): Use it here to print a status
120         message. Added a CTRL argument and changed all callers to pass it.
121         * decrypt.c (gpgsm_decrypt): Print a status message for wrong key
122         usage.
123         * verify.c (gpgsm_verify): Ditto.
124         * keydb.c (classify_user_id): Allow a colon delimited fingerprint.
125
126 2002-06-19  Werner Koch  <wk@gnupg.org>
127
128         * call-agent.c (learn_cb): Use log_info instead of log_error on
129         successful import.
130
131         * keydb.c (keydb_set_ephemeral): New.
132         (keydb_store_cert): New are ephemeral, changed all callers.
133         * keylist.c (list_external_cb): Store cert as ephemeral.
134         * export.c (gpgsm_export): Kludge to export epehmeral certificates.
135
136         * gpgsm.c (main): New command --list-external-keys.
137         
138 2002-06-17  Werner Koch  <wk@gnupg.org>
139
140         * certreqgen.c (read_parameters): Improved error handling.
141         (gpgsm_genkey): Print error message.
142
143 2002-06-13  Werner Koch  <wk@gnupg.org>
144
145         * gpgsm.c (main): New option --log-file.
146
147 2002-06-12  Werner Koch  <wk@gnupg.org>
148
149         * call-dirmngr.c (lookup_status_cb): New.
150         (gpgsm_dirmngr_lookup): Use the status CB.  Add new arg CTRL and
151         changed caller to pass it.
152
153         * gpgsm.c (open_fwrite): New.
154         (main): Allow --output for --verify.
155
156         * sign.c (hash_and_copy_data): New.
157         (gpgsm_sign): Implemented normal (non-detached) signatures.
158         * gpgsm.c (main): Ditto.
159         
160         * certpath.c (gpgsm_validate_path): Special error handling for
161         no policy match.
162
163 2002-06-10  Werner Koch  <wk@gnupg.org>
164
165         * server.c (get_status_string): Add STATUS_ERROR.
166
167         * certpath.c (gpgsm_validate_path): Tweaked the error checking to 
168         return error codes in a more sensitive way.
169         * verify.c (gpgsm_verify): Send status TRUST_NEVER also for a bad
170         CA certificate and when the certificate has been revoked.  Issue
171         TRUST_FULLY even when the cert has expired.  Append an error token
172         to these status lines.  Issue the new generic error status when a
173         cert was not found and when leaving the function.
174
175 2002-06-04  Werner Koch  <wk@gnupg.org>
176
177         * gpgsm.c (main): New command --list-sigs
178         * keylist.c (list_cert_std): New.  Use it whenever colon mode is
179         not used.
180         (list_cert_chain): New.
181
182 2002-05-31  Werner Koch  <wk@gnupg.org>
183
184         * gpgsm.c (main): Don't print the "go ahead" message for an
185         invalid command.
186
187 2002-05-23  Werner Koch  <wk@gnupg.org>
188
189         * import.c (gpgsm_import): Add error messages.
190
191 2002-05-21  Werner Koch  <wk@gnupg.org>
192
193         * keylist.c (list_internal_keys): Renamed from gpgsm_list_keys.
194         (list_external_keys): New.
195         (gpgsm_list_keys): Dispatcher for above.
196         * call-dirmngr.c (lookup_cb,pattern_from_strlist)
197         (gpgsm_dirmngr_lookup): New.
198         * server.c (option_handler): Handle new option --list-mode.
199         (do_listkeys): Handle options and actually use the mode argument.
200         (get_status_string): New code TRUNCATED.
201
202         * import.c (gpgsm_import): Try to identify the type of input and
203         handle certs-only messages.
204
205 2002-05-14  Werner Koch  <wk@gnupg.org>
206
207         * gpgsm.c: New option --faked-system-time
208         * sign.c (gpgsm_sign): And use it here.
209         * certpath.c (gpgsm_validate_path): Ditto.
210
211 2002-05-03  Werner Koch  <wk@gnupg.org>
212
213         * certpath.c (gpgsm_validate_path): Added EXPTIME arg and changed
214         all callers.
215         * verify.c (gpgsm_verify): Tweaked usage of log_debug and
216         log_error.  Return EXPSIG status and add expiretime to VALIDSIG.
217
218 2002-04-26  Werner Koch  <wk@gnupg.org>
219
220         * gpgsm.h (DBG_AGENT,DBG_AGENT_VALUE): Replaced by DBG_ASSUAN_*.
221         Changed all users.
222
223         * call-agent.c (start_agent): Be more silent without -v.
224         * call-dirmngr.c (start_dirmngr): Ditto.
225
226 2002-04-25  Werner Koch  <wk@gnupg.org>
227
228         * call-agent.c (start_agent): Make copies of old locales and check
229         for setlocale.
230
231 2002-04-25  Marcus Brinkmann  <marcus@g10code.de>
232
233         * call-agent.c (start_agent): Fix error handling logic so the
234         locale is always correctly reset.
235
236 2002-04-25  Marcus Brinkmann  <marcus@g10code.de>
237
238         * server.c (option_handler): Accept display, ttyname, ttytype,
239         lc_ctype and lc_messages options.
240         * gpgsm.c (main): Allocate memory for these options.
241         * gpgsm.h (struct opt): Make corresponding members non-const.
242
243 2002-04-24  Marcus Brinkmann  <marcus@g10code.de>
244
245         * gpgsm.h (struct opt): New members display, ttyname, ttytype,
246         lc_ctype, lc_messages.
247         * gpgsm.c (enum cmd_and_opt_values): New members oDisplay,
248         oTTYname, oTTYtype, oLCctype, oLCmessages.
249         (opts): New entries for these options.
250         (main): Handle these new options.
251         * call-agent.c (start_agent): Set the various display and tty
252         parameter after resetting.
253
254 2002-04-18  Werner Koch  <wk@gnupg.org>
255
256         * certreqgen.c (gpgsm_genkey): Write status output on success.
257
258 2002-04-15  Werner Koch  <wk@gnupg.org>
259
260         * gpgsm.c (main): Check ksba version.
261
262         * certpath.c (find_up): New to use the authorithKeyIdentifier.
263         Use it in all other functions to locate the signing cert..
264
265 2002-04-11  Werner Koch  <wk@gnupg.org>
266
267         * certlist.c (cert_usable_p): New.
268         (gpgsm_cert_use_sign_p,gpgsm_cert_use_encrypt_p): New.
269         (gpgsm_cert_use_verify_p,gpgsm_cert_use_decrypt_p): New.
270         (gpgsm_add_to_certlist): Check the key usage.
271         * sign.c (gpgsm_sign): Ditto.
272         * verify.c (gpgsm_verify): Print a message wehn an unsuitable
273         certificate was used.
274         * decrypt.c (gpgsm_decrypt): Ditto
275         * keylist.c (print_capabilities): Determine values from the cert.
276
277 2002-03-28  Werner Koch  <wk@gnupg.org>
278
279         * keylist.c (list_cert_colon): Fixed listing of crt record; the
280         issuer is not at the right place.  Print a chainingID.
281         * certpath.c (gpgsm_walk_cert_chain): Be a bit more silent on
282         common errors.
283
284 2002-03-21  Werner Koch  <wk@gnupg.org>
285
286         * export.c: New.
287         * gpgsm.c: Add command --export.
288         * server.c (cmd_export): New.
289         
290 2002-03-13  Werner Koch  <wk@gnupg.org>
291
292         * decrypt.c (gpgsm_decrypt): Allow multiple recipients.
293
294 2002-03-12  Werner Koch  <wk@gnupg.org>
295
296         * certpath.c (check_cert_policy): Print the policy list.
297
298         * verify.c (gpgsm_verify): Detect certs-only message.
299
300 2002-03-11  Werner Koch  <wk@gnupg.org>
301
302         * import.c (gpgsm_import): Print a notice about imported certificates
303         when in verbose mode.
304
305         * gpgsm.c (main): Print INV_RECP status.
306         * server.c (cmd_recipient): Ditto.
307
308         * server.c (gpgsm_status2): New.  Allows for a list of strings.
309         (gpgsm_status): Divert to gpgsm_status2.
310
311         * encrypt.c (gpgsm_encrypt): Don't use a default key when no
312         recipients are given.  Print a NO_RECP status.
313
314 2002-03-06  Werner Koch  <wk@gnupg.org>
315
316         * server.c (cmd_listkeys, cmd_listsecretkeys): Divert to
317         (do_listkeys): new.  Add pattern parsing.
318
319         * keylist.c (gpgsm_list_keys): Handle selection pattern.
320
321         * gpgsm.c: New command --learn-card
322         * call-agent.c (learn_cb,gpgsm_agent_learn): New.
323
324         * gpgsm.c (main): Print error messages for non-implemented commands.
325
326         * base64.c (base64_reader_cb): Use case insensitive compare of the
327         Content-Type string to detect plain base-64.
328
329 2002-03-05  Werner Koch  <wk@gnupg.org>
330
331         * gpgsm.c, gpgsm.h: Add local_user.
332         * sign.c (gpgsm_get_default_cert): New.
333         (get_default_signer): Use the new function if local_user is not
334         set otherwise used that value.
335         * encrypt.c (get_default_recipient): Removed.
336         (gpgsm_encrypt): Use gpgsm_get_default_cert.
337
338         * verify.c (gpgsm_verify): Better error text for a bad signature
339         found by comparing the hashs.
340
341 2002-02-27  Werner Koch  <wk@gnupg.org>
342
343         * call-dirmngr.c, call-agent.c: Add 2 more arguments to all uses
344         of assuan_transact.
345
346 2002-02-25  Werner Koch  <wk@gnupg.org>
347
348         * server.c (option_handler): Allow to use -2 for "send all certs
349         except the root cert".
350         * sign.c (add_certificate_list): Implement it here.
351         * certpath.c (gpgsm_is_root_cert): New.
352
353 2002-02-19  Werner Koch  <wk@gnupg.org>
354
355         * certpath.c (check_cert_policy): New.
356         (gpgsm_validate_path): And call it from here.
357         * gpgsm.c (main): New options --policy-file,
358         --disable-policy-checks and --enable-policy-checks.
359         * gpgsm.h (opt): Added policy_file, no_policy_checks.
360
361 2002-02-18  Werner Koch  <wk@gnupg.org>
362
363         * certpath.c (gpgsm_validate_path): Ask the agent to add the
364         certificate into the trusted list.
365         * call-agent.c (gpgsm_agent_marktrusted): New.
366
367 2002-02-07  Werner Koch  <wk@gnupg.org>
368
369         * certlist.c (gpgsm_add_to_certlist): Check that the specified
370         name identifies a certificate unambiguously.
371         (gpgsm_find_cert): Ditto.
372
373         * server.c (cmd_listkeys): Check that the data stream is available.
374         (cmd_listsecretkeys): Ditto.
375         (has_option): New.
376         (cmd_sign): Fix ambiguousity in option recognition.
377
378         * gpgsm.c (main): Enable --logger-fd.
379
380         * encrypt.c (gpgsm_encrypt): Increased buffer size for better
381         performance.
382
383         * call-agent.c (gpgsm_agent_pksign): Check the S-Exp received from
384         the agent.
385
386         * keylist.c (list_cert_colon): Filter out control characters.
387
388 2002-02-06  Werner Koch  <wk@gnupg.org>
389
390         * decrypt.c (gpgsm_decrypt): Bail out after an decryption error.
391
392         * server.c (reset_notify): Close input and output FDs.
393         (cmd_encrypt,cmd_decrypt,cmd_verify,cmd_sign.cmd_import)
394         (cmd_genkey): Close the FDs and release the recipient list even in
395         the error case.
396
397 2002-02-01  Marcus Brinkmann  <marcus@g10code.de>
398
399         * sign.c (gpgsm_sign): Do not release certificate twice.
400
401 2002-01-29  Werner Koch  <wk@gnupg.org>
402
403         * call-agent.c (gpgsm_agent_havekey): New.
404         * keylist.c (list_cert_colon): New arg HAVE_SECRET, print "crs"
405         when we know that the secret key is available.
406         (gpgsm_list_keys): New arg MODE, check whether a secret key is
407         available.  Changed all callers.
408         * gpgsm.c (main): New command --list-secret-keys.
409         * server.c (cmd_listsecretkeys): New.
410         (cmd_listkeys): Return secret keys with "crs" record.
411
412 2002-01-28  Werner Koch  <wk@gnupg.org>
413
414         * certreqgen.c (create_request): Store the email address in the req.
415
416 2002-01-25  Werner Koch  <wk@gnupg.org>
417
418         * gpgsm.c (main): Disable core dumps.
419
420         * sign.c (add_certificate_list): New.
421         (gpgsm_sign): Add the certificates to the CMS object.
422         * certpath.c (gpgsm_walk_cert_chain): New.
423         * gpgsm.h (server_control_s): Add included_certs.
424         * gpgsm.c: Add option --include-certs.
425         (gpgsm_init_default_ctrl): New.
426         (main): Call it.
427         * server.c (gpgsm_server): Ditto.
428         (option_handler): Support --include-certs.
429
430 2002-01-23  Werner Koch  <wk@gnupg.org>
431
432         * certpath.c (gpgsm_validate_path): Print the DN of a missing issuer.
433         * certdump.c (gpgsm_dump_string): New.
434         (print_dn): Replaced by above.
435
436 2002-01-22  Werner Koch  <wk@gnupg.org>
437
438         * certpath.c (unknown_criticals): New.
439         (allowed_ca): New.
440         (gpgsm_validate_path): Check validity, CA attribute, path length
441         and unknown critical extensions.
442
443 2002-01-21  Werner Koch  <wk@gnupg.org>
444
445         * gpgsm.c: Add option --enable-crl-checks.
446
447         * call-agent.c (start_agent): Implemented socket based access.
448         * call-dirmngr.c (start_dirmngr): Ditto.
449
450 2002-01-20  Werner Koch  <wk@gnupg.org>
451
452         * server.c (option_handler): New.
453         (gpgsm_server): Register it with assuan.
454
455 2002-01-19  Werner Koch  <wk@gnupg.org>
456
457         * server.c (gpgsm_server): Use assuan_deinit_server and setup
458         assuan logging if enabled.
459         * call-agent.c (inq_ciphertext_cb): Don't show the session key in
460         an Assuan log file.
461
462         * gpgsm.c (my_strusage): Take bugreport address from configure.ac
463
464 2002-01-15  Werner Koch  <wk@gnupg.org>
465
466         * import.c (gpgsm_import): Just do a basic cert check before
467         storing it.
468         * certpath.c (gpgsm_basic_cert_check): New.
469
470         * keydb.c (keydb_store_cert): New.
471         * import.c (store_cert): Removed and change all caller to use
472         the new function.
473         * verify.c (store_cert): Ditto.
474
475         * certlist.c (gpgsm_add_to_certlist): Validate the path
476
477         * certpath.c (gpgsm_validate_path): Check the trust list.
478         * call-agent.c (gpgsm_agent_istrusted): New.
479
480 2002-01-14  Werner Koch  <wk@gnupg.org>
481
482         * call-dirmngr.c (inq_certificate): Changed for new interface semantic.
483         * certlist.c (gpgsm_find_cert): New.
484
485 2002-01-13  Werner Koch  <wk@gnupg.org>
486
487         * fingerprint.c (gpgsm_get_certid): Print the serial and not the
488         hash after the dot.
489
490 2002-01-11  Werner Koch  <wk@gnupg.org>
491
492         * call-dirmngr.c: New.
493         * certpath.c (gpgsm_validate_path): Check the CRL here.
494         * fingerprint.c (gpgsm_get_certid): New.
495         * gpgsm.c: New options --dirmngr-program and --disable-crl-checks.
496
497 2002-01-10  Werner Koch  <wk@gnupg.org>
498
499         * base64.c (gpgsm_create_writer): Allow to set the object name
500
501 2002-01-08  Werner Koch  <wk@gnupg.org>
502
503         * keydb.c (spacep): Removed because it is now in util.c
504
505         * server.c (cmd_genkey): New.
506         * certreqgen.c: New.  The parameter handling code has been taken
507         from gnupg/g10/keygen.c version 1.0.6.
508         * call-agent.c (gpgsm_agent_genkey): New.
509
510 2002-01-02  Werner Koch  <wk@gnupg.org>
511
512         * server.c (rc_to_assuan_status): Removed and changed all callers
513         to use map_to_assuan_status.
514
515 2001-12-20  Werner Koch  <wk@gnupg.org>
516
517         * verify.c (gpgsm_verify): Implemented non-detached signature
518         verification.  Add OUT_FP arg, initialize a writer and changed all
519         callers.
520         * server.c (cmd_verify): Pass an out_fp if one has been set.
521
522         * base64.c (base64_reader_cb): Try to detect an S/MIME body part.
523
524         * certdump.c (print_sexp): Renamed to gpgsm_dump_serial, made
525         global.
526         (print_time): Renamed to gpgsm_dump_time, made global.
527         (gpgsm_dump_serial): Take a real S-Expression as argument and
528         print the first item.
529         * keylist.c (list_cert_colon): Ditto.
530         * keydb.c (keydb_search_issuer_sn): Ditto.
531         * decrypt.c (print_integer_sexp): Removed and made callers 
532         use gpgsm_dump_serial.
533         * verify.c (print_time): Removed, made callers use gpgsm_dump_time.
534         
535 2001-12-19  Marcus Brinkmann  <marcus@g10code.de>
536
537         * call-agent.c (start_agent): Add new argument to assuan_pipe_connect.
538
539 2001-12-18  Werner Koch  <wk@gnupg.org>
540
541         * verify.c (print_integer_sexp): Renamed from print_integer and
542         print the serial number according to the S-Exp rules.
543         * decrypt.c (print_integer_sexp): Ditto.
544
545 2001-12-17  Werner Koch  <wk@gnupg.org>
546
547         * keylist.c (list_cert_colon): Changed for new return value of
548         get_serial.
549         * keydb.c (keydb_search_issuer_sn): Ditto.
550         * certcheck.c (gpgsm_check_cert_sig): Likewise for other S-Exp
551         returingin functions.
552         * fingerprint.c (gpgsm_get_keygrip): Ditto.
553         * encrypt.c (encrypt_dek): Ditto
554         * certcheck.c (gpgsm_check_cms_signature): Ditto
555         * decrypt.c (prepare_decryption): Ditto.
556         * call-agent.c (gpgsm_agent_pkdecrypt): Removed arg ciphertextlen,
557         use KsbaSexp type and calculate the length.
558
559         * certdump.c (print_sexp): Remaned from print_integer, changed caller.
560
561         * Makefile.am: Use the LIBGCRYPT and LIBKSBA variables.
562
563         * fingerprint.c (gpgsm_get_keygrip): Use the new
564         gcry_pk_get_keygrip to calculate the grip - note the algorithm and
565         therefore the grip values changed.
566
567 2001-12-15  Werner Koch  <wk@gnupg.org>
568
569         * certcheck.c (gpgsm_check_cms_signature): Removed the faked-key
570         kludge.
571         (gpgsm_create_cms_signature): Removed the commented fake key
572         code.  This makes the function pretty simple.
573
574         * gpgsm.c (main): Renamed the default key database to "keyring.kbx".
575
576         * decrypt.c (gpgsm_decrypt): Write STATUS_DECRYPTION_*.
577         * sign.c (gpgsm_sign): Write a STATUS_SIG_CREATED.
578
579 2001-12-14  Werner Koch  <wk@gnupg.org>
580
581         * keylist.c (list_cert_colon): Kludge to show an email address
582         encoded in the subject's DN.
583
584         * verify.c (gpgsm_verify): Add hash debug helpers
585         * sign.c (gpgsm_sign): Ditto.
586
587         * base64.c (base64_reader_cb): Reset the linelen when we need to
588         skip the line and adjusted test; I somehow forgot about DeMorgan.
589
590         * server.c (cmd_encrypt,cmd_decrypt,cmd_sign,cmd_verify) 
591         (cmd_import): Close the FDs on success.
592         (close_message_fd): New.
593         (input_notify): Setting autodetect_encoding to 0 after initializing
594         it to 0 is pretty pointless.  Easy to fix.
595
596         * gpgsm.c (main): New option --debug-wait n, so that it is
597         possible to attach gdb when used in server mode.
598
599         * sign.c (get_default_signer): Use keydb_classify_name here.
600
601 2001-12-14  Marcus Brinkmann  <marcus@g10code.de>
602
603         * call-agent.c (LINELENGTH): Removed.
604         (gpgsm_agent_pksign): Use ASSUAN_LINELENGTH, not LINELENGTH.
605         (gpgsm_agent_pkdecrypt): Likewise.
606
607 2001-12-13  Werner Koch  <wk@gnupg.org>
608
609         * keylist.c (list_cert_colon): Print alternative names of subject
610         and a few other values.
611
612 2001-12-12  Werner Koch  <wk@gnupg.org>
613
614         * gpgsm.c (main): New options --assume-{armor,base64,binary}. 
615         * base64.c (base64_reader_cb): Fixed non-autodetection mode.
616
617 2001-12-04  Werner Koch  <wk@gnupg.org>
618
619         * call-agent.c (read_from_agent): Check for inquire responses.
620         (request_reply): Handle them using a new callback arg, changed all
621         callers.
622         (gpgsm_agent_pkdecrypt): New.
623
624 2001-11-27  Werner Koch  <wk@gnupg.org>
625
626         * base64.c: New.  Changed all other functions to use this instead
627         of direct creation of ksba_reader/writer.
628         * gpgsm.c (main): Set ctrl.auto_encoding unless --no-armor is used.
629
630 2001-11-26  Werner Koch  <wk@gnupg.org>
631
632         * gpgsm.c: New option --agent-program
633         * call-agent.c (start_agent): Allow to override the default path
634         to the agent.
635
636         * keydb.c (keydb_add_resource): Create keybox
637
638         * keylist.c (gpgsm_list_keys): Fixed non-server keylisting.
639
640         * server.c (rc_to_assuan_status): New.  Use it for all commands.
641
642         
643  Copyright 2001, 2002 Free Software Foundation, Inc.
644
645  This file is free software; as a special exception the author gives
646  unlimited permission to copy and/or distribute it, with or without
647  modifications, as long as this notice is preserved.
648
649  This file is distributed in the hope that it will be useful, but
650  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
651  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.