pistache icon indicating copy to clipboard operation
pistache copied to clipboard

Ssl client for openssl

Open dgreatwood opened this issue 7 years ago • 4 comments

Basic SSL client, using openssl Avoids changing the existing core polling loop of Pistache, instead doing its own selects and retries for blocking write. User should call Pistache::Http::Connection::setHostChainPemFile(), with a suitable cert "pem" file, before using https. One method of getting a cert file that will likely serve is here: https://curl.haxx.se/docs/caextract.html; you would also want a way to keep the cert file up up to date in that case. This SSL client appears to work correctly against the both the Azure and Google cloud storage web APIs. It has not been tested otherwise. To use for Azure and Google, other fixes are also needed: pull requests 142, 141, 140, 139, 138, 119 and 118. To disable SSL support in the source, you could make with PIST_EXCLUDE_SSL set, or edit ssl_do_or_dont.h to comment out PIST_INCLUDE_SSL define. You could also edit src/CMakeLists.txt to remove crypto and ssl from target_link_libraries, if not needed. TO DO: Make the later dependent on make configuration.

dgreatwood avatar Sep 17 '17 18:09 dgreatwood

Any interest in merging this PR @oktal?

partidor avatar Feb 19 '19 12:02 partidor

oktal@ is no longer directly managing this project; however, he has granted me pull rights to his repo. I can merge the PR, but the author (or someone) needs to fix the merge conflicts and implement comprehensive unit tests.

dennisjenkins75 avatar Feb 19 '19 15:02 dennisjenkins75

Ping. This PR is rather large, implements a requested feature, but has merge conflicts and lacks unit tests. I'd happily merge it if it has unit tests and were mergable. However, I intent to close this PR in a few weeks if not ready. We're clearing out stale PRs. I would love to merge this one though. :)

dennisjenkins75 avatar Jan 11 '20 19:01 dennisjenkins75

Ping. This PR is rather large, implements a requested feature, but has merge conflicts and lacks unit tests. I'd happily merge it if it has unit tests and were mergable. However, I intent to close this PR in a few weeks if not ready. We're clearing out stale PRs. I would love to merge this one though. :)

Dennis - thanks for picking up "pistache"; it would be good if there were a well done, non-GPL, C/C++ HTTP library IMHO.

FWIW, I did just confirm that this PR's code still runs successful against the Google and Azure storage APIs.

Unfortunately, I am too busy with other work to update the PRs and/or look at unit tests. My apologies. If that changes, I may come back and revive these PRs; I'd likely reach out to you at that time.

This applies to my other PRs on the project as well. If I may, I would suggest you look at the other ones at least, which are much simpler; they deal with some fairly basic bugs in the original code like running out of buffer space, so far as I recall.

Meanwhile - good luck! -DG

dgreatwood avatar Jan 12 '20 23:01 dgreatwood