Commit Graph

1068 Commits

Author SHA1 Message Date
Benjamin Sergeant
e4da62547b add reference to multiple projects using IXWebSocket 2020-05-05 07:52:02 -07:00
Benjamin Sergeant
2b4c06e6d2 UdpSocket::recvfrom last argument does not have to be a uint32_t 2020-05-05 07:49:07 -07:00
tostc
7337ed34a6
Added asynchronous udp receive function (#193)
* Added asynchronous udp receive function

* Remove receive_async and added low level recv, which is non-blocking.

* Remove thread include

* Moved unix include to IXNetSystem.h
2020-05-05 07:47:41 -07:00
Benjamin Sergeant
15355188d5 (http client) rework a bit PATCH pull request, fix compile error with setForceBody and initialize _forceBody to false 2020-05-05 07:43:55 -07:00
Liz3
8760c87635
add PATCH and add option to enforce a http request body write (#195)
* add PATCH and add option to enforce a http request body write

* remove private bool prop
2020-05-05 07:38:55 -07:00
Benjamin Sergeant
2786631e3b clang-format 2020-05-04 17:19:25 -07:00
Benjamin Sergeant
1b30061a4d remove unused variable 2020-05-04 17:18:21 -07:00
Benjamin Sergeant
af003fc79b (ixbots) fix tsan data race error when accessing verbose parameter 2020-05-04 17:15:35 -07:00
Benjamin Sergeant
4f17cd5e74 (cobra bots) do not use a queue to store messages pending processing, let the bot handle queuing 2020-05-04 15:45:11 -07:00
Benjamin Sergeant
b04764489c (doc) add link to a project using ixwebsocket #187 2020-05-04 09:21:39 -07:00
Benjamin Sergeant
fc4a4bfb7c
fix #194 / linux needs to built with position independant code 2020-05-03 12:19:58 -07:00
ebenali
9e54fd5f1a
Fix CMake/zlibstatic-related regression (#192)
* cmake: add export() and install(EXPORT) for easier packageability

Enable the package to be more readily packageable as a system-wide
install or as a third-party dependency to another CMake-base project

This does not change CMake version requirements AFAICT

* CMake: link-in OpenSSL::Crypto

* CMake: explicitly manage dependencies. Fixes building with zlibstatic
2020-05-02 22:08:58 -07:00
ebenali
1096f62196
cmake: add export() and install(EXPORT) for easier packageability (#190)
* cmake: add export() and install(EXPORT) for easier packageability

Enable the package to be more readily packageable as a system-wide
install or as a third-party dependency to another CMake-base project

This does not change CMake version requirements AFAICT

* CMake: link-in OpenSSL::Crypto
2020-05-02 20:20:59 -07:00
Benjamin Sergeant
b34d9f6a06 uwp fixes 2020-05-01 11:27:59 -07:00
Benjamin Sergeant
b21e2506bf (ci) add universal windows platform 2020-05-01 10:44:10 -07:00
Benjamin Sergeant
303f99a432 refine previous commit 2020-05-01 10:37:25 -07:00
Benjamin Sergeant
a42ccea8dd disable unicode 2020-05-01 09:22:03 -07:00
Benjamin Sergeant
beb26bc096 use ninja for local builds 2020-04-29 11:53:56 -07:00
Benjamin Sergeant
b45980f0f6 (http client) better current request cancellation support when the HttpClient destructor is invoked (see #189) 2020-04-29 11:53:23 -07:00
Benjamin Sergeant
fbca513008 bump version 2020-04-27 12:36:56 -07:00
Benjamin Sergeant
33ebd00932 fix cmake tls backend option parsing 2020-04-27 11:29:50 -07:00
Benjamin Sergeant
fbe5e74109 fix openssl cmake errors 2020-04-27 10:59:47 -07:00
Benjamin Sergeant
a9f5d5353f fix cmake syntax error and convert some errors to fatal errors 2020-04-27 10:29:27 -07:00
Benjamin Sergeant
22e0083832 CMake TLS cleanup 2020-04-27 10:09:51 -07:00
Benjamin Sergeant
5632360fbd (http client) Set default values for most HttpRequestArgs struct members (fix #185) 2020-04-27 09:43:31 -07:00
Benjamin Sergeant
20294841b3 ci - on windows, disable building tls as it is too slow (> 15minutes total) 2020-04-25 15:58:56 -07:00
Benjamin Sergeant
74efdfebba remove bundled mbedtls 2020-04-25 15:41:39 -07:00
Benjamin Sergeant
0ab04f51fe (ssl) Default to OpenSSL on Windows, since it can load the system certificates by default 2020-04-25 15:36:31 -07:00
Benjamin Sergeant
4ed7968b05 ci / try to force an openssl 1.1 install on mac 2020-04-25 11:53:09 -07:00
Benjamin Sergeant
287e48962f bump version number 2020-04-25 11:41:58 -07:00
Francisco Javier
953c680eee
Bug on setting extra headers. Now it loses the first string character. (#184)
Client code:

    ...

    ix::WebSocketHttpHeaders headers {
        {"Cookie", "ABC"}
    };

    ...

Expected header string on server:
    "Cookie: ABC"

Resulted header string on server:
    "Cookie: BC"

Solution:
    The easy way I found to solve the problem is to add a space where extra headers are set before sended to server.

Co-authored-by: Fco. Javier M. C <fcojavmc@todo-redes.com>
2020-04-25 11:39:37 -07:00
Benjamin Sergeant
2802cad8c4 more tls in memory certs doc + bump file format 2020-04-24 15:50:39 -07:00
Benjamin Sergeant
9f770b10c0 clang-format 2020-04-24 15:34:00 -07:00
Max Weisel
677f79b0ea
Implement API for adding custom roots via a string (#178)
* Implement API for adding custom roots via a string. SocketTLSOptions API design needs work, but the IXSocketOpenSSL implementation feels good to me.

* Improve API design for specifying roots from memory.

* Add in-memory root CAs mbedtls implementation.

* Fix bug in newer versions of OpenSSL with in-memory certificate handling.
2020-04-24 15:32:11 -07:00
Benjamin Sergeant
646b18bf28 core logger support multiple level + switch ixbots to user corelogger instead of spdlog 2020-04-24 15:17:50 -07:00
Benjamin Sergeant
0670954faf unittest / remove deleted file reference 2020-04-24 14:23:38 -07:00
Benjamin Sergeant
2469d7102e missing headers for url parsing 2020-04-24 14:13:15 -07:00
Benjamin Sergeant
79acb915ce merge the 2 url parsing file into one, fix a silly build error 2020-04-24 14:08:59 -07:00
Benjamin Sergeant
bad3adb6b4 cmake pb with renamed file 2020-04-24 12:55:00 -07:00
Benjamin Sergeant
e3dd4e60c0 remove deleted IXSelectInterruptEventFd file reference in cmake 2020-04-24 12:52:13 -07:00
Benjamin Sergeant
c70f1d09a8 include all ssl backends inside special per backend macro 2020-04-24 12:47:47 -07:00
Benjamin Sergeant
4b2b133c10 fix #182 2020-04-22 14:26:16 -07:00
Benjamin Sergeant
cd5fae6a5b generate a compilation database when building with make for the default target, so that clang-tidy can be used 2020-04-22 14:14:09 -07:00
Ross Jacobs
5860c5c80b
Fixes #179 (#180) 2020-04-20 22:59:20 -07:00
Benjamin Sergeant
36257cbfe4 update build doc 2020-04-18 03:49:26 -07:00
Benjamin Sergeant
68ee57a6a7 fix ixbots unittest 2020-04-17 10:09:52 -07:00
Benjamin Sergeant
9d79596629 (ixbots) display sent/receive message, per seconds as accumulated 2020-04-17 09:56:09 -07:00
Benjamin Sergeant
0b6fd989f5 (ws) add a --logfile option to configure all logs to go to a file 2020-04-17 09:35:47 -07:00
Benjamin Sergeant
1c19a57fef missing atomic header in IXCobraBot.h / should fix windows build 2020-04-16 22:54:43 -07:00
Benjamin Sergeant
a2abe861d3 (cobra bots) add a utility class to factor out the common bots features (heartbeat) and move all bots to used it + convert cobra_subscribe to be a bot and add a unittest for it 2020-04-16 21:58:10 -07:00