Werner Koch
3c35b46a32
dirmngr: Fix HKP host selection code.
...
* dirmngr/server.c (cmd_keyserver): Add option --resolve and change
--print-hosttable to --hosttable.
* dirmngr/ks-action.c (ks_printf_help): New.
(ks_action_resolve): New.
* dirmngr/ks-engine-hkp.c (select_random_host): Fix selection.
(ks_hkp_print_hosttable): Print to assuan stream.
(map_host): Remove debug code. Add arg FORCE_SELECT. Return numeric
IP addr if it can't be resolved.
(make_host_part): Add arg FORCE_SELECT; change callers to pass false.
(ks_hkp_resolve): New.
--
The new options for the keyserver command are useful for debugging.
For example:
$ tools/gpg-connect-agent -S /usr/local/var/run/gnupg/S.dirmngr \
'keyserver hkp://keys.gnupg.net' \
'keyserver http://http-keys.gnupg.net ' \
'keyserver --resolve --hosttable' /bye
yields:
OK
OK
S # http://astrath.net:80
S # http://2001:41d0:1:e673::1:11371
S # hosttable (idx, ipv4, ipv6, dead, name):
S # 0 http-keys.gnupg.net
S # . --> 10 11 12 1 5 8 7 4* 2 9 6 3
S # 1 4 37.250.168.245.bredband.tre.se
S # 2 4 6 keys.exosphere.de
S # 3 4 6 poseidon.muc.drweb-av.de
S # 4 4 astrath.net
S # 5 4 79.143.214.216
S # 6 4 openpgp.andrew.kvalhe.im
S # 7 4 app.aaiedu.hr
S # 8 4 6 alita.karotte.org
S # 9 4 6 keyserver.bau5net.com
S # 10 4 194.94.127.122
S # 11 6 2001:4d88:1ffc:477::7
S # 12 6 2a00:1280:8000:2:1:8:0:1
S # 13 keys.gnupg.net
S # . --> 23 28* 30 17 22 8 7 27 25 14 21 20 19 29 [...]
S # 14 4 hufu.ki.iif.hu
S # 15 4 pks.ms.mff.cuni.cz
S # 16 4 pgpkeys.co.uk
S # 17 4 80-239-156-219.customer.teliacarrier.com
S # 18 4 srv01.secure-u.de
S # 19 4 mallos.xs4all.nl
S # 20 4 kronecker.scientia.net
S # 21 4 keyserver.ut.mephi.ru
S # 22 4 89-68-150-88.dynamic.chello.pl
S # 23 6 2001:1608:21:6:84:200:66:125
S # 24 6 sks.es.net
S # 25 6 gstueve-1-pt.tunnel.tserv13.ash1.ipv6.he.net
S # 26 6 sks.mrball.net
S # 27 6 gozer.rediris.es
S # 28 6 2001:41d0:1:e673::1
S # 29 6 oteiza.siccegge.de
S # 30 6 2403:4200:401:10::13
S # 31 6 statler.serviz.fr
OK
2014-03-11 16:30:36 +01:00
Werner Koch
1cdcab6892
Add framework to print keyserver engine information
2011-02-09 18:20:05 +01:00
Werner Koch
2c79a2832c
Add finger support to dirmngr.
...
The basic network code from http.c is used for finger. This keeps the
network related code at one place and we are able to use the somewhat
matured code form http.c. Unfortunately I had to enhance the http
code for more robustness and probably introduced new bugs.
Test this code using
gpg --fetch-key finger:wk@g10code.com
(I might be the last user of finger ;-)
2011-02-08 21:11:19 +01:00
Werner Koch
7f32d88ed1
All standard keyserver commands are now using dirmngr.
2011-01-20 14:12:53 +01:00
Werner Koch
357f8d5398
Keyserver search and get basically works again.
2011-01-18 12:51:16 +01:00
Werner Koch
8c8c45725f
Initial code checking for backup - not yet working.
2011-01-10 14:30:17 +01:00