Commit Graph

62 Commits

Author SHA1 Message Date
Korina Šimičević 6f5c179929 CMakeLists.txt modifications 2024-01-04 13:20:18 +01:00
friendlyanon 6abe93fcc9 Add CMake build and client support 2024-01-04 13:20:18 +01:00
Korina Šimičević bf81ab5ee7 Handle all warnings on MSVC Win32
Summary: related to T13409

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D27165
2024-01-02 16:04:18 +01:00
Korina Šimičević 794c72cb44 Handle all MSVC warnings
Summary: related to T13409

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D27152
2024-01-02 11:50:15 +01:00
Korina Šimičević 7c0b9042d1 Allow user to modify CONNECT properties
Summary: related to T13332

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D27108
2023-12-22 14:07:05 +01:00
Korina Šimičević 99f30b3880 control_packet::wire_data() returns std::string_view
Summary: related to T13332

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D27099
2023-12-22 10:52:13 +01:00
Korina Šimičević 97d8a4ea86 Validate control packet size
Summary: resolves T13332

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13332

Differential Revision: https://repo.mireo.local/D27000
2023-12-22 10:00:53 +01:00
Bruno Iljazovic 79d3f7606d [tests] validate client to test broker packets
Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D27018
2023-12-18 13:30:10 +01:00
Korina Šimičević 9af32a942b Properties & string validation
Summary: related to T13318

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26975
2023-12-14 15:29:40 +01:00
Korina Šimičević b275411ada Validate subscribe requests
Summary: resolves T13305

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13305

Differential Revision: https://repo.mireo.local/D26954
2023-12-14 08:41:04 +01:00
Korina Šimičević 26454e75eb Topic filter & topic name validation
Summary: related to T13170

Reviewers: ivica

Reviewed By: ivica

Subscribers: iljazovic, miljen

Differential Revision: https://repo.mireo.local/D26899
2023-12-13 12:03:52 +01:00
Korina Šimičević 0d778c6b59 Update examples, tests & docs
Summary: related to T13242

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26889
2023-12-07 15:47:02 +01:00
Bruno Iljazovic e0a0bafbf1 thread-safe client
Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26864
2023-12-07 15:16:44 +01:00
Korina Šimičević e849166599 Downgrade C++ standard requirement to C++17
Summary: related to T13242

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26860
2023-12-07 09:50:41 +01:00
Korina Šimičević 3640a4fb2a Remove using enum constructs
Summary: related to T13242

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26841
2023-12-06 10:07:41 +01:00
Korina Šimičević 35b190ef67 Declaration changes meaning fix
Summary: resolves T13222

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13222

Differential Revision: https://repo.mireo.local/D26828
2023-12-05 12:28:47 +01:00
Ivica Siladic 680df91ee0 Properties code now compiles with C++17. Nagle disabled on stream. 2023-12-05 10:32:33 +01:00
Ivica Siladic d9489597b3 Syntax consolidation. 2023-12-04 18:42:57 +01:00
Ivica Siladic d00acde499 Improve compilation time by 25% by reducing number of template class instantiation. 2023-12-03 11:52:04 +01:00
Korina Šimičević 64a003e2ed Do not store ec=session_expired if the client never subscribed
Summary: related to T13152

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26803
2023-12-01 15:49:02 +01:00
Korina Šimičević 459738a436 Update README example
Summary: related to T12804

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26798
2023-12-01 13:11:08 +01:00
Bruno Iljazovic 3e1a8d1bb6 [examples] cancel -> disconnect
Reviewers: korina

Reviewed By: korina

Differential Revision: https://repo.mireo.local/D26781
2023-11-30 14:39:44 +01:00
Bruno Iljazovic dfd4b41a4e support large publish packets
Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26763
2023-11-30 10:43:52 +01:00
Ivica Siladic 8c1c4fab9f Align utf8 manipulation code style. 2023-11-30 08:36:05 +01:00
Ivica Siladic a5d020155f Fix dangling reference in tracking_executor(). 2023-11-30 08:34:47 +01:00
Korina Šimičević c18e5fc4f4 topic validation in subscribe, unsubscribe & publish
Summary: resolves T13170

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13170

Differential Revision: https://repo.mireo.local/D26728
2023-11-29 11:52:16 +01:00
Korina Šimičević 93dc1064a2 fix tls examples in docs
Summary: related to T12804

Reviewers: iljazovic

Reviewed By: iljazovic

Subscribers: miljen

Differential Revision: https://repo.mireo.local/D26736
2023-11-28 13:07:40 +01:00
Bruno Iljazovic f6248eea40 correct tracking executor
Summary: - don't resend per-operation cancelled publish and (un)subscribe operations

Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26724
2023-11-28 11:04:14 +01:00
Korina Šimičević a0edbdabf2 update README
Summary: related to T12804

Reviewers: iljazovic

Reviewed By: iljazovic

