gpg: Screen keyserver responses.
authorWerner Koch <wk@gnupg.org>
Thu, 14 Aug 2014 13:20:53 +0000 (15:20 +0200)
committerWerner Koch <wk@gnupg.org>
Thu, 14 Aug 2014 13:21:21 +0000 (15:21 +0200)
commitc23c18c1543d1ff58f0f78baaa6a8e319c659ecb
tree49a00478985e5c73ce00642f6820cc2a718d4134
parenta61b28df1f29b1e306115282ec1ce580fa54945a
gpg: Screen keyserver responses.

* g10/main.h (import_screener_t): New.
* g10/import.c (import): Add screener callbacks to param list.
(import_one): Ditto.
(import_secret_one): Ditto.
(import_keys_internal): Ditto.
(import_keys_stream): Ditto.
* g10/keyserver.c (struct ks_retrieval_screener_arg_s): New.
(keyserver_retrieval_screener): New.
(keyserver_get): Pass screener to import_keys_es_stream().
--
These changes introduces import functions that apply a constraining
filter to imported keys. These filters can verify the fingerprints of
the keys returned before importing them into the keyring, ensuring
that the keys fetched from the keyserver are in fact those selected by
the user beforehand.

Signed-off-by: Stefan Tomanek <tomanek@internet-sicherheit.de>
This is an extended and fixed versions of Stefan's patch.  In addition
to the changes done in gnupg 2.0, namely the commits

  5e933008beffbeae7255ece02383606481f9c169
  044847a0e2013a2833605c1a9f80cfa6ef353309
  088f82c0b5e39687f70e44d3ab719854e808eeb6

the symbol names have been changed to "screener" to void mixing them
up with the iobuf filter feature and it has been changed to be used
with the dirmngr based keyserver lookup.

Signed-off-by: Werner Koch <wk@gnupg.org>
g10/import.c
g10/keyserver.c
g10/main.h