summaryrefslogtreecommitdiff
path: root/src/tools/irm/irm_ipcp_bootstrap.c
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@ugent.be>2017-08-25 17:19:17 +0200
committerdimitri staessens <dimitri.staessens@ugent.be>2017-08-28 15:24:16 +0200
commit176698e8c2fd7ab8007b8074515d6144e7177d8e (patch)
tree6fa097b57aaafe3143b1f17e528479aa0624a005 /src/tools/irm/irm_ipcp_bootstrap.c
parenta4bff697871c8cc7252d029d77b180e41e821f7e (diff)
downloadouroboros-176698e8c2fd7ab8007b8074515d6144e7177d8e.tar.gz
ouroboros-176698e8c2fd7ab8007b8074515d6144e7177d8e.zip
ipcpd: Deprecate gam as autonomous component
The graph adjacency manager has been deprecated in favor of providing an external interface into the connectivity manager so that adjacencies can be controlled from the command line, user scripts or user applications. The gam and its associated policies were removed from the normal IPCP and the IRM configuration tools. The "/members" part of the RIB was deprecated. Removal of the gam means that initial connectivity based on changes in the RIB can't be provided, so some changes were required throughout the normal IPCP. The enrollment procedure was revised to establish its own connectivity. First, it gets boot information from a peer by establishing a connection to the remote enrollment component and downloading the IPCP configuratoin. This is now done using its own protocol buffers message in anticipation of deprecation of the RIB and CDAP for communication within a DIF. After the boot information is downloaded, it establishes a data transfer flow for enrolling the directory (DHT). After the DHT has enrolled, it signals the peer to that enrollment is done, and the data transfer connection is torn down. Signaling connections is done via the nbs struct, which is now passed to the connmgr, which enables control of the connectivity graph from external sources.
Diffstat (limited to 'src/tools/irm/irm_ipcp_bootstrap.c')
-rw-r--r--src/tools/irm/irm_ipcp_bootstrap.c25
1 files changed, 1 insertions, 24 deletions
diff --git a/src/tools/irm/irm_ipcp_bootstrap.c b/src/tools/irm/irm_ipcp_bootstrap.c
index 264fbfd5..a4a4d326 100644
--- a/src/tools/irm/irm_ipcp_bootstrap.c
+++ b/src/tools/irm/irm_ipcp_bootstrap.c
@@ -48,13 +48,9 @@
#define DEFAULT_FD_SIZE 2
#define DEFAULT_DDNS 0
#define DEFAULT_ADDR_AUTH FLAT_RANDOM
-#define DEFAULT_DT_GAM COMPLETE
-#define DEFAULT_RM_GAM COMPLETE
#define DEFAULT_ROUTING LINK_STATE
#define DEFAULT_HASH_ALGO DIR_HASH_SHA3_256
#define ADDR_AUTH_FLAT "flat"
-#define DT_GAM_COMPLETE "complete"
-#define RM_GAM_COMPLETE "complete"
#define ROUTING_LINK_STATE "link_state"
static void usage(void)
@@ -71,10 +67,6 @@ static void usage(void)
" [fd <fd size> (default: %d)]\n"
" [ttl (add time to live value in the PCI)]\n"
" [addr_auth <address policy> (default: %s)]\n"
- " [dt_gam <data transfer graph adjacency manager>"
- " (default: %s)]\n"
- " [rm_gam <rib manager graph adjacency manager>"
- " (default: %s)]\n"
" [routing <routing policy> (default: %s)]\n"
" [hash [ALGORITHM] (default: %s)]\n"
"where ALGORITHM = {" SHA3_224 " " SHA3_256 " "
@@ -86,8 +78,7 @@ static void usage(void)
"if TYPE == " SHIM_ETH_LLC "\n"
" if_name <interface name>\n",
DEFAULT_ADDR_SIZE, DEFAULT_FD_SIZE,
- ADDR_AUTH_FLAT, DT_GAM_COMPLETE, RM_GAM_COMPLETE,
- ROUTING_LINK_STATE, SHA3_256);
+ ADDR_AUTH_FLAT, ROUTING_LINK_STATE, SHA3_256);
}
int do_bootstrap_ipcp(int argc, char ** argv)
@@ -99,8 +90,6 @@ int do_bootstrap_ipcp(int argc, char ** argv)
uint8_t fd_size = DEFAULT_FD_SIZE;
bool has_ttl = false;
enum pol_addr_auth addr_auth_type = DEFAULT_ADDR_AUTH;
- enum pol_gam dt_gam_type = DEFAULT_DT_GAM;
- enum pol_gam rm_gam_type = DEFAULT_RM_GAM;
enum pol_routing routing_type = DEFAULT_ROUTING;
enum pol_dir_hash hash_algo = DEFAULT_HASH_ALGO;
uint32_t ip_addr = 0;
@@ -151,16 +140,6 @@ int do_bootstrap_ipcp(int argc, char ** argv)
addr_auth_type = FLAT_RANDOM;
else
goto unknown_param;
- } else if (matches(*argv, "dt_gam") == 0) {
- if (strcmp(DT_GAM_COMPLETE, *(argv + 1)) == 0)
- dt_gam_type = COMPLETE;
- else
- goto unknown_param;
- } else if (matches(*argv, "rm_gam") == 0) {
- if (strcmp(RM_GAM_COMPLETE, *(argv + 1)) == 0)
- rm_gam_type = COMPLETE;
- else
- goto unknown_param;
} else if (matches(*argv, "routing") == 0) {
if (strcmp(ROUTING_LINK_STATE, *(argv + 1)) == 0)
routing_type = LINK_STATE;
@@ -188,8 +167,6 @@ int do_bootstrap_ipcp(int argc, char ** argv)
conf.fd_size = fd_size;
conf.has_ttl = has_ttl;
conf.addr_auth_type = addr_auth_type;
- conf.dt_gam_type = dt_gam_type;
- conf.rm_gam_type = rm_gam_type;
conf.routing_type = routing_type;
conf.dif_info.dir_hash_algo = hash_algo;
} else if (strcmp(ipcp_type, SHIM_UDP) == 0) {