Subscribers: miljen

Differential Revision: https://repo.mireo.local/D26715
2023-11-27 10:45:35 +01:00
Korina Šimičević 0eaa9d7235 fix tests
Summary: related to T12015

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26693
2023-11-24 12:53:42 +01:00
Korina Šimičević b4f4cd0047 add a notification in receive channel when session resets
Summary: resolves T13152

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13152

Differential Revision: https://repo.mireo.local/D26679
2023-11-23 15:46:30 +01:00
Korina Šimičević 5034734fc4 expose CONNACK properties
Summary: resolves T13155

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13155

Differential Revision: https://repo.mireo.local/D26681
2023-11-23 13:45:14 +01:00
Korina Šimičević e191679889 [mqtt-client] add readme & license, doc fixes
Summary: resolves T13126

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T13126

Differential Revision: https://repo.mireo.local/D26629
2023-11-20 15:32:59 +01:00
Korina Šimičević cda3bc8ee1 remove development files
Summary: related to T13118

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26619
2023-11-20 11:16:58 +01:00
Korina Šimičević 73620e5653 publisher & receiver examples, better completion token examples
Reviewers: iljazovic, ivica

Reviewed By: ivica

Subscribers: miljen

Differential Revision: https://repo.mireo.local/D26582
2023-11-17 10:11:00 +01:00
Korina Šimičević 376393fbfa fix accidental land of the wrong commit
Summary: related to T12804

Reviewers: iljazovic

Reviewed By: iljazovic

Subscribers: miljen

Differential Revision: https://repo.mireo.local/D26547
2023-11-15 11:55:03 +01:00
Korina Šimičević 47ef696779 [mqtt-client] introduction v1
Summary: related to T12804

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26513
2023-11-15 11:26:41 +01:00
Bruno Iljazovic a9dd6553f2 [mqtt-client] receive channel discards oldest message
Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26538
2023-11-15 11:16:26 +01:00
Korina Šimičević d77c97e3f2 [mqtt-client] fix string iterators in range are from different containers
Summary: related to T11798

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26522
2023-11-14 08:53:09 +01:00
Korina Šimičević d1356b7bb7 [mqtt-client] added completion condition paragraph to async functions
Summary: related to T12804

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26421
2023-11-13 08:05:30 +01:00
Bruno Iljazovic 22eb70617c [mqtt-client] add support for re-authentication
Summary:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901257

Resolves T12899

Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Maniphest Tasks: T12899

Differential Revision: https://repo.mireo.local/D26414
2023-11-08 11:05:46 +01:00
Korina Šimičević c8036c0d46 [mqtt-client] added chapter on different ways to establish network connection
Summary:
related to T12804
	- added chapter on network connection
	- added code examples
	- remove any_authenticator from doc targets
	- manually create table of contents

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26401
2023-11-03 14:15:35 +01:00
Bruno Iljazovic 7e60e7a919 [mqtt-client] add support for enhanced authentication
Summary:
- Relates to T12899
- TODO: support re-authentication

Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Maniphest Tasks: T12899

Differential Revision: https://repo.mireo.local/D26327
2023-11-03 09:01:26 +01:00
Bruno Iljazovic 57349c587b [mqtt-client] add move constructor
Summary: Resolves T12913

Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Maniphest Tasks: T12913

Differential Revision: https://repo.mireo.local/D26376
2023-11-02 13:31:41 +01:00
Korina Šimičević ed0e838d87 [mqtt-client] mqtt_client with asio::use_future documented
Summary: related to T12804

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26370
2023-11-02 13:15:23 +01:00
Korina Šimičević e7227d70ec [mqtt-client] coroutine & callback examples
Summary:
related to T12804
	- added asio::no_recovery to list of possible error codes
	- added examples with asio::use_awaitable and callbacks as completion tokens

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26355
2023-11-02 08:01:03 +01:00
Bruno Iljazovic 928f1a7ba4 [mqtt-client] fix stack-use-after-return
Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26354
2023-11-02 07:22:19 +01:00
Bruno Iljazovic 10556a3dda [mqtt-client] pids start from 1
Summary: remove flat_map dependency

Reviewers: ivica

Reviewed By: ivica

Subscribers: korina

Differential Revision: https://repo.mireo.local/D26336
2023-10-31 09:16:34 +01:00
Korina Šimičević 15a3d62727 [mqtt-test] cancellation tests from long time ago
Summary:
related to T12015
  - added some cancellation tests (testing ioc.stop() & client.cancel()
  - some tests fail and some hang (on windows specifically)

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D26317
2023-10-30 12:04:14 +01:00
Korina Šimičević 9e0e57530c [mqtt-client] user can only async_disconnect with rcs < 0x80, fix async_disconnect ecs
Summary: resolves T12974

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Maniphest Tasks: T12974

Differential Revision: https://repo.mireo.local/D26294
2023-10-27 11:38:37 +02:00