From 66d495656348ae04b5ab725e0b44dad5f45e1a9b Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Wed, 8 Feb 2017 18:36:01 +0100 Subject: lib, ipcpd: Comply to pedantic C99 With the changes in this commit Ouroboros will compile with the pedantic flag on when the standard is C99. The main problem was the used of unnamed structs and unions, which is C11. --- include/ouroboros/irm_config.h | 50 +++++++++++++++++++----------------------- src/lib/btree.c | 5 ++++- 2 files changed, 26 insertions(+), 29 deletions(-) diff --git a/include/ouroboros/irm_config.h b/include/ouroboros/irm_config.h index 2be4273e..3cc59e20 100644 --- a/include/ouroboros/irm_config.h +++ b/include/ouroboros/irm_config.h @@ -55,34 +55,28 @@ struct dif_config { char * dif_name; enum ipcp_type type; - union { - /* Normal DIF */ - struct { - uint8_t addr_size; - uint8_t cep_id_size; - uint8_t pdu_length_size; - uint8_t seqno_size; - - bool has_ttl; - bool has_chk; - - uint32_t min_pdu_size; - uint32_t max_pdu_size; - - enum pol_addr_auth addr_auth_type; - enum pol_gam dt_gam_type; - enum pol_gam rm_gam_type; - }; - /* Shim UDP */ - struct { - uint32_t ip_addr; - uint32_t dns_addr; - }; - /* Shim Ethernet LLC */ - struct { - char * if_name; - }; - }; + /* Normal DIF */ + uint8_t addr_size; + uint8_t cep_id_size; + uint8_t pdu_length_size; + uint8_t seqno_size; + + bool has_ttl; + bool has_chk; + + uint32_t min_pdu_size; + uint32_t max_pdu_size; + + enum pol_addr_auth addr_auth_type; + enum pol_gam dt_gam_type; + enum pol_gam rm_gam_type; + + /* Shim UDP */ + uint32_t ip_addr; + uint32_t dns_addr; + + /* Shim Ethernet LLC */ + char * if_name; }; #endif /* OUROBOROS_IRM_CONFIG_H */ diff --git a/src/lib/btree.c b/src/lib/btree.c index 645e7c7a..38302dae 100644 --- a/src/lib/btree.c +++ b/src/lib/btree.c @@ -388,9 +388,12 @@ int btree_insert(struct btree * tree, void * val) { struct btnode * rgt = NULL; - struct key_val kv = {key, val}; + struct key_val kv; struct key_val med; + kv.key = key; + kv.val = val; + if (tree == NULL || val == NULL) return -EINVAL; -- cgit v1.2.3