.
[gnupg.git] / tools / ChangeLog
1 2010-08-25  Werner Koch  <wk@g10code.com>
2
3         * gpgtar-extract.c (create_directory): Add .p7m as known
4         extension.
5
6         * gpgtar.c: Add -t as short option for --list-archive.
7         * gpgtar-extract.c (gpgtar_extract): Use filename "-" for stdin.
8         Fix dirprefix setting.
9         * gpgtar-list.c (gpgtar_list): Ditto.
10
11 2010-08-24  Werner Koch  <wk@g10code.com>
12
13         * gpgtar.c (opts): Fix --cms and --openpgp names.
14
15 2010-08-23  Werner Koch  <wk@g10code.com>
16
17         * gpgconf-comp.c (GPGNAME) [W32CE]: s/gpg2/gpg/.
18         (get_config_filename) [W32CE]: Adjust absolute file name check.
19
20         * gpgconf-comp.c (retrieve_options_from_program)
21         (retrieve_options_from_file, retrieve_options_from_program)
22         (copy_file, gc_process_gpgconf_conf): Do not use es_ferror after a
23         failed es_fclose.  Note that the stream is in any case invalid
24         after calling es_fclose and that es_fclose does set ERRNO.
25
26         * Makefile.am (maybe_commonpth_libs): New.
27         (gpgconf_LDADD): Use it.
28
29 2010-08-20  Werner Koch  <wk@g10code.com>
30
31         * gpgconf-comp.c (collect_error_output): Remove extra CRs.
32
33 2010-08-19  Werner Koch  <wk@g10code.com>
34
35         * gpgconf.c (main): Fix --check-options.
36
37         * gpgconf-comp.c (gc_component_check_options): Replace
38         gnupg_spawn_process_fd by gnupg_spawn_process.
39         (retrieve_options_from_program): Ditto.
40         (collect_error_output): Change to use estream.
41
42         * gpgconf-comp.c: Add new backend and component for PINENTRY.
43         (gc_component_check_options): Use --version to test the pinentry.
44         (gc_component_retrieve_options, gc_component_change_options):
45         Ignore the pinentry component.
46
47 2010-08-16  Werner Koch  <wk@g10code.com>
48
49         * gpgconf.c (get_outfp): Change to use estream.
50         (main): Replace fprintf by es_fprintf.
51         * gpgconf-comp.c (gc_component_list_components)
52         (gc_check_programs, gc_component_list_options)
53         (gc_component_change_options, gc_component_check_options)
54         (list_one_option, gc_process_gpgconf_conf): Replace FILE* args by
55         estream_t.
56
57 2010-08-13  Werner Koch  <wk@g10code.com>
58
59         * Makefile.am (gpgkey2ssh_LDADD): Add NETLIBS.
60
61 2010-08-11  Werner Koch  <wk@g10code.com>
62
63         * gpgtar-create.c (gpgtar_create): Allow "-" for stdout in
64         opt.outfile.  Switch es_stdout to binary mode.
65
66 2010-08-09  Werner Koch  <wk@g10code.com>
67
68         * watchgnupg.c: Inlcude in.h and inet.h.
69         (main): Support tcp connections.
70
71         * gpgtar.c (main): Add options -T and --null.
72         * gpgtar-create.c (gpgtar_create): Implement option --null.
73
74 2010-07-16  Werner Koch  <wk@g10code.com>
75
76         * gpgtar-create.c: Rewrite to better support W32.
77
78 2010-07-01  Werner Koch  <wk@g10code.com>
79
80         * gpgtar.c: Add option --set-filename.
81
82 2010-06-24  Werner Koch  <wk@g10code.com>
83
84         * gpgconf-comp.c (gpg_agent_runtime_change)
85         (scdaemon_runtime_change, retrieve_options_from_program): Use HANG
86         option for gnupg_wait_progress.  Fixes regression from 2010-06-09.
87
88 2010-06-07  Werner Koch  <wk@g10code.com>
89
90         * gpgtar.c, gpgtar.h, gpgtar-list.c, gpgtar-create.c
91         * gpgtar-extract.c: New.
92         * Makefile.am (commonpth_libs): New.
93         (gpgtar_SOURCES, gpgtar_CFLAGS, gpgtar_LDADD): New.
94         (bin_PROGRAMS) [!W32CE]: Add gpgtar.
95
96 2010-04-20  Marcus Brinkmann  <marcus@g10code.de>
97
98         * gpgconf-comp.c (option_check_validity): Use dummy variables to
99         silence gcc warning.
100
101 2010-04-14  Werner Koch  <wk@g10code.com>
102
103         * Makefile.am (bin_PROGRAMS) [W32CE]: Exclude gpgkey2ssh.
104         (noinst_PROGRAMS) [W32CE]: Don't build them.
105         (pwquery_libs) [W32CE]: Set to empty.
106
107 2010-03-25  Werner Koch  <wk@g10code.com>
108
109         * Makefile.am (opt_libassuan_libs) [W32CE]: New.
110         (gpgconf_LDADD): Use it.
111
112         * gpgconf-comp.c: Include signal.h only if available.  Use
113         gpg_err_set_errno.
114         (key_matches_user_or_group) [W32CE]: Do not match any user.
115
116 2010-03-15  Werner Koch  <wk@g10code.com>
117
118         * gpgconf-comp.c (my_dgettext):
119         s/gettext_select_utf8/gettext_use_utf8/.
120
121 2010-03-10  Werner Koch  <wk@g10code.com>
122
123         * Makefile.am (common_libs): Remove libjnlib.a.
124
125 2010-03-08  Werner Koch  <wk@g10code.com>
126
127         * no-libgcrypt.c (gcry_create_nonce): New.
128
129 2010-02-26  Werner Koch  <wk@g10code.com>
130
131         * gpg-connect-agent.c (main): New option --tcp-socket.
132
133 2010-01-10  Werner Koch  <wk@g10code.com>
134
135         * symcryptrun.c (utmp.h): Remove header; it is not used.
136
137 2009-12-18  Werner Koch  <wk@g10code.com>
138
139         * applygnupgdefaults (errorfile): Use mktemp.  Fixes bug#1146.
140
141 2009-12-08  Marcus Brinkmann  <marcus@g10code.de>
142
143         * gpg-connect-agent.c (main): Convert posix fd to assuan fd.
144
145 2009-12-07  Werner Koch  <wk@g10code.com>
146
147         * no-libgcrypt.c (gcry_strdup): Actually copy the string.
148
149 2009-11-23  Werner Koch  <wk@g10code.com>
150
151         * gpgconf-comp.c (gc_options_gpg): Add default_pubkey_algo.
152
153 2009-11-05  Marcus Brinkmann  <marcus@g10code.de>
154
155         * gpg-connect-agent.c (start_agent): Update use of
156         assuan_socket_connect and assuan_pipe_connect.
157
158 2009-11-04  Werner Koch  <wk@g10code.com>
159
160         * gpg-connect-agent.c (read_and_print_response): Add arg WITHHASH.
161         (main): Pass true for WITHHASH for the HELP command.
162
163 2009-09-23  Marcus Brinkmann  <marcus@g10code.de>
164
165         * gpg-connect-agent.c (getinfo_pid_cb, read_and_print_response)
166         (main): Update to new Assuan API.
167
168 2009-07-21  Werner Koch  <wk@g10code.com>
169
170         * gpgsplit.c (my_strusage): Remove i18n stuff.
171
172 2009-07-07  Werner Koch  <wk@g10code.com>
173
174         * gpg-connect-agent.c (start_agent): Adjust for changed args of
175         send_pinentry_environment.
176
177 2009-06-30  Werner Koch  <wk@g10code.com>
178
179         * ccidmon.c (parse_line_sniffusb): Take also TAB as delimiter.
180
181 2009-06-29  Werner Koch  <wk@g10code.com>
182
183         * ccidmon.c (parse_line_sniffusb): New.
184         (main): Add option --sniffusb.
185
186 2009-06-08  Werner Koch  <wk@g10code.com>
187
188         * gpgconf.c (main): Call gnupg_reopen_std.  Should fix bug#1072.
189
190 2009-05-19  Werner Koch  <wk@g10code.com>
191
192         * watchgnupg.c: Include jnlib/mischelp.h if required.
193         (main): Use SUN_LEN.
194
195 2009-04-17  Werner Koch  <wk@g10code.com>
196
197         * ccidmon.c: New.
198
199 2009-03-03  Werner Koch  <wk@g10code.com>
200
201         * gpgconf.c: New command --reload.
202
203         * gpgconf-comp.c (gc_component_reload): New.
204
205 2009-03-02  Werner Koch  <wk@g10code.com>
206
207         * gpgconf-comp.c (scdaemon_runtime_change): Killsc d only if it is
208         not running.
209
210 2009-02-27  Werner Koch  <wk@g10code.com>
211
212         * gpgconf-comp.c (gpg_agent_runtime_change): Declare static.
213         (scdaemon_runtime_change): New.
214         (gc_backend_scdaemon): Register new function.
215         (gc_options_scdaemon): Make most options runtime changable.
216
217 2009-01-20  Werner Koch  <wk@g10code.com>
218
219         * gpgconf.c (main): Print more directories.
220
221 2008-12-09  Werner Koch  <wk@g10code.com>
222
223         * gpg-check-pattern.c (main): Call i18n_init before
224         init_common_subsystems.
225         * gpg-connect-agent.c (main): Ditto.
226         * gpgconf.c (main): Ditto.
227         * symcryptrun.c (main): Ditto.
228
229 2008-12-08  Werner Koch  <wk@g10code.com>
230
231         * gpgkey2ssh.c (main): Change order of output for RSA. Change name
232         of DSA identifier.  Reported by Daniel Kahn Gillmor.  This is
233         bug#901.
234
235 2008-12-05  Werner Koch  <wk@g10code.com>
236
237         * gpg-connect-agent.c (opts): Use ARGPARSE_ macros.
238         (start_agent) [W32]: Start agent if not running.
239
240 2008-12-03  Werner Koch  <wk@g10code.com>
241
242         * gpgconf-comp.c <scdaemon>: Add option --card-timeout.  Remove
243         unused option --disable-opensc.
244
245 2008-10-20  Werner Koch  <wk@g10code.com>
246
247         * gpgsplit.c (write_part): Remove unused arg FNAME.  Change caller.
248         (do_split): Ditto.
249
250         * no-libgcrypt.c (gcry_control): Mark unused arg.
251         * gpg-connect-agent.c (do_recvfd): Ditto.
252         * gpgparsemail.c (mime_signed_begin, mime_encrypted_begin): Ditto.
253         (pkcs7_begin): Ditto.
254
255 2008-10-01  Werner Koch  <wk@g10code.com>
256
257         * gpg-connect-agent.c (main): New command datafile.
258         (read_and_print_response): Print to the defined datafile.
259
260 2008-09-30  Werner Koch  <wk@g10code.com>
261
262         * gpgconf.c (main) <aListDirs>: Print the bindir.
263
264 2008-08-06  Marcus Brinkmann  <marcus@g10code.de>
265
266         * gpgconf-comp.c (gc_options_gpgsm): Change type of keyserver
267         option to GC_ARG_TYPE_LDAP_SERVER.
268
269         * gpgconf-comp.c (retrieve_options_from_file): Transfer the
270         NO_CHANGE flag from the file name option to the list option.
271
272 2008-06-19  Werner Koch  <wk@g10code.com>
273
274         * gpgconf-comp.c (GC_ARG_TYPE_ALIAS_LIST): New.
275         (gc_arg_type): Add fallback type.
276         (gc_options_gpg): Add option "group".
277
278 2008-06-12  Marcus Brinkmann  <marcus@g10code.de>
279
280         * gpgconf-comp.c (gc_options_gpgsm): Add option keyserver.
281
282 2008-05-26  Marcus Brinkmann  <marcus@g10code.de>
283
284         * gpgconf-comp.c: Replace pathname by filename everywhere.
285
286         * gpgconf.c (enum cmd_and_opt_values): Add aListDirs.
287         (opts): Add aListDirs option.
288         (main): Handle aListDirs.
289         * gpgconf.h (gc_percent_escape): New declaration.
290         * gpgconf-comp.c (my_percent_escape): Make non-static and rename
291         to ...
292         (gc_percent_escape): ... this.  Change all callers.
293         
294 2008-05-26  Werner Koch  <wk@g10code.com>
295
296         * gpgconf-comp.c (gpg_agent_runtime_change) [W32]: Issue
297         "reloadagent" command to gpg-agent.
298
299         * gpg-connect-agent.c (main): Allow server command on the command
300         line.
301
302 2008-05-20  Marcus Brinkmann  <marcus@g10code.de>
303
304         * gpgconf.h (gc_component_check_programs): Rename to ...
305         (gc_check_programs): ... this.
306         (gc_component_change_options): Add argument OUT.
307         (gc_component_check_options): New function.
308         * gpgconf.c (enum cmd_and_opt_values): New option aCheckOptions.
309         (opts): Add new option aCheckOptions (aka --check-options).
310         (main): Handle new option aCheckOptions.
311         * gpgconf-comp.c (gc_component_check_programs): Rename to ...
312         (gc_check_programs): ... this.  Refactor core of it to ...
313         (gc_component_check_options): ... this new function.
314         (gc_component_change_options): Add new argument OUT.  Externally
315         verify all changes.  Implement option --dry-run.
316
317 2008-05-09  Werner Koch  <wk@g10code.com>
318
319         * gpgconf-comp.c (my_dgettext) [USE_SIMPLE_GETTEXT]:  Hack to
320         parly support translations.
321
322 2008-04-08  Werner Koch  <wk@g10code.com>
323
324         * gpgconf-comp.c (gc_options_gpg): Add --auto-key-locate.
325
326 2008-03-26  Werner Koch  <wk@g10code.com>
327
328         * make-dns-cert.c: Include unistd.h.  Use config.h if requested.
329         (cert_key): Protect read against EINTR.
330         (main): Print SVN revision for standalone version.
331
332 2008-03-05  Werner Koch  <wk@g10code.com>
333
334         * gpg-connect-agent.c (arithmetic_op): Add logical not, or and and.
335         (get_var_ext): Add functions errcode, errsource and errstring.
336         (read_and_print_response): Store server reply in $? variable.
337         (main): Implement IF command.
338
339 2008-02-27  Marcus Brinkmann  <marcus@g10code.de>
340
341         * gpgconf-comp.c (option_check_validity): For now, error out on
342         empty strings.
343         (enum): Add GC_ARG_TYPE_PUB_KEY and GC_ARG_TYPE_SEC_KEY.
344
345 2008-02-01  Marcus Brinkmann  <marcus@g10code.de>
346
347         * gpgconf-comp.c (gc_component_list_options): Fix memcpy.
348         Reported by Marc Mutz.
349
350 2008-01-22  Werner Koch  <wk@g10code.com>
351
352         * gpgconf-comp.c: Use gnupg domain for honor-http-proxy.  Make
353         "LDAP server list" group title translatable.
354
355 2008-01-17  Marcus Brinkmann  <marcus@g10code.de>
356
357         * gpgconf-comp.c (change_options_program): Strip duplicated
358         utf8-strings entries for gnupg backend.  Don't create them either.
359
360 2007-12-10  Marcus Brinkmann  <marcus@g10code.de>
361
362         * gpgconf-comp.c (gc_component_list_options): Fix up expert level
363         of group.
364
365 2007-12-04  Marcus Brinkmann  <marcus@g10code.de>
366
367         * gpgconf-comp.c (gc_component_list_components): Do not print a
368         trailing semi-colon to ensure forward compatibility, as this would
369         indicate another empty field.
370         (gc_process_gpgconf_conf): Likewise.
371
372 2007-11-15  Werner Koch  <wk@g10code.com>
373
374         * gpg-connect-agent.c (start_agent): Adjust changed
375         send_pinentry_environment.
376
377 2007-10-24  Werner Koch  <wk@g10code.com>
378
379         * gpg-connect-agent.c (substitute_line): Restore temporary nul
380         marker.
381         (main): Add /while command.
382
383 2007-10-23  Werner Koch  <wk@g10code.com>
384
385         * gpgconf-comp.c (gc_process_gpgconf_conf): Add arg
386         LISTFP.  Changed all callers.
387         * gpgconf.h: Add gc_error.
388         * gpgconf.c: Add command --list-config.
389         (get_outfp): New.
390         (main): Make --output work.
391
392         * gpgconf-comp.c (gc_options_gpg_agent): Replace accidently used
393         GC_BACKEND_SCDAEMON.  We should consider to create these tables
394         from plain files.
395
396 2007-10-22  Werner Koch  <wk@g10code.com>
397
398         * gpgconf-comp.c (retrieve_options_from_program): Replace use of
399         popen by our gnupg_spawn_process_fd.  This is required because
400         popen under Windows can't handle long filenames.
401
402 2007-10-19  Werner Koch  <wk@g10code.com>
403
404         * symcryptrun.c (confucius_get_pass): Use utf8 switching functions.
405
406         * gpg-connect-agent.c (get_var_ext): New.
407         (substitute_line): Use it.
408         (assign_variable): Implement /slet in terms of get_var_ext.
409         (main): New option -s/--subst.
410         (add_definq): Add arg IS_VAR.  Change all callers.
411         (main): Add command /definq.
412         (handle_inquire): Implement new command.
413         (substitute_line_copy): New.
414         (unescape_string, unpercent_string): New.
415         * no-libgcrypt.c (gcry_set_outofcore_handler) 
416         (gcry_set_fatalerror_handler, gcry_set_log_handler): New.
417         * Makefile.am (gpg_connect_agent_LDADD): Link to libreadline.
418
419         * gpgconf-comp.c (retrieve_options_from_file): Don't call fclose
420         with NULL.  Fixes bug 842.
421
422 2007-10-12  Werner Koch  <wk@g10code.com>
423
424         * gpg-connect-agent.c (substitute_line): Allow ${foo} syntax.
425
426 2007-10-11  Werner Koch  <wk@g10code.com>
427
428         * gpg-connect-agent.c (get_var): Expand environment variables.
429         Suggested by Marc Mutz.
430         (set_var): Return the value.
431         (assign_variable): Add arg syslet.
432         (main): New command /slet.
433         (gnu_getcwd): New.
434         (assign_variable): Add tag cwd, and *dir.
435
436 2007-10-02  Werner Koch  <wk@g10code.com>
437
438         * no-libgcrypt.c (gcry_malloc_secure): New.
439
440         * gpg-connect-agent.c (set_var, set_int_var, get_var)
441         (substitute_line, show_variables, assign_variable)
442         (do_open, do_close, do_showopen): New.
443         (main): Add new commands /nosubst, /subst, /let, /showvar, /open,
444         /close and /showopen.
445         (main): New commands /run and /bye.
446
447 2007-10-01  Werner Koch  <wk@g10code.com>
448
449         * gpg-connect-agent.c (do_sendfd): Use INT2FD for assuan_sendfd.
450
451 2007-09-26  Werner Koch  <wk@g10code.com>
452
453         * gpg-connect-agent.c (main): Print the first response from the
454         server.
455
456 2007-09-14  Werner Koch  <wk@g10code.com>
457
458         * gpgconf-comp.c: Make a string translatable.
459
460 2007-09-04  Moritz Schulte  <moritz@g10code.com>
461
462         * gpgsm-gencert.sh: Use printf instead of echo.
463
464 2007-09-04  Moritz Schulte  <moritz@g10code.com>
465
466         * gpgkey2ssh.c: Include sysutils.h so that gnupg_tmpfile() is
467         declared.
468
469 2007-08-31  Werner Koch  <wk@g10code.com>
470
471         * gpgparsemail.c: Support PGP/MIME signed messages.
472
473         * gpgconf-comp.c (gc_component_list_components): List the programs
474         names.
475
476 2007-08-29  Werner Koch  <wk@g10code.com>
477
478         * gpgconf.c: New command --check-programs.
479         * gpgconf-comp.c (gc_component_check_programs): New.
480         (gc_backend): Add member MODULE_NAME and add these module names.
481         (retrieve_options_from_program): Use module name so that we use an
482         absolute file name and don't rely on $PATH.
483         (collect_error_output): New.
484         * no-libgcrypt.c (gcry_control): New.
485
486 2007-08-28  Werner Koch  <wk@g10code.com>
487
488         * gpgconf-comp.c <gpg-agent>: Add options --max-passphrase-days
489         and --enable-passphrase-history.
490
491 2007-08-27  Werner Koch  <wk@g10code.com>
492
493         * gpg-check-pattern.c: New
494         * Makefile.am (libexec_PROGRAMS): Add unless DISABLE_REGEX.
495
496 2007-08-24  Werner Koch  <wk@g10code.com>
497
498         * gpgconf-comp.c <gpg-agent>: Add options --check-passphrase-pattern,
499         --min-passphrase-nonalpha and --enforce-passphrase-constraints and
500         move them into a new "passphrase policy" group.
501         (gc_component) [W32]: Enable dirmngr.
502
503 2007-08-21  Werner Koch  <wk@g10code.com>
504
505         * gpgkey2ssh.c (key_to_blob): Use gnupg_tmpfile().
506
507 2007-08-02  Werner Koch  <wk@g10code.com>
508
509         * gpgconf-comp.c: Factor the public GC_OPT_FLAG constants out and
510         include gc-opt-flags.h.
511
512 2007-07-17  Werner Koch  <wk@g10code.com>
513
514         * gpgconf-comp.c: Add --encrypt-to and --default-key to gpg and
515         gpgsm.
516
517 2007-07-16  Marcus Brinkmann  <marcus@g10code.de>
518
519         * gpg-connect-agent.c (main): Bail out if write fails.
520
521 2007-07-05  Marcus Brinkmann  <marcus@g10code.de>
522
523         * symcryptrun.c (confucius_get_pass): Define orig_codeset if
524         [ENABLE_NLS], not [HAVE_LANGINFO_CODESET].
525
526 2007-06-26  Werner Koch  <wk@g10code.com>
527
528         * gpgconf-comp.c (key_matches_user_or_group) [W32]: Implement user
529         name matching.
530         (GPGNAME): New.  Use it instead of "gpg".
531         (gc_component) [W32]:  Disable dirmngr for now.
532         (gc_component_retrieve_options): Ignore components without options.
533         (gc_component_change_options): Ditto.
534         (gc_component_list_options): Ditto.
535         (gc_component_find, gc_component_list_components): Ditto.
536
537 2007-06-19  Werner Koch  <wk@g10code.com>
538
539         * gpgconf-comp.c (percent_escape): Rename to my_percent_escape.
540         Changed all callers.
541
542 2007-06-18  Marcus Brinkmann  <marcus@g10code.de>
543
544         * gpgconf-comp.c (retrieve_options_from_file): Close LIST_FILE.
545         (copy_file): In error case, save/restore errno.  Close SRC and DST.
546         (gc_component_change_options): Catch error from unlink().  Remove
547         target backup file before rename().
548
549 2007-06-15  Marcus Brinkmann  <marcus@g10code.de>
550
551         * gpgconf-comp.c (copy_file) [HAVE_W32_SYSTEM]: New function.
552         (change_options_file, change_options_program) [HAVE_W32_SYSTEM]:
553         Copy backup file.
554         (gc_component_change_options) [HAVE_W32_SYSTEM]: Non-atomic replace.
555         (gc_process_gpgconf_conf): Rename fname to fname_arg and
556         fname_buffer to fname, initialize fname with fname_arg, discarding
557         const qualifier.
558
559 2007-06-15  Werner Koch  <wk@g10code.com>
560
561         * Makefile.am (symcryptrun_LDADD): It is LIBICONV and not LIBINCONV.
562         (gpgconf_LDADD, symcryptrun_LDADD): Add W32SOCKLIBS.
563
564 2007-06-14  Werner Koch  <wk@g10code.com>
565
566         * symcryptrun.c (main): Setup default socket name for
567         simple-pwquery.
568         (MAP_SPWQ_ERROR_IMPL): New.  Use it for all spwq error returns.
569
570 2007-06-12  Werner Koch  <wk@g10code.com>
571
572         * gpgconf-comp.c (gc_process_gpgconf_conf): Replace
573         GNUPG_SYSCONFDIR by a function call.
574
575         * gpg-connect-agent.c (main): Replace some calls by
576         init_common_subsystems.
577         * gpgconf.c (main): Ditto.
578         * symcryptrun.c (main): Ditto.
579
580 2007-06-11  Werner Koch  <wk@g10code.com>
581
582         * symcryptrun.c (main) [W32]: Call pth_init.
583         * gpgconf.c (main) [W32]: Call pth_init
584         * gpg-connect-agent.c (main) [W32]: Call pth_init.
585
586 2007-06-06  Werner Koch  <wk@g10code.com>
587
588         * Makefile.am (bin_PROGRAMS) [W32]: Do not build gpgparsemail.
589
590         * gpgconf-comp.c [W32]: Do not include pwd.h and grp.h.
591         (key_matches_user_or_group) [W32]: For now always return false.
592
593         * symcryptrun.c (i18n_init): Remove.
594         * gpgconf.c (i18n_init): Remove.
595         * gpg-connect-agent.c (i18n_init): Remove.
596
597 2007-05-19  Marcus Brinkmann  <marcus@g10code.de>
598
599         * symcryptrun.c (confucius_get_pass): Free ORIG_CODESET on error.
600
601 2007-05-08  Werner Koch  <wk@g10code.com>
602
603         * sockprox.c: New.  It needs to be build manually. By Moritz
604         Schulte.
605
606 2007-04-20  Werner Koch  <wk@g10code.com>
607
608         * symcryptrun.c (my_gcry_logger): Removed.
609         (main): Call setup_libgcrypt_logging.
610
611 2007-04-03  Werner Koch  <wk@g10code.com>
612
613         * gpgconf-comp.c: Allow changing of --allow-mark-trusted.
614
615         * gpg-connect-agent.c (main): New option --decode and commands
616         decode and undecode.
617         (read_and_print_response): Implement option.
618
619 2007-03-20  Werner Koch  <wk@g10code.com>
620
621         * gpgconf-comp.c (gc_options_gpgsm): Add p12-charset.
622
623 2007-03-07  Werner Koch  <wk@g10code.com>
624
625         * applygnupgdefaults: New.
626         * Makefile.am (sbin_SCRIPTS): Add it
627
628 2007-03-06  Werner Koch  <wk@g10code.com>
629
630         * gpgconf-comp.c: Include pwd.h and grp.h.
631         (GC_OPT_FLAG_NO_CHANGE): New.
632         (gc_component_change_options): Implement it.
633         (gc_options_gpg_agent): Add options for all ttl values and
634         min-passphrase-length.  Apply new flag to some of them.
635         (gc_process_gpgconf_conf, key_matches_user_or_group): New.
636         (gc_component_change_options): Factor some code out to ..
637         (change_one_value): .. new. 
638         (gc_component_retrieve_options): Allow -1 for COMPONENT to iterate
639         over al components.
640         * gpgconf.c (main): New commands --check-config and
641         --apply-defaults.  Call gc_process_gpgconf_conf.
642
643 2007-01-31  Werner Koch  <wk@g10code.com>
644
645         * Makefile.am (symcryptrun_LDADD): Add LIBICONV.
646         (gpgkey2ssh_LDADD): Ditto.
647
648 2006-12-13  David Shaw  <dshaw@jabberwocky.com>
649
650         * Makefile.am (gpgsplit_LDADD): Link to LIBINTL if we're using the
651         built-in code.
652
653 2006-12-07  David Shaw  <dshaw@jabberwocky.com>
654
655         * Makefile.am: Link to iconv for jnlib dependency.
656
657 2006-11-23  Werner Koch  <wk@g10code.com>
658
659         * Makefile.am (gpg_connect_agent_LDADD): Add NETLIBS.
660
661 2006-11-21  Werner Koch  <wk@g10code.com>
662
663         * gpgconf-comp.c (list_one_option): Cast print size_t arg.
664
665 2006-11-17  Werner Koch  <wk@g10code.com>
666
667         * gpgconf-comp.c: Made disable-keypad a basic option.
668
669 2006-11-03  Werner Koch  <wk@g10code.com>
670
671         * symcryptrun.c: Include signal.h and include pth.h only if test
672         asserts that it exists.
673
674 2006-10-23  Werner Koch  <wk@g10code.com>
675
676         * gpgconf-comp.c <gpgsm>: Add --cipher-algo.
677
678 2006-10-20  Werner Koch  <wk@g10code.com>
679
680         * gpgsm-gencert.sh: Enhanced the main menu. 
681
682 2006-10-12  Werner Koch  <wk@g10code.com>
683
684         * Makefile.am (gpg-zip, gpgsplit): Do not install due to a
685         conflict with gpg1.
686
687 2006-10-11  Werner Koch  <wk@g10code.com>
688
689         * gpgsm-gencert.sh: Allow generation of card keys.
690
691 2006-10-08  Werner Koch  <wk@g10code.com>
692
693         * Makefile.am (gpgkey2ssh_LDADD): Add LIBINTL. Suggested by
694         Andreas Metzler.
695
696 2006-09-22  Werner Koch  <wk@g10code.com>
697
698         * no-libgcrypt.c: Changed license to a simple all permissive one.
699
700 2006-09-20  Werner Koch  <wk@g10code.com>
701
702         * Makefile.am: Changes to allow parallel make runs.
703
704 2006-09-12  Werner Koch  <wk@g10code.com>
705
706         Replaced all call gpg_error_from_errno(errno) by
707         gpg_error_from_syserror().
708
709         * gpg-connect-agent.c (read_and_print_response): With verbosity
710         level 2 also print comment lines.
711
712 2006-09-06  Werner Koch  <wk@g10code.com>
713
714         * gpg-connect-agent.c: Switch everything to new Assuan error code
715         style.
716
717         * no-libgcrypt.c (out_of_core): Reanmed to ...
718         (out_of_memory): .. this to avoid name clash with util.h.
719
720 2006-08-21  Werner Koch  <wk@g10code.com>
721
722         * gpgsplit.c: New. Taken from 1.4. Adjusted to GnuPG2.
723
724         * Makefile.am (noinst_PROGRAMS): New.
725
726 2006-06-09  Marcus Brinkmann  <marcus@g10code.de>
727
728         * Makefile.am (gpgconf_LDADD): Add $(GPG_ERROR_LIBS).
729         (gpgkey2ssh_LDADD): Add ../jnlib/libjnlib.a.
730
731 2006-05-23  Werner Koch  <wk@g10code.com>
732
733         * gpgparsemail.c: Include config.h if available
734         (stpcpy): Conditional include it.
735
736         * gpgconf-comp.c (hextobyte): Removed as it is now availble in
737         jnlib.
738
739 2005-12-20  Werner Koch  <wk@g10code.com>
740
741         * gpgconf-comp.c (gc_options_gpg): Add allow-pka-lookup.
742
743 2005-12-14  Werner Koch  <wk@g10code.com>
744
745         * Makefile.am (bin_PROGRAMS): Build gpgparsemail.
746
747         * gpgparsemail.c (pkcs7_begin): New.
748         (parse_message, message_cb): Add support of direct pkcs signatures.
749
750 2005-10-19  Werner Koch  <wk@g10code.com>
751
752         * gpgconf-comp.c (gc_options_scdaemon): New option --disable-keypad.
753
754 2005-09-22  Werner Koch  <wk@g10code.com>
755
756         * rfc822parse.c (parse_field): Tread Content-Disposition special.
757
758 2005-10-08  Marcus Brinkmann  <marcus@g10code.de>
759
760         * Makefile.am (watchgnupg_LDADD): New variable.
761
762         * Makefile.am (gpgconf_LDADD): Add ../gl/libgnu.a after
763         ../common/libcommon.a.
764         (symcryptrun_LDADD, gpg_connect_agent_LDADD, gpgkey2ssh_LDADD):
765         Likewise.
766
767 2005-09-29  Marcus Brinkmann  <marcus@g10code.de>
768
769         * Makefile.am (AM_CFLAGS): Add $(LIBGCRYPT_CFLAGS).
770
771 2005-09-06  Werner Koch  <wk@g10code.com>
772
773         * rfc822parse.c, rfc822parse.h:  Changed license to LGPL.
774
775 2005-08-01  Werner Koch  <wk@g10code.com>
776
777         * gpgsm-gencert.sh: Allow entering a keygrip to generate a CSR from
778         an existing key.
779
780 2005-07-21  Werner Koch  <wk@g10code.com>
781
782         * gpgsm-gencert.sh: Reworked to allow for multiple email addresses
783         as well as DNsanmes and URi.  Present the parameter file before
784         creating the certificate.
785
786 2005-07-04  Marcus Brinkmann  <marcus@g10code.de>
787
788         * symcryptrun.c (SYMC_BAD_PASSPHRASE, SYMC_CANCELED): New symbols,
789         use instead constants.
790         (hash_string): New function copied from simple-gettext.c.
791         (confucius_get_pass): Take new argument CACHEID.
792         (confucius_process): Calculate cacheid and pass it to
793         confucius_get_pass.  Clear passphrase from cache if necessary.
794
795 2005-06-16  Werner Koch  <wk@g10code.com>
796
797         * gpg-connect-agent.c (read_and_print_response): Made LINELEN a
798         size_t.
799
800 2005-06-04  Marcus Brinkmann  <marcus@g10code.de>
801
802         * symcryptrun.c (main): Allow any number of arguments, don't use
803         first argument as input file name.  Pass extra arguments to
804         confucius_main.
805         (confucius_main): Accept new arguments argc and argv and pass them
806         to confucius_process.
807         (confucius_process): Accept new arguments argc and argv and pass
808         them to the confucius process.
809
810 2005-06-01  Werner Koch  <wk@g10code.com>
811
812         * symcryptrun.c: Include mkdtemp.h. 
813
814 2005-05-31  Werner Koch  <wk@g10code.com>
815
816         * watchgnupg.c: Make sure that PF_LCOAL and AF_LOCAL are defines.
817         Noted by Ray Link.
818
819 2005-05-28  Moritz Schulte  <moritz@g10code.com>
820
821         * gpgkey2ssh.c: New file.
822         * Makefile.am (bin_PROGRAMS): Added gpgkey2ssh.
823
824 2005-05-20  Werner Koch  <wk@g10code.com>
825
826         * gpg-connect-agent.c (add_definq, show_definq, clear_definq)
827         (handle_inquire): New.
828         (read_and_print_response): Handle INQUIRE command.
829         (main): Implement control commands.
830
831 2005-04-21  Werner Koch  <wk@g10code.com>
832
833         * symcryptrun.c (main): Optionally allow the input file as command
834         line argument.
835
836         * gpgconf-comp.c: Add gpgsm option disable-trusted-cert-crl-check.
837
838 2005-04-20  Werner Koch  <wk@g10code.com>
839
840         * gpgconf-comp.c: Add gpg-agent:disable-scdaemon.
841
842 2005-04-19  Marcus Brinkmann  <marcus@g10code.de>
843
844         * symcryptrun.c: Add --input option.
845
846 2005-04-15  Marcus Brinkmann  <marcus@g10code.de>
847
848         * symcryptrun.c (TEMP_FAILURE_RETRY): Define if not defined.
849
850         * symcryptrun.c (remove_file): New function.
851         (confucius_copy_file): Accept new argument PLAIN and shred the
852         file if it is set on error.
853
854         * Makefile.am: Define symcryptrun make variable depending on
855         BUILD_SYMCRYPTUN.
856         (bin_PROGRAMS): Add ${symcryptrun} instead symcryptrun.
857         (symcryptrun_LDADD): Use $(LIBUTIL_LIBS) instead of -lutil.
858
859 2005-04-11  Werner Koch  <wk@g10code.com>
860
861         * symcryptrun.c (confucius_mktmpdir): Changed to use mkdtmp(3).
862
863 2005-04-11  Marcus Brinkmann  <marcus@g10code.de>
864
865         * symcryptrun.c: Implement config file parsing.
866         
867         * Makefile.am (bin_PROGRAMS): Add symcryptrun.
868         (symcryptrun_SOURCES, symcryptrun_LDADD): New variables.
869         * symcryptrun.c: New file.
870
871 2005-03-31  Werner Koch  <wk@g10code.com>
872
873         * gpg-connect-agent.c (start_agent): Use PATHSEP_C instead of ':'.
874
875 2005-03-09  Werner Koch  <wk@g10code.com>
876
877         * gpgconf-comp.c <dirmngr>: Add honor-http-proxy.
878
879 2005-02-25  Werner Koch  <wk@g10code.com>
880
881         * no-libgcrypt.c (gcry_strdup): New.
882
883 2005-02-24  Werner Koch  <wk@g10code.com>
884
885         * gpg-connect-agent.c: New.
886         * Makefile.am: Add it. 
887
888 2004-12-21  Werner Koch  <wk@g10code.com>
889
890         * gpgconf-comp.c (get_config_pathname) [DOSISH]: Detect absolute
891         pathnames with a drive letter.
892
893 2004-12-15  Werner Koch  <wk@g10code.com>
894
895         * Makefile.am (bin_PROGRAMS) [W32]: Do not build watchgnupg.
896
897         * gpgconf-comp.c (gpg_agent_runtime_change) [W32]: No way yet to
898         send a signal.  Disable.
899         (change_options_file, change_options_program) [W32]: No link(2),
900         so we disable it.
901         (gc_component_change_options): Use rename instead of link.
902
903 2004-12-13  Werner Koch  <wk@g10code.com>
904
905         * gpgconf-comp.c <ignore-ocsp-service-url>: Fixed typo.
906
907 2004-11-24  Werner Koch  <wk@g10code.com>
908
909         * gpgconf-comp.c <dirmngr>: Add --ignore-http-dp, --ignore-ldap-dp
910         and --ignore-ocsp-service-url.
911
912 2004-11-23  Werner Koch  <wk@g10code.com>
913
914         * gpgconf-comp.c <dirmngr>: Add the proxy options.
915         <gpgsm>: Add --prefer-system-daemon.
916
917 2004-11-11  Werner Koch  <wk@g10code.com>
918
919         * watchgnupg.c (main): Fixed test for read error.
920
921 2004-10-22  Werner Koch  <wk@g10code.com>
922
923         * Makefile.am (bin_SCRIPTS): Add gpgsm-gencert.sh
924
925         * gpgsm-gencert.sh: Fixed copyright; its part of GnuPG thus FSF.
926
927 2004-10-01  Werner Koch  <wk@g10code.com>
928
929         * gpgconf-comp.c: Made all strings for --log-file read the same.
930         
931 2004-10-01  Werner Koch  <wk@g10code.com>
932
933         * gpgconf-comp.c (my_dgettext): Also switch codeset and directory
934         for the other used domains (i.e. dirmngr).
935
936         * gpgconf.c (main): Fixed translation markers.
937
938 2004-09-30  Werner Koch  <wk@g10code.com>
939
940         * gpgconf.c (i18n_init): Always use LC_ALL.
941
942         * Makefile.am: Adjusted for gettext 0.14.
943
944 2004-09-29  Werner Koch  <wk@g10code.com>
945
946         * gpgconf-comp.c: Made the entries fro GROUPs translatable.
947         Include i18n.h.
948         (my_dgettext): Hack to use the gnupg2 domain.
949
950 2004-08-09  Moritz Schulte  <moritz@g10code.com>
951
952         * gpgsm-gencert.sh: New file.
953
954 2004-06-16  Werner Koch  <wk@gnupg.org>
955
956         * rfc822parse.c (rfc822parse_get_field): Add arg VALUEOFF.
957
958 2004-06-14  Werner Koch  <wk@gnupg.org>
959
960         * no-libgcrypt.c (gcry_realloc, gcry_xmalloc, gcry_xcalloc): New.
961
962         * gpgconf-comp.c (retrieve_options_from_program) 
963         (retrieve_options_from_file, change_options_file) 
964         (change_options_program, gc_component_change_options): Replaced
965         getline by read_line and test for allocation failure.
966
967 2004-05-21  Marcus Brinkmann  <marcus@g10code.de>
968
969         * gpgconf-comp.c (gc_options_dirmngr): Remove CRL group, put its
970         only option "max-replies" into LDAP group.
971         (gc_component): Change description of dirmngr to "Directory
972         Manager".
973
974         * gpgconf-comp.c (gc_component_change_options): Move the
975         per-process backup file into a standard location.
976
977 2004-05-03  Werner Koch  <wk@gnupg.org>
978
979         * gpgconf-comp.c: Add --allow-mark-trusted for the gpg-agent.
980
981 2004-04-30  Werner Koch  <wk@gnupg.org>
982
983         * gpgconf-comp.c: Added more runtime flags for the gpg-agent
984         backend.
985
986 2004-04-29  Marcus Brinkmann  <marcus@g10code.de>
987
988         * gpgconf-comp.c (change_options_program): Turn on utf8-strings in
989         the gpgconf specific part of the config file for the GnuPG
990         backend.
991
992 2004-04-28  Werner Koch  <wk@gnupg.org>
993
994         * gpgconf-comp.c: Add --ocsp-signer for the dirmngr backend.
995
996 2004-04-20  Marcus Brinkmann  <marcus@g10code.de>
997
998         * gpgconf-comp.c (gc_options_gpg_agent): Change type of
999         ignore-cache-for-signing option to GC_ARG_TYPE_NONE.
1000
1001 2004-04-07  Werner Koch  <wk@gnupg.org>
1002
1003         * gpgconf-comp.c (my_dgettext): Switch the codeset once to utf-8.
1004         Allow building with out NLS.
1005
1006 2004-03-23  Marcus Brinkmann  <marcus@g10code.de>
1007
1008         * gpgconf-comp.c (gc_options_dirmngr): Set GC_OPT_FLAG_ARG_OPT for
1009         "LDAP Server".
1010         (change_options_file): Remove assertion that tests that this flag
1011         is not present.  Handle an empty string in OPTION->new_value.
1012
1013         * gpgconf.c (main): Remove obsolete warning.
1014
1015 2004-03-23  Werner Koch  <wk@gnupg.org>
1016
1017         * gpgconf-comp.c (gc_options_gpg): New.
1018         (gc_component_t, gc_component): Add GC_BACKEND_GPG.
1019         (gc_options_dirmngr): Add allow-ocsp.
1020
1021 2004-03-23  Marcus Brinkmann  <marcus@g10code.de>
1022
1023         * gpgconf-comp.c (gc_flag): Add missing flags.
1024
1025         * gpgconf-comp.c: Include <signal.h>.
1026         (gc_backend): Add new member runtime_change.
1027         (gpg_agent_runtime_change): New function.
1028         (gc_component_change_options): New variable runtime.  Initialize
1029         it.  If an option is changed that has the GC_OPT_FLAG_RUNTIME bit
1030         set, also set the corresponding runtime variable.  Finally, call
1031         the runtime_change callback of the backend if needed.   
1032
1033 2004-03-16  Werner Koch  <wk@gnupg.org>
1034
1035         * gpgconf-comp.c (gc_options_gpg_agent): Implemented.
1036         (gc_options_gpgsm, gc_options_scdaemon): Implemented.
1037         (gc_backend_t): Add GC_BACKEND_SCDAEMON.
1038
1039 2004-03-12  Marcus Brinkmann  <marcus@g10code.de>
1040
1041         * gpgconf-comp.c (gc_component_change_options): Set the filenames
1042         of the option's backend, not of the component.
1043         Also use GC_BACKEND_NR, not GC_COMPONENT_NR.
1044
1045 2004-03-09  Werner Koch  <wk@gnupg.org>
1046
1047         * gpgconf-comp.c [_riscos_]: Removed special code for RISC OS; we
1048         don't want to clutter our code with system dependent stuff.
1049
1050 2004-03-08  Marcus Brinkmann  <marcus@g10code.de>
1051
1052         * gpgconf-comp.c (retrieve_options_from_file): Quote each string
1053         in the list, not only the first.
1054
1055 2004-02-26  Marcus Brinkmann  <marcus@g10code.de>
1056
1057         * gpgconf-comp.c (gc_component_list_options): Do not print empty
1058         groups.
1059
1060         * gpgconf-comp.c (option_check_validity): Check if option is
1061         active.
1062         (change_options_file): Implement.
1063
1064         * gpgconf-comp.c (retrieve_options_from_program): Remove broken
1065         string handling.
1066
1067         * gpgconf-comp.c (change_options_program): Support all types of
1068         options, including list types.
1069
1070         * README.gpgconf: Fix description of arguments.
1071         * gpgconf-comp.c (option_check_validity): Rewritten to properly
1072         support optional arguments in lists.
1073
1074         * README.gpgconf: Add info about optional arg and arg type 0.
1075         * gpgconf-comp.c (gc_component_change_options): Parse list of
1076         arg type 0 options.
1077         (option_check_validity): Add new argument NEW_VALUE_NR.  Perform
1078         rigorous validity checks.
1079         (change_options_program): Disable an option also if we have a new
1080         value for it.
1081
1082 2004-02-25  Marcus Brinkmann  <marcus@g10code.de>
1083
1084         * gpgconf-comp.c (gc_component_list_options): Correct output for
1085         lists of arg type none.
1086         (struct gc_option): Add new member new_flags.
1087         (option_check_validity): Check OPTION->new_flags beside
1088         OPTION->new_value.  Add new argument FLAGS.
1089         (gc_component_change_options): Support default flag correctly.
1090         (change_options_program): Likewise.
1091
1092 2004-02-24  Marcus Brinkmann  <marcus@g10code.de>
1093
1094         * README.gpgconf: Revert last change.  Add new flags "default",
1095         "default desc" and "no arg desc".  Add new field ARGDEF.  Add new
1096         field FLAG to backend interface.
1097         * gpgconf-comp.c (struct gc_option): Make flags of type unsigned
1098         long.
1099         (gc_component_list_options): Adjust type for flags.
1100         Add default argument field.
1101         (retrieve_options_from_program): Use "1" as value for non-option
1102         arguments, not "Y".
1103         (gc_component_change_options): Read in flags from input.
1104
1105 2004-02-23  Marcus Brinkmann  <marcus@g10code.de>
1106
1107         * README.gpgconf: Change meaning of type 0 options value if it is
1108         the empty string or "0".
1109
1110         * gpgconf.h (struct): Add member runtime.
1111         * gpgconf.c: Add new option oRuntime.
1112         (main): Same here.
1113
1114         * gpgconf-comp.c (hextobyte): New function.
1115         (percent_deescape): New function.
1116         (get_config_pathname): Percent deescape pathname if taken from
1117         option (default) value.  Use default value only if it exists and
1118         is not empty.  Use empty string otherwise.  Don't include leading
1119         quote in pathname.
1120         (change_options_program): Percent deescape string before writing
1121         it out.
1122         
1123         * gpgconf-comp.c (gc_component_list_options): Do not skip groups
1124         on output.
1125
1126 2004-02-18  Werner Koch  <wk@gnupg.org>
1127
1128         * gpgconf-comp.c: Added empty components for gpgsm and scdaemon.
1129
1130 2004-02-12  Werner Koch  <wk@gnupg.org>
1131
1132         * watchgnupg.c (main): Implement option "--".
1133         (print_version): New.
1134
1135         * Makefile.am: Include cmacros.am for common flags.
1136
1137 2004-02-03  Werner Koch  <wk@gnupg.org>
1138
1139         * addgnupghome: Try to use getent, so that it also works for NIS
1140         setups.
1141
1142 2004-01-31  Marcus Brinkmann  <marcus@g10code.de>
1143
1144         * gpgconf-comp.c: Some bug fixes, parse only defaults from the
1145         program, and read the current values from the configuration file
1146         directly.
1147
1148 2004-01-30  Marcus Brinkmann  <marcus@g10code.de>
1149
1150         * gpgconf-comp.c (gc_error): New function, use it instead of
1151         error() throughout.
1152
1153         * gpgconf-comp.c: Use xmalloc, libcommon's asctimestamp and
1154         gnupg_get_time, fix error() invocation and use getline()
1155         consistently.
1156         
1157 2004-01-30  Werner Koch  <wk@gnupg.org>
1158
1159         * addgnupghome: Also set the group of copied files. 
1160
1161 2004-01-30  Werner Koch  <wk@gnupg.org>
1162
1163         * Makefile.am (sbin_SCRIPTS): New, to install addgnupghome.
1164         (EXTRA_DIST): Added rfc822parse.c rfc822parse.h gpgparsemail.c
1165         which might be useful for debugging.
1166
1167 2004-01-29  Werner Koch  <wk@gnupg.org>
1168
1169         * addgnupghome: New.
1170
1171 2004-01-29  Marcus Brinkmann  <marcus@g10code.de>
1172
1173         * gpgconf-list.c: File removed.
1174         * README.gpgconf: New file.
1175         * gpgconf-comp.c: New file.
1176         * Makefile.am (gpgconf_SOURCES): Remove gpgconf-list.c, add
1177         gpgconf-comp.c.
1178
1179 2004-01-16  Werner Koch  <wk@gnupg.org>
1180
1181         * watchgnupg.c (main): Need to use FD_ISSET for the client
1182         descriptors too; aiiih.  Set the listening socket to non-blocking.
1183
1184 2004-01-10  Werner Koch  <wk@gnupg.org>
1185
1186         * Makefile.am: Use GPG_ERROR_CFLAGS
1187         
1188 2004-01-05  Werner Koch  <wk@gnupg.org>
1189
1190         * Manifest: New.
1191         * gpgconf.c, gpgconf.h, gpgconf-list.c: New. A skeleton for now.
1192         * no-libgcrypt.c: New.
1193         * Makefile.am: Add above.
1194
1195 2003-12-23  Werner Koch  <wk@gnupg.org>
1196
1197         * Makefile.am: New.
1198         * watchgnupg.c: New.
1199
1200
1201  Copyright 2003, 2004, 2005, 2006, 2007, 2008,
1202            2009, 2010 Free Software Foundation, Inc.
1203
1204  This file is free software; as a special exception the author gives
1205  unlimited permission to copy and/or distribute it, with or without
1206  modifications, as long as this notice is preserved.
1207
1208  This file is distributed in the hope that it will be useful, but
1209  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1210  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.