This added the Algorithms config of provisioning capabilities to the mesh conf file. --- mesh/mesh-main.conf | 7 +++++++ mesh/mesh.c | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/mesh/mesh-main.conf b/mesh/mesh-main.conf index aca9e6fa5..58fbb9840 100644 --- a/mesh/mesh-main.conf +++ b/mesh/mesh-main.conf @@ -41,3 +41,10 @@ # Setting this value to zero means there's no timeout. # Defaults to 60. #ProvTimeout = 60 + +# Bitmask of supported provisioning security algorithms. +# Bit 0: BTM_ECDH_P256_CMAC_AES128_AES_CCM +# Bit 1: BTM_ECDH_P256_HMAC_SHA256_AES_CCM +# Valid range: 0-65535 +# Defaults to 1. +#Algorithms = 1 diff --git a/mesh/mesh.c b/mesh/mesh.c index 91cf25175..7b670e40a 100644 --- a/mesh/mesh.c +++ b/mesh/mesh.c @@ -245,6 +245,10 @@ static void parse_settings(const char *mesh_conf_fname) if (l_settings_get_uint(settings, "General", "ProvTimeout", &value)) mesh.prov_timeout = value; + if (l_settings_get_uint(settings, "General", "Algorithms", &value) && + value <= 65535) + mesh.algorithms = value; + done: l_settings_free(settings); } @@ -262,7 +266,6 @@ bool mesh_init(const char *config_dir, const char *mesh_conf_fname, mesh_model_init(); mesh_agent_init(); - /* TODO: read mesh.conf */ mesh.prov_timeout = DEFAULT_PROV_TIMEOUT; mesh.algorithms = DEFAULT_ALGORITHMS; -- 2.34.1