summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authordimitri staessens <[email protected]>2017-02-06 16:05:44 +0100
committerdimitri staessens <[email protected]>2017-02-06 20:04:34 +0100
commit373efaf24d3600fe4dadf6bfaaee8d19e2ec32d7 (patch)
tree8711a4edbc2a6defaab63f0dcc2b0690252307b4 /src/lib
parent4b11f952c521315883f64571e1790389e8d20f64 (diff)
downloadouroboros-373efaf24d3600fe4dadf6bfaaee8d19e2ec32d7.tar.gz
ouroboros-373efaf24d3600fe4dadf6bfaaee8d19e2ec32d7.zip
ipcpd, lib: Revise normal IPCP
This PR updates the normal IPCP to use the new RIB. The old ribmgr is removed and replaced by a stub that needs to be implemented. All components (dir, fmgr, frct) were adapted to the new RIB API. A lot of functionality was moved outside of the ribmgr, such as the addr_auth, which is now a component of the IPCP. The address is also stored to the ipcpi struct. The irm tool has an option to set the gam policy of the rib manager.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/dif_config.proto16
-rw-r--r--src/lib/irm.c4
2 files changed, 10 insertions, 10 deletions
diff --git a/src/lib/dif_config.proto b/src/lib/dif_config.proto
index f1f8747b..d47af049 100644
--- a/src/lib/dif_config.proto
+++ b/src/lib/dif_config.proto
@@ -30,14 +30,14 @@ message dif_config_msg {
optional uint32 addr_size = 3;
optional uint32 cep_id_size = 4;
optional uint32 pdu_length_size = 5;
- optional uint32 qos_id_size = 6;
- optional uint32 seqno_size = 7;
- optional bool has_ttl = 8;
- optional bool has_chk = 9;
- optional uint32 min_pdu_size = 10;
- optional uint32 max_pdu_size = 11;
- optional uint32 addr_auth_type = 12;
- optional uint32 dt_gam_type = 13;
+ optional uint32 seqno_size = 6;
+ optional bool has_ttl = 7;
+ optional bool has_chk = 8;
+ optional uint32 min_pdu_size = 9;
+ optional uint32 max_pdu_size = 10;
+ optional uint32 addr_auth_type = 11;
+ optional uint32 dt_gam_type = 12;
+ optional uint32 rm_gam_type = 13;
// Config for shim UDP
optional uint32 ip_addr = 14;
optional uint32 dns_addr = 15;
diff --git a/src/lib/irm.c b/src/lib/irm.c
index ade38b6f..8b312833 100644
--- a/src/lib/irm.c
+++ b/src/lib/irm.c
@@ -113,7 +113,6 @@ int irm_bootstrap_ipcp(pid_t api,
config.has_addr_size = true;
config.has_cep_id_size = true;
config.has_pdu_length_size = true;
- config.has_qos_id_size = true;
config.has_seqno_size = true;
config.has_has_ttl = true;
config.has_has_chk = true;
@@ -121,11 +120,11 @@ int irm_bootstrap_ipcp(pid_t api,
config.has_max_pdu_size = true;
config.has_addr_auth_type = true;
config.has_dt_gam_type = true;
+ config.has_rm_gam_type = true;
config.addr_size = conf->addr_size;
config.cep_id_size = conf->cep_id_size;
config.pdu_length_size = conf->pdu_length_size;
- config.qos_id_size = conf->qos_id_size;
config.seqno_size = conf->seqno_size;
config.has_ttl = conf->has_ttl;
config.has_chk = conf->has_chk;
@@ -133,6 +132,7 @@ int irm_bootstrap_ipcp(pid_t api,
config.max_pdu_size = conf->max_pdu_size;
config.addr_auth_type = conf->addr_auth_type;
config.dt_gam_type = conf->dt_gam_type;
+ config.rm_gam_type = conf->rm_gam_type;
break;
case IPCP_SHIM_UDP:
config.has_ip_addr = true;