das-labor / neopg

The multiversal cryptoengine!
Other
216 stars 16 forks source link

Replace custom http client with libcurl #28

Closed lambdafu closed 6 years ago

lambdafu commented 6 years ago

GnuPG has its own http client code. It is deeply intermangled with the custom dns resolver to support some unorthodox features (such as SRV DNS #25 and WKD #24), which we do not support. So we can revert back to libcurl and just write normal code. This will also be a precursor to removing the custom DNS resolver code. In the future, we want to use Botan as TLS Backend to libcurl, and maybe link libcurl statically to minimize dependencies, make sure we get the Botan backend, and to limit the number of supported protocols to a manageable set. The downside of that will be to support the Windows build environment of libcurl. There are other options beside libcurl (such as cppnet-lib), but they are usually tied to boost::asio, which is tied to openssl.

codecov[bot] commented 6 years ago

Codecov Report

Merging #28 into master will decrease coverage by 12.85%. The diff coverage is 55%.

@@             Coverage Diff             @@
##           master      #28       +/-   ##
===========================================
- Coverage     100%   87.14%   -12.86%     
===========================================
  Files          37       43        +6     
  Lines         450      630      +180     
  Branches       15       37       +22     
===========================================
+ Hits          450      549       +99     
- Misses          0       81       +81