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