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