aboutsummaryrefslogtreecommitdiffstats
path: root/keyserver/gpgkeys_hkp.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* keyserver: Allow use of cURL's default CA store.Werner Koch2013-10-041-1/+2
| | | | | | | | | | | * keyserver/gpgkeys_curl.c (main): Set CURLOPT_CAINFO only if a file has been given. * keyserver/gpgkeys_hkp.c (main): Ditto. -- GnuPG-bug-id: 1542 Signed-off-by: Werner Koch <[email protected]> (cherry picked from commit e957b9b3f408491f36660499b215aebcf2633a95)
* Differentiate between success (full or partial), not-found, and failure.David Shaw2013-03-031-11/+76
| | | | | | * keyserver/gpgkeys_hkp.c (get_key): Use curl_easy_setinfo to get the HTTP status code so we can tell the difference between a successful retrieval, a partial retrieval, a not-found, or a server failed.
* Last fix for the SRV record patches.Werner Koch2012-12-201-0/+2
| | | | | | | | * keyserver/gpgkeys_hkp.c (srv_replace): Make sure SRVCOUNT is always initialized. -- See commit 5c557a51.
* Issue 1447: Pass proper Host header and SNI when SRV is used with curl.David Shaw2012-12-191-34/+121
| | | | | | | | | | | | | | | | | | | * configure.ac: Check for inet_ntop. * m4/libcurl.m4: Provide a #define for the version of the curl library. * keyserver/gpgkeys_hkp.c (main, srv_replace): Call getaddrinfo() on each target. Once we find one that resolves to an address (whether IPv4 or IPv6), pass it into libcurl via CURLOPT_RESOLVE using the SRV name as the "host". Force the HTTP Host header to be the same. Backported from 6b1f71055ebab36989e2089cfde319d2ba40ada7 * keyserver/gpgkeys_hkp.c (main): Only default try-dns-srv to on if we have SRV support in the first place. Backported from 732f3d1d4786239db5f31f82cc04ec79326cc13c
* Fix issue 1446: honor ports given in SRV responses.David Shaw2012-12-191-6/+10
| | | | | | | | | | | | | | * common/http.c (send_request, connect_server, http_open): Use a struct srv instead of a single srvtag so we can pass the chosen host and port back to the caller. (connect_server): Use the proper port in the HAVE_GETADDRINFO case. * keyserver/curl-shim.c (curl_easy_perform): Use struct srv and log chosen host and port. * keyserver/gpgkeys_hkp.c (main): Properly take the port given by SRV. Backported from ba9e974f1fd85b3dbbfb5e26d7a14f71d07c7cf2
* Use the longest key ID available when talking to a HKP server.David Shaw2011-12-281-7/+13
| | | | | | This is issue 1340. Now that PKSD is dead, and SKS supports long key IDs, this is safe to do. Patch from Daniel Kahn Gillmor <[email protected]>.
* Removed some set but unused vars.Werner Koch2011-08-091-3/+2
|
* Restructured the compat functions and changed its license.Werner Koch2009-08-251-7/+7
| | | | | New fucntion xstrconcat for future use.
* * gpgkeys_hkp.c (main, srv_replace): Minor tweaks to use the DNS-SDDavid Shaw2009-07-081-5/+17
| | | | | | names ("pgpkey-http" and "pgpkey-https") in SRV lookups instead of "hkp" and "hkps".
* * gpgkeys_hkp.c (srv_replace): Fix build warning.David Shaw2009-05-281-0/+2
|
* Avoid caches to get the most recent copy of the key. This is bugDavid Shaw2009-05-261-0/+23
| | | | | #1061
* * gpgkeys_hkp.c (srv_replace): New function to transform a SRVDavid Shaw2009-04-211-17/+76
| | | | | | hostname to a real hostname. (main): Call it from here for the HAVE_LIBCURL case (without libcurl is handled via the curl-shim).
* * gpgkeys_hkp.c (main): Switch default port for SSLized HKP to 443David Shaw2009-04-021-1/+1
| | | | | (i.e. the regular https port).
* * gpgkeys_hkp.c (send_key, get_key, get_name, search_key, main): AddDavid Shaw2009-02-031-22/+36
| | | | | support for SSLized HKP.
* * curl-shim.h, gpgkeys_curl.c, gpgkeys_hkp.c (main): Always show curlDavid Shaw2008-11-181-3/+1
| | | | | version (even for curl-shim).
* Make --version close to GNU standards.Werner Koch2008-11-181-1/+4
|
* * curl-shim.h (curl_version): No need to provide a version forDavid Shaw2008-11-181-4/+5
| | | | | | | | | | | curl-shim as it always matches the GnuPG version. * gpgkeys_curl.c, gpgkeys_hkp.c (main): Show which version of curl we're using as part of --version. * gpgkeys_curl.c, gpgkeys_finger.c, gpgkeys_hkp.c, gpgkeys_ldap.c (show_help): Document --version.
* * gpgkeys_curl.c (main), gpgkeys_hkp.c (main): Make sure all libcurlDavid Shaw2008-04-141-5/+5
| | | | | number options are passed as long.
* Switched to GPLv3.Werner Koch2007-10-231-4/+2
| | | | | Updated gettext.
* * gpgkeys_hkp.c (main): Show curl or fake-curl version string.David Shaw2007-04-161-1/+1
| | | | | * Makefile.am: Link with libcompat.a for ascii_str(n)casecmp.
* * gpgkeys_curl.c, gpgkeys_ldap.c, gpgkeys_hkp.c, ksutil.c: Rename allDavid Shaw2007-04-161-4/+5
| | | | | | str(n)casecmp to ascii_str(n)casecmp. We want the locale-independent ones here.
* * curl-shim.h, curl-shim.c, gpgkeys_hkp.c: Rename curl_escape() toDavid Shaw2007-01-161-3/+3
| | | | | curl_easy_escape() to match cURL.
* * gpgkeys_hkp.c (send_key): Allow GPG to send any armored key lineDavid Shaw2007-01-161-20/+24
| | | | | length without problems. Reported by Felix von Leitner.
* * gpgkeys_hkp.c (search_key): HKP keyservers like the 0x to be presentDavid Shaw2006-12-031-0/+6
| | | | | when searching by keyID.
* * gpgkeys_hkp.c (curl_mrindex_writer): Revert previous change.David Shaw2006-11-061-5/+3
| | | | | Key-not-found still has a HTML response.
* * gpgkeys_hkp.c (curl_mrindex_writer): Print a warning if we see HTMLDavid Shaw2006-10-201-1/+4
| | | | | coming back from a MR hkp query.
* Allow to build w/o curl.Werner Koch2006-09-261-0/+11
|
* * gpgkeys_hkp.c (send_key), gpgkeys_ldap.c (send_key,David Shaw2006-07-171-2/+2
| | | | | | send_key_keyserver): Improved version of previous fix. Force match on spaces in string.
* * gpgkeys_hkp.c (send_key), gpgkeys_ldap.c (send_key, send_key_keyserver):David Shaw2006-07-141-3/+6
| | | | | | Fix string matching problem when the ascii armored form of the key happens to match "KEY" at the beginning of the line.
* * Makefile.am: Don't build gpgkeys_http or gpgkeys_(old)hkp any longer asDavid Shaw2006-04-261-3/+3
| | | | | | | | this is done via curl or fake-curl. * ksutil.h, ksutil.c, gpgkeys_hkp.c, gpgkeys_curl.c: Minor #include tweaks as FAKE_CURL is no longer meaningful.
* * gpgkeys_hkp.c (get_name): A GETNAME query turns exact=on to cut down onDavid Shaw2006-02-221-0/+3
| | | | | odd matches.
* * gpgkeys_hkp.c (send_key): Do not escape the '=' in the HTTP POST whenDavid Shaw2006-01-161-13/+16
| | | | | uploading a key.
* * ksutil.h, ksutil.c (parse_ks_options): New keyserver command "getname".David Shaw2005-12-231-2/+96
| | | | | | * gpgkeys_hkp.c (main, get_name), gpgkeys_ldap.c (main, get_name): Use it here to do direct name (rather than key ID) fetches.
* * ksutil.h, ksutil.c (curl_armor_writer, curl_writer,David Shaw2005-12-191-5/+6
| | | | | | | | curl_writer_finalize): New functionality to handle binary format keys by armoring them for input to GPG. * gpgkeys_curl.c (get_key), gpgkeys_hkp.c (get_key): Call it here.
* Fix various build warnings reported by Joe Vender on MinGW.David Shaw2005-11-031-1/+1
|
* * ksutil.h, ksutil.c (parse_ks_options): Remove exact-name andDavid Shaw2005-08-261-41/+9
| | | | | | | | | exact-email. (classify_ks_search): Mimic the gpg search modes instead with *, =, <, and @. * gpgkeys_ldap.c (search_key), gpgkeys_hkp.c (search_key): Call them here. Suggested by Jason Harris.
* * ksutil.h, ksutil.c (parse_ks_options): New keyserver-option exact-name. David Shaw2005-08-181-2/+20
| | | | | | | | The last of exact-name and exact-email overrides the earlier. * gpgkeys_ldap.c (search_key), gpgkeys_hkp.c (search_key): Use it here to do a name-only search.
* * ksutil.h, ksutil.c (parse_ks_options): New keyserver-optionDavid Shaw2005-08-181-4/+34
| | | | | | | | exact-email. * gpgkeys_ldap.c (search_key), gpgkeys_hkp.c (search_key): Use it here to do an email-only search.
* * gpgkeys_hkp.c (main), gpgkeys_curl.c (main), curl-shim.h: ShowDavid Shaw2005-08-041-0/+1
| | | | | version of curl (or curl-shim) when debug is set.
* * gpgkeys_mailto.in, gpgkeys_test.in: Use @VERSION@ so version stringDavid Shaw2005-06-231-11/+18
| | | | | | | | | | | | | | stays up to date. * gpgkeys_http.c: Don't need to define HTTP_PROXY_ENV here since it's in ksutil.h. * gpgkeys_curl.c (get_key, main), gpgkeys_hkp.c (main): Pass AUTH values to curl or curl-shim. * curl-shim.c (curl_easy_perform), gpgkeys_curl.c (main), gpgkeys_hkp.c (main): Use curl-style proxy semantics.
* * gpgkeys_hkp.c (append_path, send_key, get_key, search_key, main),David Shaw2005-06-211-10/+19
| | | | | gpgkeys_oldhkp.c (main): Properly handle double slashes in paths.
* * gpgkeys_hkp.c, gpgkeys_oldhkp.c: Add support for HKP servers thatDavid Shaw2005-06-041-8/+16
| | | | | aren't at the root path. Suggested by Jack Bates.
* Updated FSF street address and preparations for a release candidate.Werner Koch2005-05-311-1/+2
|
* * gpgkeys_hkp.c, gpgkeys_oldhkp.c, ksutil.h: Some minor cleanup andDavid Shaw2005-05-021-3/+9
| | | | | comments as to the size of MAX_LINE and MAX_URL.
* * gpgkeys_hkp.c: New hkp handler that uses curl or curl-shim.David Shaw2005-04-171-713/+256
| | | | | | | * Makefile.am: Build new gpgkeys_hkp. * curl-shim.c (curl_easy_perform): Cleanup.
* * gpgkeys_ldap.c, ksutil.h, ksutil.c (print_nocr): Moved fromDavid Shaw2005-03-221-2/+2
| | | | | | | | | gpgkeys_ldap.c. Print a string, but strip out any CRs. * gpgkeys_finger.c (get_key), gpgkeys_hkp.c (get_key), gpgkeys_http.c (get_key): Use it here when outputting key material to canonicalize line endings.
* * gpgkeys_finger.c (main), gpgkeys_hkp.c (main): Fix --version output.David Shaw2005-02-051-1/+1
| | | | | | * gpgkeys_curl.c (main): Make sure the curl handle is cleaned up on failure.
* * gpgkeys_hkp.c (get_key), gpgkeys_http.c (get_key): Fix missingDavid Shaw2005-02-011-0/+1
| | | | | http_close() calls. Noted by Phil Pennock.
* * ksutil.h, gpgkeys_curl.c, gpgkeys_hkp.c, gpgkeys_ldap.c,David Shaw2005-01-131-23/+1
| | | | | | gpgkeys_finger.c, gpgkeys_http.c: Part 2 of the cleanup. Move all the various defines to ksutil.h.
* * gpgkeys_finger.c, gpgkeys_hkp.c, gpgkeys_http.c, gpgkeys_ldap.c: Part 1David Shaw2005-01-131-21/+29
| | | | | of a minor cleanup to use #defines instead of hard-coded sizes.