summaryrefslogtreecommitdiff
path: root/src/ipcpd/ipcp.c
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri@ouroboros.rocks>2023-02-19 13:18:52 +0100
committerSander Vrijders <sander@ouroboros.rocks>2023-02-23 14:01:00 +0100
commit59703c95fb529386574a334c9cff7cd5d4f16255 (patch)
treea9d0b25b10a2c737410bb9f4fce00504ab51dbbe /src/ipcpd/ipcp.c
parent269f25d3bac5ab871d8044935eacc15cfeadeec6 (diff)
downloadouroboros-59703c95fb529386574a334c9cff7cd5d4f16255.tar.gz
ouroboros-59703c95fb529386574a334c9cff7cd5d4f16255.zip
lib: Refactor hash internals
The internal hash enum now matches the public one w.r.t. directory hash policies. This removes some unnecessary conversion. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks> Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'src/ipcpd/ipcp.c')
-rw-r--r--src/ipcpd/ipcp.c22
1 files changed, 2 insertions, 20 deletions
diff --git a/src/ipcpd/ipcp.c b/src/ipcpd/ipcp.c
index 1e777637..5d9c6e7a 100644
--- a/src/ipcpd/ipcp.c
+++ b/src/ipcpd/ipcp.c
@@ -288,6 +288,8 @@ static void handle_bootstrap(ipcp_config_msg_t * conf_msg,
ipcp_type = conf_msg->ipcp_type;
+ conf.layer_info.dir_hash_algo = conf_msg->layer_info->dir_hash_algo;
+
switch(ipcp_type) {
case IPCP_LOCAL:
break;
@@ -322,26 +324,6 @@ static void handle_bootstrap(ipcp_config_msg_t * conf_msg,
return;
}
- /* UDP and broadcast use fixed hash algorithm. */
- if (ipcp_type != IPCP_UDP && ipcp_type != IPCP_BROADCAST) {
- switch(conf_msg->layer_info->dir_hash_algo) {
- case DIR_HASH_SHA3_224:
- conf.layer_info.dir_hash_algo = HASH_SHA3_224;
- break;
- case DIR_HASH_SHA3_256:
- conf.layer_info.dir_hash_algo = HASH_SHA3_256;
- break;
- case DIR_HASH_SHA3_384:
- conf.layer_info.dir_hash_algo = HASH_SHA3_384;
- break;
- case DIR_HASH_SHA3_512:
- conf.layer_info.dir_hash_algo = HASH_SHA3_512;
- break;
- default:
- assert(false);
- }
- }
-
ret_msg->result = ipcpi.ops->ipcp_bootstrap(&conf);
if (ret_msg->result == 0) {
layer_info_msg->layer_name = strdup(conf.layer_info.layer_name);