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