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