Skip to content
Open
Changes from 2 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
ee09ff4
feat(mqtt_cxx): configure client authentication via certificate/key o…
lhauswald Mar 15, 2023
e762ada
Merge pull request #156 from david-cermak/feature/modem_example_at_mqtt
david-cermak Mar 16, 2023
423e965
fix(common): Changelog to correctly pick references
david-cermak Mar 16, 2023
97d5249
bump(modem): 0.1.28 -> 1.0.0
david-cermak Mar 16, 2023
284cdeb
Merge pull request #254 from lhauswald/feature/mqtt_client_certificate
david-cermak Mar 16, 2023
afb6930
fix(modem): Example to use 1.0.0
david-cermak Mar 16, 2023
0a682e7
fix(mdns): Fix memory issues reported by valgrind
david-cermak Mar 19, 2023
537d170
test(mdns): Host tests to use IDF's esp_event_stub
david-cermak Mar 20, 2023
0a97656
Merge pull request #255 from david-cermak/feat/modem_cz_bump
david-cermak Mar 20, 2023
2e607e8
Merge pull request #257 from david-cermak/fix/mdns_valgrind
david-cermak Mar 20, 2023
e69a9eb
fix(mdns): Resolve conflicts only on self hosted items
david-cermak Feb 17, 2023
a06fb77
fix(mdns): Removed unused internal lock from mdns_server struct
david-cermak Feb 17, 2023
5b3346f
Merge pull request #225 from david-cermak/bugfix/mdns_wrong_name_coll…
david-cermak Mar 20, 2023
5ed3e9a
mdns: append all ipv6 address in mdns answer
xieqinan Mar 15, 2023
a838af4
Merge pull request #251 from xieqinan/feature/append-all-ipv6-address…
david-cermak Mar 22, 2023
d238e93
feat(mdns): Decouple main module from mdns-networking
david-cermak Aug 8, 2022
ee9b04f
fix(mdns): socket networking to init interfaces properly
antmak Dec 13, 2022
76047a4
Merge pull request #137 from david-cermak/mdns/isolate_networking
david-cermak Mar 22, 2023
8bb207e
Fix weird error message spacings
0xFEEDC0DE64 Mar 23, 2023
f6ff132
Merge pull request #259 from 0xFEEDC0DE64/fix_websocket_error_spacings
david-cermak Mar 23, 2023
ca3fce0
docs(common): improving documentation
suren-gabrielyan-espressif Feb 22, 2023
db0e20f
Merge pull request #256 from gabsuren/docs/documentation_improving
gabsuren Mar 31, 2023
a547ec8
docs(esp_mqtt_cxx): updated documentation and deployment file
suren-gabrielyan-espressif Apr 4, 2023
10f8200
Merge pull request #267 from gabsuren/esp_mqtt_cxx/updated_docs_and_y…
gabsuren Apr 5, 2023
4fa3023
Fix deadly mdns crash
0xFEEDC0DE64 Apr 5, 2023
6528f44
docs: fixed broken link on README.md
suren-gabrielyan-espressif Apr 7, 2023
8e5a27f
docs: fixed broken link in README.md
suren-gabrielyan-espressif Apr 10, 2023
87dcd7d
mdns: Add APIs to look up delegated services
wqx6 Apr 10, 2023
2f7cbd1
ci(common): Fix pre-commit manual run
david-cermak Mar 30, 2023
1a0a41f
fix(mdns): Use idf-build-apps package for building mdns
david-cermak Apr 14, 2023
7330597
Merge pull request #270 from 0xFEEDC0DE64/fix_mdns_crash
david-cermak Apr 18, 2023
ea5d3ce
Merge pull request #268 from wqx6/search_delegated_service
david-cermak Apr 18, 2023
6c299c0
Merge pull request #274 from david-cermak/bugfix/ci_mdns_all_targets
david-cermak Apr 18, 2023
f48d9b2
docs(common): updated component and example links
suren-gabrielyan-espressif Apr 19, 2023
b0d3b41
Merge pull request #277 from gabsuren/docs/update_links
gabsuren Apr 20, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 29 additions & 2 deletions components/esp_mqtt_cxx/esp_mqtt_cxx.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,35 @@ void config_client_credentials(esp_mqtt_client_config_t &mqtt_client_cfg, Client
{
mqtt_client_cfg.credentials.authentication.password = password.data.c_str();
},
[](ClientCertificate const & certificate) {},
[](SecureElement const & enable_secure_element) {},
[&mqtt_client_cfg](ClientCertificate const & certificate)
{
std::visit(overloaded{
[&mqtt_client_cfg](PEM const & pem)
{
mqtt_client_cfg.credentials.authentication.certificate = pem.data;
}, [&mqtt_client_cfg](DER const & der)
{
mqtt_client_cfg.credentials.authentication.certificate = der.data;
mqtt_client_cfg.credentials.authentication.certificate_len = der.len;
}}, certificate.certificate);
std::visit(overloaded{
[&mqtt_client_cfg](PEM const & pem)
{
mqtt_client_cfg.credentials.authentication.key = pem.data;
}, [&mqtt_client_cfg](DER const & der)
{
mqtt_client_cfg.credentials.authentication.key = der.data;
mqtt_client_cfg.credentials.authentication.key_len = der.len;
}}, certificate.key);
if (certificate.key_password.has_value()) {
mqtt_client_cfg.credentials.authentication.key_password = certificate.key_password.value().data.c_str();
mqtt_client_cfg.credentials.authentication.key_password_len = static_cast<int>(certificate.key_password.value().data.size());
}
},
[&mqtt_client_cfg](SecureElement const & enable_secure_element)
{
mqtt_client_cfg.credentials.authentication.use_secure_element = true;
},
[]([[maybe_unused ]]auto & unknown)
{
static_assert(always_false<decltype(unknown)>, "Missing type handler for variant handler");
Expand Down