* gpgkeys_ftp.c (main, get_key): Use auth data as passed by gpg. Use
[gnupg.git] / keyserver / ChangeLog
1 2004-12-22  David Shaw  <dshaw@jabberwocky.com>
2
3         * gpgkeys_ftp.c (main, get_key): Use auth data as passed by gpg.
4         Use CURLOPT_FILE instead of CURLOPT_WRITEDATA (same option, but
5         backwards compatible).
6
7 2004-12-21  David Shaw  <dshaw@jabberwocky.com>
8
9         * gpgkeys_ftp.c: New.
10
11         * Makefile.am: Build it if requested.
12
13 2004-12-14  Werner Koch  <wk@g10code.com>
14
15         * Makefile.am (install-exec-hook, uninstall-hook): Removed.  For
16         Windows reasons we can't use the symlink trick.
17
18 2004-12-03  David Shaw  <dshaw@jabberwocky.com>
19
20         * Makefile.am: The harmless "ignored error" on gpgkeys_ldap
21         install on top of an existing install is bound to confuse people.
22         Use ln -s -f to force the overwrite.
23
24 2004-10-28  David Shaw  <dshaw@jabberwocky.com>
25
26         * gpgkeys_finger.c [_WIN32] (connect_server): Fix typo.
27
28 2004-10-28  Werner Koch  <wk@g10code.com>
29
30         * Makefile.am (other_libs): New.  Also include LIBICONV.  Noted by
31         Tim Mooney.
32
33 2004-10-28  Werner Koch  <wk@g10code.com>
34
35         * Makefile.am (other_libs): 
36
37 2004-10-18  David Shaw  <dshaw@jabberwocky.com>
38
39         * gpgkeys_hkp.c (send_key, get_key, search_key): Use "hkp" instead
40         of "x-hkp" so it can be used as a SRV tag.
41
42 2004-10-16  David Shaw  <dshaw@jabberwocky.com>
43
44         * gpgkeys_finger.c [_WIN32] (connect_server): Fix typo.
45
46 2004-10-15  Werner Koch  <wk@g10code.com>
47
48         * gpgkeys_ldap.c (main, show_help): Kludge to implement standard
49         GNU options. Factored help printing out.
50         * gpgkeys_finger.c (main, show_help): Ditto.
51         * gpgkeys_hkp.c (main, show_help): Ditto.
52         * gpgkeys_http.c (main, show_help): Ditto.
53         * gpgkeys_test.in, gpgkeys_mailto.in: Implement --version and --help.
54
55         * Makefile.am: Add ksutil.h.
56
57 2004-10-14  David Shaw  <dshaw@jabberwocky.com>
58
59         * gpgkeys_finger.c (main): We do not support relay fingering
60         (i.e. "finger://relayhost/user@example.com"), but finger URLs are
61         occasionally miswritten that way.  Give an error in this case.
62
63 2004-10-14  Werner Koch  <wk@g10code.com>
64
65         * gpgkeys_finger.c (get_key): s/unsigned char/byte/ due
66         to a strange typedef for RISC OS.  Noted by Stefan.
67
68 2004-10-13  David Shaw  <dshaw@jabberwocky.com>
69
70         * gpgkeys_ldap.c (main), gpgkeys_hkp.c (main), gpgkeys_http.c
71         (main), gpgkeys_finger.c (main): Call timeout functions before
72         performing an action that could block for a long time.
73
74         * ksutil.h, ksutil.c: New.  Right now just contains timeout
75         functions.
76
77 2004-10-11  David Shaw  <dshaw@jabberwocky.com>
78
79         * gpgkeys_finger.c, gpgkeys_hkp.c, gpgkeys_http.c, gpgkeys_ldap.c:
80         Fix a few occurances of "filename" to `filename'.
81
82 2004-10-11  Werner Koch  <wk@g10code.com>
83
84         * gpgkeys_finger.c: New.
85
86 2004-08-27  Stefan Bellon  <sbellon@sbellon.de>
87
88         * gpgkeys_hkp.c (search_key): Fix the prior faulty fix by
89         introducing a cast but leaving skey unsigned.
90
91         * gpgkeys_hkp.c (search_key): Change type of variable skey from
92         unsigned char* to char* to fix type incompatibility.
93
94 2004-08-23  David Shaw  <dshaw@jabberwocky.com>
95
96         * gpgkeys_ldap.c (get_key, search_key), gpgkeys_hkp.c (get_key,
97         search_key), gpgkeys_http.c (get_key): Do not give informational
98         logs since this is now done inside gpg.
99
100         * gpgkeys_hkp.c (dehtmlize): Understand the quote character
101         (i.e. "&quot;") in HTML responses.
102         (search_key): Search key must be unsigned for url encoder to work
103         properly for 8-bit values.
104
105         * gpgkeys_ldap.c (get_key): Factor out informational display into
106         new function build_info().
107
108         * gpgkeys_ldap.c (build_attrs): Properly terminate user ID strings
109         that got shrunk due to encoding.
110
111 2004-08-22  David Shaw  <dshaw@jabberwocky.com>
112
113         * gpgkeys_ldap.c (find_basekeyspacedn): Use LDAP_SCOPE_BASE along
114         with a full DN rather than LDAP_SCOPE_ONELEVEL plus a filter to
115         find the pgpServerInfo object.  Some LDAP setups don't like the
116         search.
117         (main): Stop binding to the server since it seems no server really
118         requires it, and some require it not be there.
119
120 2004-07-29  David Shaw  <dshaw@jabberwocky.com>
121
122         * gpgkeys_ldap.c (main): Add "debug" option.  This is only really
123         useful with OpenLDAP, but it's practically vital to debug SSL and
124         TLS setups.  Add "basedn" option.  This allows users to override
125         the autodetection for base DN.  SSL overrides TLS, so TLS will not
126         be started on SSL connections (starting an already started car).
127
128 2004-07-28  David Shaw  <dshaw@jabberwocky.com>
129
130         * gpgkeys_ldap.c (build_attrs): Add "pgpKeySize" and "pgpSubKeyID"
131         attributes so we can do subkey searches.
132
133         * gpgkeys_ldap.c (main): Under certain error conditions, we might
134         try and unbind twice.  Don't.
135
136         * gpgkeys_ldap.c (join_two_modlists): New.
137         (send_key): Use new function so we can try a modify operation
138         first, and fail over to an add if that fails.  Add cannot cope
139         with the NULLs at the head of the modify request, so we jump into
140         the list in the middle.
141
142 2004-07-27  David Shaw  <dshaw@jabberwocky.com>
143
144         * gpgkeys_ldap.c (main): Don't try and error out before making a
145         ldaps connection to the NAI keyserver since we cannot tell if it
146         is a NAI keyserver until we connect.  Fail if we cannot find a
147         base keyspace DN.  Fix a false success message for TLS being
148         enabled.
149
150 2004-07-20  Werner Koch  <wk@gnupg.org>
151
152         * gpgkeys_ldap.c [_WIN32]: Include Windows specific header files.
153         Suggested by Brian Gladman.
154
155 2004-05-26  David Shaw  <dshaw@jabberwocky.com>
156
157         * gpgkeys_http.c: General polish and removal of leftover stuff
158         from gpgkeys_hkp.c.
159
160 2004-05-21  David Shaw  <dshaw@jabberwocky.com>
161
162         * gpgkeys_http.c (get_key): Cosmetic fix - make sure that URLs
163         with no path use a path of "/".
164
165         * gpgkeys_ldap.c (ldap2epochtime): We can always rely on timegm()
166         being available now, since it's a replacement function.
167
168 2004-05-20  David Shaw  <dshaw@jabberwocky.com>
169
170         * gpgkeys_http.c: New program to do a simple HTTP file fetch using
171         the keyserver interface.
172
173         * Makefile.am: Build it.
174
175 2004-02-28  David Shaw  <dshaw@jabberwocky.com>
176
177         * Makefile.am: Don't split LDADD across two lines since some make
178         programs can't handle blank lines after a \ continuation.  Noted
179         by Christoph Moench-Tegeder.
180
181 2004-02-25  David Shaw  <dshaw@jabberwocky.com>
182
183         * gpgkeys_ldap.c (send_key): List pgpCertID as one of the deleted
184         attributes.  This guarantees that if something goes wrong, we
185         won't be able to complete the transaction, thus leaving any key
186         already existing on the server intact.
187
188 2004-02-23  David Shaw  <dshaw@jabberwocky.com>
189
190         * gpgkeys_ldap.c (delete_one_attr): Removed.
191         (make_one_attr): Delete functionality added.  Optional deduping
192         functionality added (currently only used for pgpSignerID).
193         (build_attrs): Translate sig entries into pgpSignerID.  Properly
194         build the timestamp for pgpKeyCreateTime and pgpKeyExpireTime.
195
196 2004-02-22  David Shaw  <dshaw@jabberwocky.com>
197
198         * gpgkeys_ldap.c (delete_one_attr): New function to replace
199         attributes with NULL (a "delete" that works even for nonexistant
200         attributes).
201         (send_key): Use it here to remove attributes so a modify operation
202         starts with a clean playing field.  Bias sends to modify before
203         add, since (I suspect) people update their existing keys more
204         often than they make and send new keys to the server.
205
206 2004-02-21  David Shaw  <dshaw@jabberwocky.com>
207
208         * gpgkeys_ldap.c (epoch2ldaptime): New.  Converse of
209         ldap2epochtime.
210         (make_one_attr): New. Build a modification list in memory to send
211         to the LDAP server.
212         (build_attrs): New. Parse INFO lines sent over by gpg.
213         (free_mod_values): New.  Unwinds a modification list.
214         (send_key_keyserver): Renamed from old send_key().
215         (send_key): New function to send a key to a LDAP server.
216         (main): Use send_key() for real LDAP servers, send_key_keyserver()
217         otherwise.
218
219 2004-02-20  David Shaw  <dshaw@jabberwocky.com>
220
221         * gpgkeys_ldap.c: Replacement prototypes for setenv and unsetenv.
222         (search_key): Catch a SIZELIMIT_EXCEEDED error and show the user
223         whatever the server did give us.
224         (find_basekeyspacedn): There is no guarantee that namingContexts
225         will be readable.
226
227         * Makefile.am: Link gpgkeys_ldap with libutil.a to get the
228         replacement functions (and eventually translations, etc).
229
230 2004-02-19  David Shaw  <dshaw@jabberwocky.com>
231
232         * gpgkeys_ldap.c (ldap2epochtime): LDAP timestamps are UTC, so do
233         not correct for timezones.
234         (main): Find the basekeyspacedn before we try to start TLS, so we
235         can give a better error message when a user tries to use TLS with
236         a LDAP keyserver.
237
238         * Makefile.am: Add automake conditionals to symlink gpgkeys_ldaps
239         to gpgkeys_ldap when needed.
240
241         * gpgkeys_ldap.c (main): Add support for LDAPS and TLS
242         connections.  These are only useful and usable when talking to
243         real LDAP keyservers.  Add new "tls" option to tune TLS use from
244         off, to try quietly, to try loudly, or to require TLS.
245
246         * gpgkeys_ldap.c (find_basekeyspacedn): New function to figure out
247         what kind of LDAP server we're talking to (either real LDAP or the
248         LDAP keyserver), and return the baseKeySpaceDN to find keys under.
249         (main): Call it from here, and remove the old code that only
250         handled the LDAP keyserver.
251
252 2004-02-18  David Shaw  <dshaw@jabberwocky.com>
253
254         * gpgkeys_ldap.c (ldap_to_gpg_err): Make sure that
255         LDAP_OPT_ERROR_NUMBER is defined before we use it.
256
257         * gpgkeys_mailto.in: Fix VERSION number.
258
259 2004-01-13  Werner Koch  <wk@gnupg.org>
260
261         * gpgkeys_hkp.c (send_key): Add a content type.
262
263 2004-01-11  David Shaw  <dshaw@jabberwocky.com>
264
265         * gpgkeys_hkp.c (search_key): Catch a mangled input file (useful
266         if something other than GnuPG is calling the program).
267         (main): Avoid possible pre-string write.  Noted by Christian
268         Biere.
269
270         * gpgkeys_ldap.c (main): Avoid possible pre-string write.
271
272 2003-12-28  David Shaw  <dshaw@jabberwocky.com>
273
274         * gpgkeys_hkp.c (send_key, get_key, main): Work with new HTTP code
275         that passes the proxy in from the outside.  If the command file
276         sends a proxy, use it.  If it sends "http-proxy" with no
277         arguments, use $http_proxy from the environment.  Suggested by
278         Christian Biere.
279
280 2003-12-28  Stefan Bellon  <sbellon@sbellon.de>
281
282         * gpgkeys_hkp.c, gpgkeys_ldap.c [__riscos__]: Removal of
283         unnecessary #ifdef __riscos__ sections.
284
285 2003-11-27  Werner Koch  <wk@gnupg.org>
286
287         * gpgkeys_hkp.c (get_key): Fixed invalid use of fprintf without
288         format string.
289
290 2003-10-25  Werner Koch  <wk@gnupg.org>
291
292         * Makefile.am (gpgkeys_hkp_LDADD): Replaced INTLLIBS by LIBINTL.
293
294 2003-07-10  David Shaw  <dshaw@jabberwocky.com>
295
296         * Makefile.am: Use W32LIBS where appropriate.
297
298 2003-05-30  David Shaw  <dshaw@jabberwocky.com>
299
300         * gpgkeys_hkp.c, gpgkeys_ldap.c: #include <getopt.h> if it is
301         available.  Also include extern references for optarg and optind
302         since there is no guarantee that any header file will include
303         them.  Standards?  We don't need no stinkin' standards.
304
305         * Makefile.am: Use @GETOPT@ to pull in libiberty on those
306         platforms that need it.
307
308 2003-04-08  David Shaw  <dshaw@jabberwocky.com>
309
310         * gpgkeys_hkp.c (dehtmlize, parse_hkp_index): Fix memory
311         corruption bug on some platforms.
312
313 2003-03-11  David Shaw  <dshaw@jabberwocky.com>
314
315         * gpgkeys_hkp.c (get_key): Properly handle CRLF line endings in
316         the armored key.
317         (main): Accept "try-dns-srv" option.
318
319         * Makefile.am: Use @CAPLIBS@ to link in -lcap if we are using
320         capabilities.  Use @SRVLIBS@ to link in the resolver if we are
321         using DNS SRV.
322
323 2003-02-11  David Shaw  <dshaw@jabberwocky.com>
324
325         * Makefile.am: Use a local copy of libexecdir along with @PACKAGE@
326         so it can be easily overridden at make time.
327
328 2003-01-29  David Shaw  <dshaw@jabberwocky.com>
329
330         * gpgkeys_mailto.in: Fix regexp to work properly if the "keyid" is
331         not a keyid, but rather a text string from the user ID.
332
333 2003-01-06  David Shaw  <dshaw@jabberwocky.com>
334
335         * gpgkeys_hkp.c (get_key): Use options=mr when getting a key so
336         keyserver doesn't attach the HTML header which we will just have
337         to discard.
338
339 2002-11-17  David Shaw  <dshaw@jabberwocky.com>
340
341         * gpgkeys_ldap.c (main), gpgkeys_hkp.c (main): Use new keyserver
342         protocol version.
343
344 2002-11-14  David Shaw  <dshaw@jabberwocky.com>
345
346         * gpgkeys_ldap.c (get_key): The deduping code requires
347         "pgpcertid", but that was not available when running without
348         verbose on.  Noted by Stefan.
349
350 2002-11-10  David Shaw  <dshaw@jabberwocky.com>
351
352         * gpgkeys_ldap.c (get_key): Fix typo in deduping code.
353
354 2002-11-05  David Shaw  <dshaw@jabberwocky.com>
355
356         * gpgkeys_ldap.c (key_in_keylist, add_key_to_keylist,
357         free_keylist, get_key, search_key): The LDAP keyserver doesn't
358         remove duplicates, so remove them locally.  Do not include the key
359         modification time in the search response.
360
361 2002-11-04  David Shaw  <dshaw@jabberwocky.com>
362
363         * gpgkeys_hkp.c (send_key), gpgkeys_ldap.c (send_key): Properly
364         handle an input file that does not include any key data at all.
365
366 2002-10-24  David Shaw  <dshaw@jabberwocky.com>
367
368         * gpgkeys_hkp.c (main), gpgkeys_ldap.c (main): Add -V flag to
369         output protocol and program version.
370
371 2002-10-21  David Shaw  <dshaw@jabberwocky.com>
372
373         * Makefile.am: Anything linking with libutil.a needs INTLLIBS as
374         well on platforms where INTLLIBS is set.
375
376 2002-10-14  David Shaw  <dshaw@jabberwocky.com>
377
378         * gpgkeys_hkp.c (write_quoted): Use %-encoding instead of
379         \-encoding.
380         (parse_hkp_index): Use new keyserver key listing format, and add
381         support for disabled keys via include-disabled.
382
383         * gpgkeys_ldap.c (get_key): Don't print keysize unless it's >0.
384         (printquoted): Use %-encoding instead of \-encoding.
385         (search_key): Use new keyserver key listing format.
386
387 2002-10-08  David Shaw  <dshaw@jabberwocky.com>
388
389         * gpgkeys_ldap.c (search_key, main): Make sure LDAP values are
390         freed in case of error.
391
392         * gpgkeys_ldap.c (fail_all): New function to unwind a keylist and
393         error each item.
394         (main): Call fail_all from here, as needed.  Also add a NO_MEMORY
395         error in an appropriate place and fix error return code.
396         (ldap_err_to_gpg_err): Add KEYSERVER_UNREACHABLE.
397
398         * gpgkeys_hkp.c (fail_all): New function to unwind a keylist and
399         error each item.
400         (main): Call fail_all from here.  Also add a NO_MEMORY error in an
401         appropriate place.
402         (get_key): Use new UNREACHABLE error for network errors.
403
404 2002-09-26  Werner Koch  <wk@gnupg.org>
405
406         * gpgkeys_ldap.c (send_key): Removed non-constant initializers.
407
408 2002-09-24  David Shaw  <dshaw@jabberwocky.com>
409
410         * gpgkeys_ldap.c (ldap_err_to_gpg_err, ldap_to_gpg_err, send_key,
411         get_key, search_key, main): Some minor error reporting
412         enhancements for use with GPA (show reasons for KEY FAILED).
413
414         * gpgkeys_hkp.c (send_key, get_key, search_key, main): Some minor
415         error reporting enhancements for use with GPA (show reasons for
416         KEY FAILED).
417
418 2002-09-20  Werner Koch  <wk@gnupg.org>
419
420         * gpgkeys_hkp.c (handle_old_hkp_index): s/input/inp/ to avoid
421         shadowing warning.
422
423 2002-09-19  David Shaw  <dshaw@jabberwocky.com>
424
425         * gpgkeys_hkp.c (get_key, handle_old_hkp_index, search_key):
426         Properly handle line truncation.
427
428 2002-09-16  David Shaw  <dshaw@jabberwocky.com>
429
430         * gpgkeys_mailto.in: Add quasi-RFC-2368 mailto:email@addr?from=
431         syntax so people can set their own email address to respond to.
432
433         * gpgkeys_hkp.c (get_key): Properly respond with KEY FAILED (to
434         gpg) and "key not found" (to user) on failure.
435
436 2002-09-13  David Shaw  <dshaw@jabberwocky.com>
437
438         * gpgkeys_hkp.c: (search_key, handle_old_hkp_index): Try and
439         request a machine-readable key index.  If the server supports
440         this, pass it through.  If the server does not support it, parse
441         the "index" page.
442
443 2002-09-12  Stefan Bellon  <sbellon@sbellon.de>
444
445         * gpgkeys_hkp.c: Tidied up RISC OS initializations.
446
447 2002-09-12  David Shaw  <dshaw@jabberwocky.com>
448
449         * gpgkeys_hkp.c (main): Remove warning - this is no longer
450         experimental code.
451
452 2002-09-09  Werner Koch  <wk@gnupg.org>
453
454         * gpgkeys_hkp.c (send_key, get_key, search_key): Check return
455         value of malloc.
456         (dehtmlize): Use ascii_tolower to protect against weird locales.
457         Cast the argument for isspace for the sake of broken HP/UXes.
458         (search_key): Check return value of realloc.
459
460 2002-09-09  David Shaw  <dshaw@jabberwocky.com>
461
462         * gpgkeys_ldap.c (get_key): Some compilers (RISC OS, HPUX c89)
463         don't like using variables as array initializers.
464
465         * gpgkeys_hkp.c (send_key): Use CRLF in headers.
466
467 2002-08-28  David Shaw  <dshaw@jabberwocky.com>
468
469         * gpgkeys_hkp.c (parse_hkp_index): Use same types on all
470         platforms.  This was probably leftover from earlier code where the
471         typing mattered.
472
473         * gpgkeys_hkp.c: Overall cleanup from iobuf conversion.  Be
474         consistent in m_alloc and malloc usage.  Remove include-disabled
475         (meaningless on HKP).  RISC OS tweak.
476
477 2002-08-27  David Shaw  <dshaw@jabberwocky.com>
478
479         * gpgkeys_hkp.c, Makefile.am: Convert over to using iobufs.
480
481         * gpgkeys_hkp.c (http_get, http_post): Use CRLF for line endings.
482
483         * gpgkeys_hkp.c: Include util.h on RISC OS as per Stefan.  Include
484         a replacement for hstrerror() for those platforms (such as RISC
485         OS) that don't have it.
486
487 2002-08-26  David Shaw  <dshaw@jabberwocky.com>
488
489         * Makefile.am: May as well include gpgkeys_hkp.c in the
490         distribution now.  It works well enough without proxies, and isn't
491         built by default.  It would be good to get some test experience
492         with it.
493
494         * gpgkeys_hkp.c (main): Don't warn about include-subkeys - it
495         isn't unsupported, it's actually non-meaningful in the context of
496         HKP (yet).
497
498         * gpgkeys_hkp.c (parse_hkp_index, dehtmlize): Move HTML
499         functionality into new "dehtmlize" function.  Remove HTML before
500         trying to parse each line from the keyserver.  If the keyserver
501         provides key type information in the listing, use it.  (Copy over
502         from g10/hkp.c).
503
504 2002-08-19  David Shaw  <dshaw@jabberwocky.com>
505
506         * gpgkeys_hkp.c (get_key, parse_hkp_index): Bring over latest code
507         from g10/hkp.c.
508
509         * gpgkeys_ldap.c (get_key): Fix cosmetic URL display problem
510         (extra ":" at the end).
511
512 2002-08-03  Stefan Bellon  <sbellon@sbellon.de>
513
514         * gpgkeys_ldap.c: Tidied up RISC OS initializations.
515
516 2002-07-25  David Shaw  <dshaw@jabberwocky.com>
517
518         * gpgkeys_hkp.c: "Warning" -> "WARNING"
519
520 2002-07-24  David Shaw  <dshaw@jabberwocky.com>
521
522         * Makefile.am: Install keyserver helpers in @GNUPG_LIBEXECDIR@
523
524 2002-07-15  David Shaw  <dshaw@jabberwocky.com>
525
526         * gpgkeys_ldap.c (send_key, get_key, main): Consult the server
527         version string to determine whether to use pgpKey or pgpKeyV2.
528
529 2002-07-09  David Shaw  <dshaw@jabberwocky.com>
530
531         * gpgkeys_mailto.in: Use new OPAQUE tag for non net-path URIs.
532         Fail more elegantly if there is no email address to send to.  Show
533         the GnuPG version in the message body.
534
535 2002-07-04  David Shaw  <dshaw@jabberwocky.com>
536
537         * gpgkeys_ldap.c (get_key), gpgkeys_hkp.c (get_key): Display
538         keyserver URI as a URI, but only if verbose.
539
540 2002-07-01  David Shaw  <dshaw@jabberwocky.com>
541
542         * gpgkeys_hkp.c (parse_hkp_index): Error if the keyserver returns
543         an unparseable HKP response.
544
545         * gpgkeys_hkp.c (main): Warn on honor-http-proxy,
546         broken-http-proxy, and include-subkeys (not supported yet).
547
548         * gpgkeys_ldap.c (main), gpgkeys_hkp.c (http_connect, main): Fix
549         some shadowing warnings.
550
551 2002-06-11  David Shaw  <dshaw@jabberwocky.com>
552
553         * Makefile.am: Don't hard-code the LDAP libraries - get them from
554         LDAPLIBS via configure.  Also, gpgkeys_hkp is a program, not a
555         script.
556
557 2002-06-10  David Shaw  <dshaw@jabberwocky.com>
558
559         * gpgkeys_ldap.c (include_subkeys): Default "include-subkeys" to
560         off, since GnuPG now defaults it to on.
561
562 2002-06-06  David Shaw  <dshaw@jabberwocky.com>
563
564         * gpgkeys_hkp.c (parse_hkp_index): Type tweaks.
565
566         * gpgkeys_hkp.c (main): Add experimental code warning.
567
568 2002-06-05  David Shaw  <dshaw@jabberwocky.com>
569
570         * Makefile.am, gpgkeys_hkp.c (new): Experimental HKP keyserver
571         interface.
572
573 2002-05-08  David Shaw  <dshaw@jabberwocky.com>
574
575         * gpgkeys_ldap.c: Include <lber.h> if we absolutely must.  This
576         helps when compiling against a very old OpenLDAP.
577
578 2002-04-29  David Shaw  <dshaw@jabberwocky.com>
579
580         * gpgkeys_mailto.in: Properly handle key requests in full
581         fingerprint form.
582
583 2002-03-29  David Shaw  <dshaw@jabberwocky.com>
584
585         * gpgkeys_ldap.c (printquoted): Quote backslashes within keyserver
586         search responses.
587
588 2002-02-25  David Shaw  <dshaw@jabberwocky.com>
589
590         * gpgkeys_ldap (get_key): LDAP keyservers do not support v3
591         fingerprints, so error out if someone tries.  Actually, they don't
592         support any fingerprints, but at least we can calculate a keyid
593         from a v4 fingerprint.
594
595 2002-02-23  David Shaw  <dshaw@jabberwocky.com>
596
597         * gpgkeys_ldap: Clarify the notion of a partial failure.  This is
598         possible if more than one key is being handled in a batch, and one
599         fails while the other succeeds.  Note that a search that comes up
600         with no results is not a failure - that is a valid response of "no
601         answer".
602
603         * gpgkeys_ldap.c (get_key): Allow GnuPG to send us full v4
604         fingerprints, long key ids, or short key ids while fetching.
605         Since the LDAP server doesn't actually handle fingerprints, chop
606         them down to long key ids for actual use.
607
608         * gpgkeys_ldap.c (main, get_key): When searching for a keyid,
609         search for subkeys as well as primary keys.  This is mostly
610         significant when automatically fetching the key based on the id in
611         a header (i.e. "signature made by....").  "no-include-subkeys"
612         disables.
613
614 2002-02-14  David Shaw  <dshaw@jabberwocky.com>
615
616         * gpgkeys_ldap.c: Fix compiler warning.
617
618         * gpgkeys_ldap.c: Be much more robust with mangled input files.
619
620 2001-12-28  David Shaw  <dshaw@jabberwocky.com>
621
622         * gpgkeys_mailto.in: Use the new OUTOFBAND indicator so gpg knows
623         not to try and import anything.  Also turn on perl -w for
624         warnings.
625
626         * gpgkeys_ldap.c (main): If we're using temp files (rather than
627         stdin/stdout), make sure the file is closed when we're done.
628
629 2001-12-20  David Shaw  <dshaw@jabberwocky.com>
630
631         * Properly free the LDAP response when we're done with it.
632
633         * Now that we handle multiple keys, we must remove duplicates as
634         the LDAP keyserver returns keys with multiple user IDs multiple
635         times.
636
637         * Properly handle multiple keys with the same key ID (it's really
638         rare, so fetch "0xDEADBEEF" to test this).
639
640 2001-12-17  David Shaw  <dshaw@jabberwocky.com>
641
642         * gpgkeys_ldap.c, gpgkeys_mailto.in: Fix GNU capitalization
643         issues.  Prefix log messages with "gpgkeys" to clarify which
644         program is generating them.
645
646 2001-12-14  David Shaw  <dshaw@jabberwocky.com>
647
648         * gpgkeys_ldap.c (search_key): Use unsigned int rather than uint
649         for portability.
650
651 2001-12-04  David Shaw  <dshaw@jabberwocky.com>
652
653         * Initial version of gpgkeys_ldap (LDAP keyserver helper) and
654         gpgkeys_mailto (email keyserver helper)
655
656
657  Copyright 1998, 1999, 2000, 2001, 2002, 2003,
658            2004 Free Software Foundation, Inc.
659
660  This file is free software; as a special exception the author gives
661  unlimited permission to copy and/or distribute it, with or without
662  modifications, as long as this notice is preserved.
663
664  This file is distributed in the hope that it will be useful, but
665  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
666  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.