* gpgkeys_hkp.c (search_key): Catch a mangled input file (useful if
[gnupg.git] / keyserver / ChangeLog
1 2004-01-11  David Shaw  <dshaw@jabberwocky.com>
2
3         * gpgkeys_hkp.c (search_key): Catch a mangled input file (useful
4         if something other than GnuPG is calling the program).
5         (main): Avoid possible pre-string write.  Noted by Christian
6         Biere.
7
8         * gpgkeys_ldap.c (main): Avoid possible pre-string write.
9
10 2003-12-28  David Shaw  <dshaw@jabberwocky.com>
11
12         * gpgkeys_hkp.c (send_key, get_key, main): Work with new HTTP code
13         that passes the proxy in from the outside.  If the command file
14         sends a proxy, use it.  If it sends "http-proxy" with no
15         arguments, use $http_proxy from the environment.
16
17 2003-12-28  Stefan Bellon  <sbellon@sbellon.de>
18
19         * gpgkeys_hkp.c, gpgkeys_ldap.c [__riscos__]: Removal of
20         unnecessary #ifdef __riscos__ sections.
21
22 2003-11-27  Werner Koch  <wk@gnupg.org>
23
24         * gpgkeys_hkp.c (get_key): Fixed invalid use of fprintf without
25         format string.
26
27 2003-10-25  Werner Koch  <wk@gnupg.org>
28
29         * Makefile.am (gpgkeys_hkp_LDADD): Replaced INTLLIBS by LIBINTL.
30
31 2003-07-10  David Shaw  <dshaw@jabberwocky.com>
32
33         * Makefile.am: Use W32LIBS where appropriate.
34
35 2003-05-30  David Shaw  <dshaw@jabberwocky.com>
36
37         * gpgkeys_hkp.c, gpgkeys_ldap.c: #include <getopt.h> if it is
38         available.  Also include extern references for optarg and optind
39         since there is no guarantee that any header file will include
40         them.  Standards?  We don't need no stinkin' standards
41
42         * Makefile.am: Use @GETOPT@ to pull in libiberty on those
43         platforms that need it.
44
45 2003-04-08  David Shaw  <dshaw@jabberwocky.com>
46
47         * gpgkeys_hkp.c (dehtmlize, parse_hkp_index): Fix memory
48         corruption bug on some platforms.
49
50 2003-03-11  David Shaw  <dshaw@jabberwocky.com>
51
52         * gpgkeys_hkp.c (get_key): Properly handle CRLF line endings in
53         the armored key.
54         (main): Accept "try-dns-srv" option.
55
56         * Makefile.am: Use @CAPLIBS@ to link in -lcap if we are using
57         capabilities.  Use @SRVLIBS@ to link in the resolver if we are
58         using DNS SRV.
59
60 2003-02-11  David Shaw  <dshaw@jabberwocky.com>
61
62         * Makefile.am: Use a local copy of libexecdir along with @PACKAGE@
63         so it can be easily overridden at make time.
64
65 2003-01-29  David Shaw  <dshaw@jabberwocky.com>
66
67         * gpgkeys_mailto.in: Fix regexp to work properly if the "keyid" is
68         not a keyid, but rather a text string from the user ID.
69
70 2003-01-06  David Shaw  <dshaw@jabberwocky.com>
71
72         * gpgkeys_hkp.c (get_key): Use options=mr when getting a key so
73         keyserver doesn't attach the HTML header which we will just have
74         to discard.
75
76 2002-11-17  David Shaw  <dshaw@jabberwocky.com>
77
78         * gpgkeys_ldap.c (main), gpgkeys_hkp.c (main): Use new keyserver
79         protocol version.
80
81 2002-11-14  David Shaw  <dshaw@jabberwocky.com>
82
83         * gpgkeys_ldap.c (get_key): The deduping code requires
84         "pgpcertid", but that was not available when running without
85         verbose on.  Noted by Stefan.
86
87 2002-11-10  David Shaw  <dshaw@jabberwocky.com>
88
89         * gpgkeys_ldap.c (get_key): Fix typo in deduping code.
90
91 2002-11-05  David Shaw  <dshaw@jabberwocky.com>
92
93         * gpgkeys_ldap.c (key_in_keylist, add_key_to_keylist,
94         free_keylist, get_key, search_key): The LDAP keyserver doesn't
95         remove duplicates, so remove them locally.  Do not include the key
96         modification time in the search response.
97
98 2002-11-04  David Shaw  <dshaw@jabberwocky.com>
99
100         * gpgkeys_hkp.c (send_key), gpgkeys_ldap.c (send_key): Properly
101         handle an input file that does not include any key data at all.
102
103 2002-10-24  David Shaw  <dshaw@jabberwocky.com>
104
105         * gpgkeys_hkp.c (main), gpgkeys_ldap.c (main): Add -V flag to
106         output protocol and program version.
107
108 2002-10-21  David Shaw  <dshaw@jabberwocky.com>
109
110         * Makefile.am: Anything linking with libutil.a needs INTLLIBS as
111         well on platforms where INTLLIBS is set.
112
113 2002-10-14  David Shaw  <dshaw@jabberwocky.com>
114
115         * gpgkeys_hkp.c (write_quoted): Use %-encoding instead of
116         \-encoding.
117         (parse_hkp_index): Use new keyserver key listing format, and add
118         support for disabled keys via include-disabled.
119
120         * gpgkeys_ldap.c (get_key): Don't print keysize unless it's >0.
121         (printquoted): Use %-encoding instead of \-encoding.
122         (search_key): Use new keyserver key listing format.
123
124 2002-10-08  David Shaw  <dshaw@jabberwocky.com>
125
126         * gpgkeys_ldap.c (search_key, main): Make sure LDAP values are
127         freed in case of error.
128
129         * gpgkeys_ldap.c (fail_all): New function to unwind a keylist and
130         error each item.
131         (main): Call fail_all from here, as needed.  Also add a NO_MEMORY
132         error in an appropriate place and fix error return code.
133         (ldap_err_to_gpg_err): Add KEYSERVER_UNREACHABLE.
134
135         * gpgkeys_hkp.c (fail_all): New function to unwind a keylist and
136         error each item.
137         (main): Call fail_all from here.  Also add a NO_MEMORY error in an
138         appropriate place.
139         (get_key): Use new UNREACHABLE error for network errors.
140
141 2002-09-26  Werner Koch  <wk@gnupg.org>
142
143         * gpgkeys_ldap.c (send_key): Removed non-constant initializers.
144
145 2002-09-24  David Shaw  <dshaw@jabberwocky.com>
146
147         * gpgkeys_ldap.c (ldap_err_to_gpg_err, ldap_to_gpg_err, send_key,
148         get_key, search_key, main): Some minor error reporting
149         enhancements for use with GPA (show reasons for KEY FAILED).
150
151         * gpgkeys_hkp.c (send_key, get_key, search_key, main): Some minor
152         error reporting enhancements for use with GPA (show reasons for
153         KEY FAILED).
154
155 2002-09-20  Werner Koch  <wk@gnupg.org>
156
157         * gpgkeys_hkp.c (handle_old_hkp_index): s/input/inp/ to avoid
158         shadowing warning.
159
160 2002-09-19  David Shaw  <dshaw@jabberwocky.com>
161
162         * gpgkeys_hkp.c (get_key, handle_old_hkp_index, search_key):
163         Properly handle line truncation.
164
165 2002-09-16  David Shaw  <dshaw@jabberwocky.com>
166
167         * gpgkeys_mailto.in: Add quasi-RFC-2368 mailto:email@addr?from=
168         syntax so people can set their own email address to respond to.
169
170         * gpgkeys_hkp.c (get_key): Properly respond with KEY FAILED (to
171         gpg) and "key not found" (to user) on failure.
172         
173 2002-09-13  David Shaw  <dshaw@jabberwocky.com>
174
175         * gpgkeys_hkp.c: (search_key, handle_old_hkp_index): Try and
176         request a machine-readable key index.  If the server supports
177         this, pass it through.  If the server does not support it, parse
178         the "index" page.
179
180 2002-09-12  Stefan Bellon  <sbellon@sbellon.de>
181
182         * gpgkeys_hkp.c: Tidied up RISC OS initializations.
183
184 2002-09-12  David Shaw  <dshaw@jabberwocky.com>
185
186         * gpgkeys_hkp.c (main): Remove warning - this is no longer
187         experimental code.
188
189 2002-09-09  Werner Koch  <wk@gnupg.org>
190
191         * gpgkeys_hkp.c (send_key, get_key, search_key): Check return
192         value of malloc.
193         (dehtmlize): Use ascii_tolower to protect against weird locales.
194         Cast the argument for isspace for the sake of broken HP/UXes.
195         (search_key): Check return value of realloc.
196
197 2002-09-09  David Shaw  <dshaw@jabberwocky.com>
198
199         * gpgkeys_ldap.c (get_key): Some compilers (RISC OS, HPUX c89)
200         don't like using variables as array initializers.
201
202         * gpgkeys_hkp.c (send_key): Use CRLF in headers.
203
204 2002-08-28  David Shaw  <dshaw@jabberwocky.com>
205
206         * gpgkeys_hkp.c (parse_hkp_index): Use same types on all
207         platforms.  This was probably leftover from earlier code where the
208         typing mattered.
209
210         * gpgkeys_hkp.c: Overall cleanup from iobuf conversion.  Be
211         consistent in m_alloc and malloc usage.  Remove include-disabled
212         (meaningless on HKP).  RISC OS tweak.
213
214 2002-08-27  David Shaw  <dshaw@jabberwocky.com>
215
216         * gpgkeys_hkp.c, Makefile.am: Convert over to using iobufs.
217
218         * gpgkeys_hkp.c (http_get, http_post): Use CRLF for line endings.
219
220         * gpgkeys_hkp.c: Include util.h on RISC OS as per Stefan.  Include
221         a replacement for hstrerror() for those platforms (such as RISC
222         OS) that don't have it.
223
224 2002-08-26  David Shaw  <dshaw@jabberwocky.com>
225
226         * Makefile.am: May as well include gpgkeys_hkp.c in the
227         distribution now.  It works well enough without proxies, and isn't
228         built by default.  It would be good to get some test experience
229         with it.
230
231         * gpgkeys_hkp.c (main): Don't warn about include-subkeys - it
232         isn't unsupported, it's actually non-meaningful in the context of
233         HKP (yet).
234         
235         * gpgkeys_hkp.c (parse_hkp_index, dehtmlize): Move HTML
236         functionality into new "dehtmlize" function.  Remove HTML before
237         trying to parse each line from the keyserver.  If the keyserver
238         provides key type information in the listing, use it.  (Copy over
239         from g10/hkp.c).
240
241 2002-08-19  David Shaw  <dshaw@jabberwocky.com>
242
243         * gpgkeys_hkp.c (get_key, parse_hkp_index): Bring over latest code
244         from g10/hkp.c.
245
246         * gpgkeys_ldap.c (get_key): Fix cosmetic URL display problem
247         (extra ":" at the end).
248
249 2002-08-03  Stefan Bellon  <sbellon@sbellon.de>
250
251         * gpgkeys_ldap.c: Tidied up RISC OS initializations.
252
253 2002-07-25  David Shaw  <dshaw@jabberwocky.com>
254
255         * gpgkeys_hkp.c: "Warning" -> "WARNING"
256
257 2002-07-24  David Shaw  <dshaw@jabberwocky.com>
258
259         * Makefile.am: Install keyserver helpers in @GNUPG_LIBEXECDIR@
260
261 2002-07-15  David Shaw  <dshaw@jabberwocky.com>
262
263         * gpgkeys_ldap.c (send_key, get_key, main): Consult the server
264         version string to determine whether to use pgpKey or pgpKeyV2.
265
266 2002-07-09  David Shaw  <dshaw@jabberwocky.com>
267
268         * gpgkeys_mailto.in: Use new OPAQUE tag for non net-path URIs.
269         Fail more elegantly if there is no email address to send to.  Show
270         the GnuPG version in the message body.
271
272 2002-07-04  David Shaw  <dshaw@jabberwocky.com>
273
274         * gpgkeys_ldap.c (get_key), gpgkeys_hkp.c (get_key): Display
275         keyserver URI as a URI, but only if verbose.
276
277 2002-07-01  David Shaw  <dshaw@jabberwocky.com>
278
279         * gpgkeys_hkp.c (parse_hkp_index): Error if the keyserver returns
280         an unparseable HKP response.
281
282         * gpgkeys_hkp.c (main): Warn on honor-http-proxy,
283         broken-http-proxy, and include-subkeys (not supported yet).
284
285         * gpgkeys_ldap.c (main), gpgkeys_hkp.c (http_connect, main): Fix
286         some shadowing warnings.
287
288 2002-06-11  David Shaw  <dshaw@jabberwocky.com>
289
290         * Makefile.am: Don't hard-code the LDAP libraries - get them from
291         LDAPLIBS via configure.  Also, gpgkeys_hkp is a program, not a
292         script.
293
294 2002-06-10  David Shaw  <dshaw@jabberwocky.com>
295
296         * gpgkeys_ldap.c (include_subkeys): Default "include-subkeys" to
297         off, since GnuPG now defaults it to on.
298
299 2002-06-06  David Shaw  <dshaw@jabberwocky.com>
300
301         * gpgkeys_hkp.c (parse_hkp_index): Type tweaks.
302
303         * gpgkeys_hkp.c (main): Add experimental code warning.
304
305 2002-06-05  David Shaw  <dshaw@jabberwocky.com>
306
307         * Makefile.am, gpgkeys_hkp.c (new): Experimental HKP keyserver
308         interface.
309
310 2002-05-08  David Shaw  <dshaw@jabberwocky.com>
311
312         * gpgkeys_ldap.c: Include <lber.h> if we absolutely must.  This
313         helps when compiling against a very old OpenLDAP.
314
315 2002-04-29  David Shaw  <dshaw@jabberwocky.com>
316
317         * gpgkeys_mailto.in: Properly handle key requests in full
318         fingerprint form.
319
320 2002-03-29  David Shaw  <dshaw@jabberwocky.com>
321
322         * gpgkeys_ldap.c (printquoted): Quote backslashes within keyserver
323         search responses.
324
325 2002-02-25  David Shaw  <dshaw@jabberwocky.com>
326
327         * gpgkeys_ldap (get_key): LDAP keyservers do not support v3
328         fingerprints, so error out if someone tries.  Actually, they don't
329         support any fingerprints, but at least we can calculate a keyid
330         from a v4 fingerprint.
331
332 2002-02-23  David Shaw  <dshaw@jabberwocky.com>
333
334         * gpgkeys_ldap: Clarify the notion of a partial failure.  This is
335         possible if more than one key is being handled in a batch, and one
336         fails while the other succeeds.  Note that a search that comes up
337         with no results is not a failure - that is a valid response of "no
338         answer".
339
340         * gpgkeys_ldap.c (get_key): Allow GnuPG to send us full v4
341         fingerprints, long key ids, or short key ids while fetching.
342         Since the LDAP server doesn't actually handle fingerprints, chop
343         them down to long key ids for actual use.
344
345         * gpgkeys_ldap.c (main, get_key): When searching for a keyid,
346         search for subkeys as well as primary keys.  This is mostly
347         significant when automatically fetching the key based on the id in
348         a header (i.e. "signature made by....").  "no-include-subkeys"
349         disables.
350
351 2002-02-14  David Shaw  <dshaw@jabberwocky.com>
352
353         * gpgkeys_ldap.c: Fix compiler warning.
354
355         * gpgkeys_ldap.c: Be much more robust with mangled input files.
356
357 2001-12-28  David Shaw  <dshaw@jabberwocky.com>
358
359         * gpgkeys_mailto.in: Use the new OUTOFBAND indicator so gpg knows
360         not to try and import anything.  Also turn on perl -w for
361         warnings.
362
363         * gpgkeys_ldap.c (main): If we're using temp files (rather than
364         stdin/stdout), make sure the file is closed when we're done.
365
366 2001-12-20  David Shaw  <dshaw@jabberwocky.com>
367
368         * Properly free the LDAP response when we're done with it.
369
370         * Now that we handle multiple keys, we must remove duplicates as
371         the LDAP keyserver returns keys with multiple user IDs multiple
372         times.
373
374         * Properly handle multiple keys with the same key ID (it's really
375         rare, so fetch "0xDEADBEEF" to test this).
376
377 2001-12-17  David Shaw  <dshaw@jabberwocky.com>
378
379         * gpgkeys_ldap.c, gpgkeys_mailto.in: Fix GNU capitalization
380         issues.  Prefix log messages with "gpgkeys" to clarify which
381         program is generating them.
382
383 2001-12-14  David Shaw  <dshaw@jabberwocky.com>
384
385         * gpgkeys_ldap.c (search_key): Use unsigned int rather than uint
386         for portability.
387
388 2001-12-04  David Shaw  <dshaw@jabberwocky.com>
389
390         * Initial version of gpgkeys_ldap (LDAP keyserver helper) and
391         gpgkeys_mailto (email keyserver helper)
392
393         
394  Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
395
396  This file is free software; as a special exception the author gives
397  unlimited permission to copy and/or distribute it, with or without
398  modifications, as long as this notice is preserved.
399
400  This file is distributed in the hope that it will be useful, but
401  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
402  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
403