31 Commits

Author SHA1 Message Date
21f58bdbcb
Merge commit 'f673e59b217471128ce66454358bd8f7c41481df' into pullstream 2024-02-14 06:16:30 -05:00
4ab992ed31
Merge commit 'd9b2833e272fa1018058786edef45a42cbe4ecc0' into pullstream 2024-02-14 06:14:52 -05:00
11c57356a4
Merge commit '800f1c0bc5bd4632bd0f246c756283cc47d31a34' into pullstream 2024-02-14 06:10:31 -05:00
Mattes D
f673e59b21 UrlClientTest: Added tests for root CA verification. 2023-05-19 16:25:12 +02:00
Mattes D
d9b2833e27 UrlClientTest: Added timeout to all tests. 2023-05-19 16:25:12 +02:00
x12xx12x
800f1c0bc5 Auth SSL Fixes
- Fixed Login Breaking bug
- Auth and MojangAPI now use UrlClient
- fixed bug in UrlClient where one letter was missing in the HTTP Header
- added function to verify Urls from config files and error handling on bad Urls in config for Auth
2023-05-19 16:25:12 +02:00
6c4b2e9186
Implement GPL3+ and Apache2.0 Dual License.
Commit is being made to allow additions of GPL3+ code previously
un-addable. With these changes, contributions back to cuberite are
possible with the backporting exemtion, as well as adding stuff in
minetest with minetest code properly being read through and implimented
to upgrade it to GPL3 from GPL2.

project still has Apache2.0 license and credits to all its contributers, but now has the freedom of GPL3+ and all the code that can be implimented and shared with it.
2023-03-20 11:49:56 -04:00
Tiger Wang
a145980795
Fix Android builds (#4998)
Construct paths relative to the Cuberite sources with PROJECT_SOURCE_DIR, instead of wherever the first CMakeLists.txt file happened to be with CMAKE_SOURCE_DIR.

In Android's case, the latter was in a folder called android/ but that's not the root of the source tree, so any file path built off that root was wrong. This caused file-specific warnings exclusions to fail to apply.
2020-10-15 09:35:44 +00:00
Mattes D
46398f4671 Replaced cpp14::make_unique<> with std::make_unique<>. 2020-08-01 20:04:31 +01:00
Peter Bell
ad935ef40f Update libevent to 2.1.12-stable 2020-07-06 20:53:04 +01:00
Tiger Wang
9e8598fb1c
Upgrade to C++17 [CMake] (#4717)
* Make our CMake slightly less insane
2020-05-16 20:59:10 +01:00
peterbell10
7678d5e6ed Fix race condition in UrlClientTest 2019-09-10 14:18:10 +02:00
Mattes D
74579fbadf
Improved testing framework. (#4376) 2019-08-26 21:38:34 +02:00
peterbell10
1ea36298d2
Fix cUrlClient leak (#4125)
Fixes #4040
* The TCP connection is now shutdown after OnBodyFinished
* Any open connections are closed when cNetworkSingleton::Terminate() is called.
* Removed ownership cycles in cUrlClientRequest
* Added a check to the test to ensure there are no leaks.
2018-02-20 17:08:46 +00:00
peterbell10
d3c1c626f5
Deal with covered switches consistently (#4161)
* Fixes a number of "<function>: not all control paths return a value" warnings on MSVC.

* Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults.

* Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
2018-02-04 23:07:12 +00:00
peterbell10
757231cc6e
Add the fmt library (#4065)
* Replaces AppendVPrintf with fmt::sprintf
* fmt::ArgList now used as a type safe alternative to varargs.
* Removed SIZE_T_FMT compatibility macros. fmt::sprintf is fully portable and supports %zu.
* Adds FLOG functions to log with fmt's native formatting style.
2018-01-03 17:41:16 +00:00
peterbell10
832b394715 Fix Travis build (#4101)
Stop using gdb on osx - was breaking the build
Add clang 3.5 build as travis now defaults to 5.0
Fix unknown-warning-option errors on AppleClang
ProtoProxy: Use nullptr
UrlClientTest: add override to callback destructor
Update jsoncpp to use nullptr
2017-12-22 18:25:46 +00:00
Lukas Pioch
c5f590d460 Removed UTF-8 BOM (#4033) 2017-09-19 10:34:08 +02:00
peterbell10
84941bcc9f Update mbedtls to 2.5.1 (#3964)
* Renaming changes:
  * macro prefix "POLARSSL" -> "MBEDTLS"
  * functions now prefixed with "mbedtls_"
  * rename PolarSSL++ -> mbedTLS++
  * rename polarssl submodule

* Use mbedtls' AES-CFB8 implementation.

* Add cSslConfig to wrap mbedtls_ssl_config

* Update cTCPLink and cBlockingSslClientSocket to use cSslConfig

* Use cSslConfig in cHTTPServer

* Use cSslConfig for cMojangAPI::SecureRequest

* CI Fixes

* Set -fomit-frame-pointer on the right target
2017-08-30 15:00:06 +01:00
Mattes D
d2e8643607 Fixed type-casting-related warnings. 2016-08-24 22:26:53 +02:00
Mattes D
c45bd4b968 HTTP: Fixed empty headers parsing. 2016-08-24 08:28:44 +02:00
Mattes D
74918ce805 cUrlClient: Refactored callbacks to use UniquePtr. 2016-08-22 23:44:37 +02:00
Mattes D
641cb063bc cTCPLink supports TLS out of the box. 2016-08-22 23:44:36 +02:00
Mattes D
6c760ee348 UrlClient: Basic HTTP implementation. 2016-08-22 22:16:42 +02:00
Mattes D
8eaa8613da CMake: Remove needless minimum version specifications. 2016-07-18 22:11:42 +02:00
Mattes D
ea47247dc7 SelfTests: Print a quick message on test start. 2016-06-18 13:12:10 +02:00
Mattes D
aa4b3ebf2f SelfTests: Fixed HTTPMessageParser tests for out-of-source builds. 2016-06-18 13:12:09 +02:00
Mattes D
3d164a77cb SelfTests: Organized into solution folders. 2016-06-18 13:12:07 +02:00
Mattes D
52d18b4559 WebAdmin uses the new HTTP parser framework. 2016-03-01 16:19:58 +01:00
Mattes D
12d95ab047 HTTP: Fixed response parser, unified API. 2016-03-01 16:19:58 +01:00
Mattes D
1d05fc95ae Added unit test for parsing HTTP request. 2016-03-01 16:19:57 +01:00