Use httplib to get CCAMS working on Linux (via Wine) #48
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
CCAMS was failing to do any HTTP call (right from the start at https://github.com/kusterjs/CCAMS/blob/2.3.1/Helpers.cpp#L12-L16) when using with Euroscope on Linux via Wine, probably because of incompatiblity with Wine's
WinInet.h
In order to fix this, I have replaced WinInet usage with
httplib
and brought in alsoopenssl
in order to support SSL/TLS, this increases the DLL size quite a lot unfortunately.In order to bring in httplib and openssl in an easy way, I have added these external dependencies using
vcpkg
I hope this PR can be useful, as this was (for me at least) the last missing link to properly do ATC from Linux (and still be compatible with Windows) 😄