Replaced deprecated type names.
[gnupg.git] / scd / ChangeLog
1 2003-12-17  Werner Koch  <wk@gnupg.org>
2
3         * card-p15.c (p15_enum_keypairs): Replaced KRC by RC.
4         * card-dinsig.c (dinsig_enum_keypairs): Ditto.
5
6 2003-12-16  Werner Koch  <wk@gnupg.org>
7
8         * scdaemon.c (main): Set the prefixes for assuan logging.
9
10 2003-11-17  Werner Koch  <wk@gnupg.org>
11
12         * scdaemon.c, scdaemon.h: New options --allow-admin and --deny-admin.
13         * app-openpgp.c (verify_chv3): Check it here.
14
15 2003-11-12  Werner Koch  <wk@gnupg.org>
16
17         Adjusted for API changes in Libksba.
18
19 2003-10-30  Werner Koch  <wk@gnupg.org>
20
21         * apdu.c (close_ct_reader, close_pcsc_reader): Implemented.
22         (get_ccid_error_string): New.  Not very useful messages, though.
23
24 2003-10-25  Werner Koch  <wk@gnupg.org>
25
26         * ccid-driver.c (ccid_open_reader): Return an error if no USB
27         devices are found.
28
29         * command.c (cmd_genkey, cmd_passwd): Fixed faulty use of
30         !spacep().
31
32         * apdu.c (apdu_open_reader): Hacks for PC/SC under Windows.
33
34 2003-10-20  Werner Koch  <wk@gnupg.org>
35
36         * command.c (cmd_checkpin): New.
37         (register_commands): Add command CHECKPIN.
38         * app.c (app_check_pin): New.
39         * app-openpgp.c (check_against_given_fingerprint): New. Factored
40         out that code elsewhere.
41         (do_check_pin): New.
42
43 2003-10-10  Werner Koch  <wk@gnupg.org>
44
45         * ccid-driver.c (ccid_close_reader): New.
46
47         * apdu.c (close_ccid_reader, close_ct_reader, close_csc_reader)
48         (close_osc_reader, apdu_close_reader): New.  Not all are properly
49         implemented yet.
50
51 2003-10-09  Werner Koch  <wk@gnupg.org>
52
53         * ccid-driver.c (ccid_transceive): Add T=1 chaining for sending.
54
55 2003-10-08  Werner Koch  <wk@gnupg.org>
56
57         * app-openpgp.c (do_getattr): Support SERIALNO and AID.
58
59 2003-10-01  Werner Koch  <wk@gnupg.org>
60
61         * ccid-driver.c: Detect GnuPG 1.3 and include appropriate files.
62         * apdu.c: Ditto.
63         * app-openpgp.c: Ditto.
64         * iso7816.c: Ditto.
65         (generate_keypair): Renamed to ..
66         (do_generate_keypair): .. this.
67         * app-common.h [GNUPG_MAJOR_VERSION]: New.
68         * iso7816.h [GNUPG_MAJOR_VERSION]: Include cardglue.h
69
70 2003-09-30  Werner Koch  <wk@gnupg.org>
71
72         * command.c (cmd_getattr): New command GETATTR.
73         * app.c (app_setattr): New.
74         (do_getattr): New.
75         (do_learn_status): Reimplemented in terms of do_getattr.
76
77         * app-openpgp.c (do_change_pin): Make sure CVH1 and CHV2 are
78         always synced.
79         (verify_chv2, verify_chv3): New. Factored out common code.
80         (do_setattr, do_sign, do_auth, do_decipher): Change the names of
81         the prompts to match that we have only 2 different PINs.
82         (app_select_openpgp): Check whether the card enforced CHV1.
83         (convert_sig_counter_value): New. Factor out code from
84         get_sig_counter.
85
86 2003-09-28  Werner Koch  <wk@gnupg.org>
87
88         * app-openpgp.c (dump_all_do): Use gpg_err_code and not gpg_error.
89
90 2003-09-19  Werner Koch  <wk@gnupg.org>
91
92         * ccid-driver.c (parse_ccid_descriptor): New.
93         (read_device_info): New.
94         (ccid_open_reader): Check that the device has all required features.
95
96 2003-09-06  Werner Koch  <wk@gnupg.org>
97
98         * scdaemon.c (main): --pcsc-driver again defaults to pcsclite.
99         David Corcoran was so kind to remove the GPL incompatible
100         advertisng clause from pcsclite.
101         * apdu.c (apdu_open_reader): Actually make pcsc-driver option work.
102
103 2003-09-05  Werner Koch  <wk@gnupg.org>
104
105         * ccid-driver.c: More work, data can now actually be retrieved.
106         * ccid-driver.c, ccid-driver.h: Alternativley allow use under BSD
107         conditions.
108
109 2003-09-02  Werner Koch  <wk@gnupg.org>
110
111         * scdaemon.c, scdaemon.h: New option --pcsc-ccid.
112         * ccid-driver.c, ccid-driver.h: New but far from being useful.
113         * Makefile.am: Add above.
114         * apdu.c: Add support for that ccid driver.
115         
116 2003-08-26  Timo Schulz  <twoaday@freakmail.de>
117
118         * apdu.c (new_reader_slot): Only set 'is_osc' when OpenSC
119         is used.
120         
121 2003-08-25  Werner Koch  <wk@gnupg.org>
122
123         * command.c (cmd_setattr): Use a copy of LINE.
124         (cmd_genkey): Use a copy of KEYNO.
125         (cmd_passwd): Use a copy of CHVNOSTR.
126         (cmd_pksign, cmd_pkauth, cmd_pkdecrypt): s/strdup/xtrystrdup/.
127
128 2003-08-19  Werner Koch  <wk@gnupg.org>
129
130         * scdaemon.c, scdaemon.h: New option --pcsc-driver.
131         * apdu.c (apdu_open_reader): Use that option here instead of a
132         hardcoded one.
133
134 2003-08-18  Werner Koch  <wk@gnupg.org>
135
136         * Makefile.am: Add OPENSC_LIBS to all programs. 
137
138         * scdaemon.c, scdaemon.h: New option --disable-opensc.
139         * card.c (card_open): Implement it.
140         * apdu.c (open_osc_reader, osc_send_apdu): New.
141         (apdu_open_reader) [HAVE_OPENSC]: Use the opensc driver if not
142         disabled.
143         (error_string) [HAVE_OPENSC]: Use sc_strerror.
144         (send_apdu) [HAVE_OPENSC]: Call osc_apdu_send.
145
146         * card-p15.c (p15_enum_keypairs, p15_prepare_key): Adjusted for
147         libgpg-error.
148
149 2003-08-14  Timo Schulz  <twoaday@freakmail.de>
150
151         * apdu.c (ct_activate_card): Change the code a little to avoid
152         problems with other readers.
153         * Always use 'dynload.h' instead of 'dlfcn.h'.
154
155 2003-08-05  Werner Koch  <wk@gnupg.org>
156
157         * app-openpgp.c (dump_all_do): Don't analyze constructed DOs after
158         an error.
159
160 2003-08-04  Werner Koch  <wk@gnupg.org>
161
162         * app.c (app_set_default_reader_port): New.
163         (select_application): Use it here.
164         * scdaemon.c (main): and here.
165         * sc-copykeys.c: --reader-port does now take a string.
166         * sc-investigate.c, scdaemon.c: Ditto.
167         * apdu.c (apdu_open_reader): Ditto.  Load pcsclite if no ctapi
168         driver is configured.  Always include code for ctapi.
169         (new_reader_slot): Don't test for already used ports and remove
170         port arg.
171         (open_pcsc_reader, pcsc_send_apdu, pcsc_error_string): New.
172         (apdu_send_le): Changed RC to long to cope with PC/SC.
173
174         * scdaemon.c, scdaemon.h: New option --ctapi-driver.
175         * sc-investigate.c, sc-copykeys.c: Ditto.
176         
177 2003-07-31  Werner Koch  <wk@gnupg.org>
178
179         * Makefile.am (scdaemon_LDADD): Added INTLLIBS.
180
181 2003-07-28  Werner Koch  <wk@gnupg.org>
182
183         * app-openpgp.c (do_setattr): Change implementation.  Allow all
184         useful DOs.
185
186 2003-07-27  Werner Koch  <wk@gnupg.org>
187
188         Adjusted for gcry_mpi_print and gcry_mpi_scan API change.
189
190 2003-07-24  Werner Koch  <wk@gnupg.org>
191
192         * app-openpgp.c (do_learn_status): Print more status information.
193         (app_select_openpgp): Store the card version.
194         (store_fpr): Add argument card_version and fix DOs for old cards.
195         (app_openpgp_storekey): Likewise.
196
197 2003-07-23  Werner Koch  <wk@gnupg.org>
198
199         * command.c (cmd_pkauth): New.
200         (cmd_setdata): Check whether data was given at all to avoid
201         passing 0 to malloc.
202
203         * app.c (app_auth): New.
204         * app-openpgp.c (do_auth): New.
205
206 2003-07-22  Werner Koch  <wk@gnupg.org>
207
208         * command.c (cmd_passwd): New.
209         * app.c (app_change_pin): New.
210         * app-openpgp.c (do_change_pin): New.
211         * iso7816.c (iso7816_reset_retry_counter): Implemented.
212
213         * sc-investigate.c (main): New option --gen-random.
214         * iso7816.c (iso7816_get_challenge): Don't create APDUs with a
215         length larger than 255.
216
217 2003-07-17  Werner Koch  <wk@gnupg.org>
218
219         * command.c (cmd_random): New command RANDOM.
220
221         * iso7816.c (map_sw): New. Use it in this file to return
222         meaningful error messages.  Changed all public fucntions to return
223         a gpg_error_t.
224         (iso7816_change_reference_data): New.
225         * apdu.c (apdu_open_reader): Use faked status words for soem
226         system errors.
227
228 2003-07-16  Werner Koch  <wk@gnupg.org>
229
230         * apdu.c (apdu_send_simple): Use apdu_send_le so that we can
231         specify not to send Le as it should be.
232
233 2003-07-15  Werner Koch  <wk@gnupg.org>
234
235         * Makefile.am: Add sc-copykeys program.
236         * sc-copykeys.c: New.
237         * app-openpgp.c (app_openpgp_storekey): New.
238         (app_openpgp_cardinfo): New.
239         (count_bits): New.
240         (store_fpr): And use it here to get the actual length in bit.
241
242 2003-07-03  Werner Koch  <wk@gnupg.org>
243
244         * app-openpgp.c (do_setattr): Add setting of the URL.
245         (app_select_openpgp): Dump card data only in very verbose mode.
246         (do_decipher): New.
247
248 2003-07-02  Werner Koch  <wk@gnupg.org>
249
250         * app-openpgp.c (get_sig_counter): New.
251         (do_sign): Print the signature counter and enable the PIN callback.
252         (do_genkey): Implement the PIN callback. 
253
254 2003-07-01  Werner Koch  <wk@gnupg.org>
255
256         * app-openpgp.c (store_fpr): Fixed fingerprint calculation.
257
258 2003-06-26  Werner Koch  <wk@gnupg.org>
259
260         * app-openpgp.c (find_tlv): Fixed length header parsing.
261
262         * app.c (app_genkey): New.
263         * command.c (cmd_genkey): New.
264
265 2003-06-25  Werner Koch  <wk@gnupg.org>
266
267         * command.c (percent_plus_unescape): New.
268         (cmd_setattr): New.
269
270 2003-06-24  Werner Koch  <wk@gnupg.org>
271
272         * command.c (send_status_info): New.
273
274         * app-openpgp.c (app_select_openpgp): Replace SLOT arg by APP arg
275         and setup the function pointers in APP on success. Changed callers.
276         * app.c: New.
277         * app-common.h: New.
278         * scdaemon.h (APP): New type to handle applications.
279         (server_control_s): Add an APP context field.
280
281         * command.c (cmd_serialno): Handle applications.
282         (cmd_pksign): Ditto.
283         (cmd_pkdecrypt): Ditto.
284         (reset_notify): Ditto.
285         (cmd_learn): For now return error for application contexts.
286         (cmd_readcert): Ditto.
287         (cmd_readkey): Ditto.
288
289 2003-06-04  Werner Koch  <wk@gnupg.org>
290
291         * card.c (map_sc_err): Renamed gpg_make_err to gpg_err_make.
292
293         Renamed error codes from INVALID to INV and removed _ERROR suffixes.
294
295 2003-06-03  Werner Koch  <wk@gnupg.org>
296
297         Changed all error codes in all files to the new libgpg-error scheme.
298
299         * scdaemon.h: Include gpg-error.h and errno.h
300         * card.c (map_sc_err): Use unknown for the error source.
301         * Makefile.am: Link with libgpg-error
302
303 2003-05-14  Werner Koch  <wk@gnupg.org>
304
305         * atr.c, atr.h: New.
306         * sc-investigate.c: Dump the ATR in a human readable format.
307
308 2003-05-08  Werner Koch  <wk@gnupg.org>
309
310         * scdaemon.h (DBG_CARD_IO_VALUE): New.
311
312         * sc-investigate.c: New.
313         * scdaemon.c (main): Removed --print-atr option.
314
315         * iso7816.c, iso7816.h, app-openpgp.c: New.
316
317 2003-04-29  Werner Koch  <wk@gnupg.org>
318
319         * scdaemon.c: New options --print-atr and --reader-port
320         * apdu.c, apdu.h: New
321
322         * card.c, card-p15.c, card-dinsig.c: Allow build without OpenSC.
323         
324         * Makefile.am (LDFLAGS): Removed.
325
326         * command.c (register_commands): Adjusted for new Assuan semantics.
327
328 2002-08-21  Werner Koch  <wk@gnupg.org>
329
330         * scdaemon.c (main): New option --daemon so that the program is
331         not accidently started in the background.
332
333 2002-08-16  Werner Koch  <wk@gnupg.org>
334
335         * scdaemon.c: Include i18n.h.
336
337         * card-common.h (struct p15_private_s): Forward declaration.  Add
338         it to card_ctx_s.
339         * card.c (card_close): Make sure private data is released.
340         (card_enum_certs): New.
341         * card-p15.c (p15_release_private_data): New.
342         (init_private_data): New to work around an OpenSC weirdness.
343         (p15_enum_keypairs): Do an OpenSC get_objects only once.
344         (p15_enum_certs): New.
345         (card_p15_bind): Bind new function.
346         * command.c (cmd_learn): Return information about the certificates.
347
348 2002-08-09  Werner Koch  <wk@gnupg.org>
349
350         * card.c (card_get_serial_and_stamp): Use the tokeinfo serial
351         number as a fallback. Add a special prefix for serial numbers.
352
353 2002-07-30  Werner Koch  <wk@gnupg.org>
354
355         Changes to cope with OpenSC 0.7.0:
356         
357         * card.c: Removed the check for the packed opensc version.
358         Changed include file names of opensc.
359         (map_sc_err): Adjusted error codes for new opensc version.
360         * card-p15.c: Changed include filename of opensc.
361         * card-dinsig.c: Ditto.
362
363         * card-p15.c (p15_decipher): Add flags argument to OpenSC call.
364         
365 2002-07-24  Werner Koch  <wk@gnupg.org>
366
367         * card.c (find_simple_tlv, find_iccsn): New.
368         (card_get_serial_and_stamp): Improved serial number parser.
369
370 2002-06-27  Werner Koch  <wk@gnupg.org>
371
372         * scdaemon.c (main): Use GNUPG_DEFAULT_HOMEDIR constant.
373
374 2002-06-15  Werner Koch  <wk@gnupg.org>
375
376         * card-dinsig.c: Documented some stuff from the DIN norm.
377
378 2002-04-15  Werner Koch  <wk@gnupg.org>
379
380         * command.c (cmd_pksign, cmd_pkdecrypt): Use a copy of the key ID.
381
382 2002-04-12  Werner Koch  <wk@gnupg.org>
383
384         * scdaemon.c: New option --debug-sc N.
385         * card.c (card_open): set it here.
386
387         * card-p15.c (p15_prepare_key): Factored out common code from ...
388         (p15_sign, p15_decipher): here and made the decryption work the
389         regular way.
390
391 2002-04-10  Werner Koch  <wk@gnupg.org>
392
393         * card.c (card_open): Return immediately when no reader is available.
394
395 2002-03-27  Werner Koch  <wk@gnupg.org>
396
397         * card.c (card_open, card_close): Adjusted for changes in OpenSC.
398
399 2002-03-10  Werner Koch  <wk@gnupg.org>
400
401         * card-p15.c, card-dinsig.c, card-common.h: New.
402         * card.c: Factored most code out to the new modules, so that we
403         can better support different types of card applications.
404
405 2002-01-26  Werner Koch  <wk@gnupg.org>
406
407         * scdaemon.c scdaemon.h, command.c: New. Based on the code from
408         the gpg-agent.
409
410  Copyright 2002 Free Software Foundation, Inc.
411
412  This file is free software; as a special exception the author gives
413  unlimited permission to copy and/or distribute it, with or without
414  modifications, as long as this notice is preserved.
415
416  This file is distributed in the hope that it will be useful, but
417  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
418  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.