diff options
Diffstat (limited to 'src/ipcpd/unicast')
| -rw-r--r-- | src/ipcpd/unicast/dt.c | 17 | ||||
| -rw-r--r-- | src/ipcpd/unicast/dt.h | 6 | ||||
| -rw-r--r-- | src/ipcpd/unicast/main.c | 22 | 
3 files changed, 13 insertions, 32 deletions
| diff --git a/src/ipcpd/unicast/dt.c b/src/ipcpd/unicast/dt.c index 48940a2b..60975aed 100644 --- a/src/ipcpd/unicast/dt.c +++ b/src/ipcpd/unicast/dt.c @@ -563,10 +563,7 @@ static void * dt_conn_handle(void * o)          return 0;  } -int dt_init(enum pol_routing pr, -            uint8_t          addr_size, -            uint8_t          eid_size, -            uint8_t          max_ttl) +int dt_init(struct dt_config cfg)  {          int              i;          int              j; @@ -582,14 +579,14 @@ int dt_init(enum pol_routing pr,          info.pref_syntax  = PROTO_FIXED;          info.addr         = ipcpi.dt_addr; -        if (eid_size != 8) { /* only support 64 bits from now */ +        if (cfg.eid_size != 8) { /* only support 64 bits from now */                  log_warn("Invalid EID size. Only 64 bit is supported."); -                eid_size = 8; +                cfg.eid_size = 8;          } -        dt_pci_info.addr_size = addr_size; -        dt_pci_info.eid_size  = eid_size; -        dt_pci_info.max_ttl   = max_ttl; +        dt_pci_info.addr_size = cfg.addr_size; +        dt_pci_info.eid_size  = cfg.eid_size; +        dt_pci_info.max_ttl   = cfg.max_ttl;          dt_pci_info.qc_o      = dt_pci_info.addr_size;          dt_pci_info.ttl_o     = dt_pci_info.qc_o + QOS_LEN; @@ -607,7 +604,7 @@ int dt_init(enum pol_routing pr,                  goto fail_connmgr_comp_init;          } -        pp = routing_init(pr); +        pp = routing_init(cfg.routing_type);          if (pp < 0) {                  log_err("Failed to init routing.");                  goto fail_routing; diff --git a/src/ipcpd/unicast/dt.h b/src/ipcpd/unicast/dt.h index 5ad8cceb..478c79ea 100644 --- a/src/ipcpd/unicast/dt.h +++ b/src/ipcpd/unicast/dt.h @@ -31,11 +31,7 @@  #define DT_PROTO     "dtp"  #define INVALID_ADDR 0 -int  dt_init(enum pol_routing pr, -             uint8_t          addr_size, -             uint8_t          eid_size, -             uint8_t          max_ttl -); +int  dt_init(struct dt_config cfg);  void dt_fini(void); diff --git a/src/ipcpd/unicast/main.c b/src/ipcpd/unicast/main.c index 4d2ef1f2..1318ec2f 100644 --- a/src/ipcpd/unicast/main.c +++ b/src/ipcpd/unicast/main.c @@ -59,18 +59,13 @@ struct ipcp ipcpi;  static int initialize_components(const struct ipcp_config * conf)  { -        ipcpi.layer_name = strdup(conf->layer_info.layer_name); -        if (ipcpi.layer_name == NULL) { -                log_err("Failed to set layer name."); -                goto fail_layer_name; -        } - +        strcpy(ipcpi.layer_name, conf->layer_info.layer_name);          ipcpi.dir_hash_algo = conf->layer_info.dir_hash_algo;          assert(ipcp_dir_hash_len() != 0); -        if (addr_auth_init(conf->addr_auth_type, -                           &conf->addr_size)) { +        if (addr_auth_init(conf->unicast.addr_auth_type, +                           &conf->unicast.dt.addr_size)) {                  log_err("Failed to init address authority.");                  goto fail_addr_auth;          } @@ -83,15 +78,12 @@ static int initialize_components(const struct ipcp_config * conf)          log_dbg("IPCP got address %" PRIu64 ".", ipcpi.dt_addr); -        if (ca_init(conf->cong_avoid)) { +        if (ca_init(conf->unicast.cong_avoid)) {                  log_err("Failed to initialize congestion avoidance.");                  goto fail_ca;          } -        if (dt_init(conf->routing_type, -                    conf->addr_size, -                    conf->eid_size, -                    conf->max_ttl)) { +        if (dt_init(conf->unicast.dt)) {                  log_err("Failed to initialize data transfer component.");                  goto fail_dt;          } @@ -119,8 +111,6 @@ static int initialize_components(const struct ipcp_config * conf)   fail_ca:          addr_auth_fini();   fail_addr_auth: -        free(ipcpi.layer_name); - fail_layer_name:          return -1;  } @@ -135,8 +125,6 @@ static void finalize_components(void)          ca_fini();          addr_auth_fini(); - -        free(ipcpi.layer_name);  }  static int start_components(void) | 
