aboutsummaryrefslogtreecommitdiffstats
path: root/hicn-light/src/hicn/config
diff options
context:
space:
mode:
authorJordan Augé <jordan.auge+fdio@cisco.com>2019-11-07 16:42:01 +0100
committerJordan Augé <jordan.auge+fdio@cisco.com>2019-11-08 01:36:45 +0100
commit1bf749aa3e4b0ccc40057b2587af5211926a1431 (patch)
tree1e59105d64e7dc13f4f1cd4ae8437bb8bb932292 /hicn-light/src/hicn/config
parenta30d495f6e91f3bed0420bf76c19315fe0de8801 (diff)
[HICN-385] fix route removal in hicnctrl, code uniformization in hicn-light control api
Change-Id: Id097368dcde993775f206623195cc5aa57b4fe12 Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Diffstat (limited to 'hicn-light/src/hicn/config')
-rw-r--r--hicn-light/src/hicn/config/configuration.c32
-rw-r--r--hicn-light/src/hicn/config/configurationListeners.c16
-rw-r--r--hicn-light/src/hicn/config/controlAddConnection.c8
-rw-r--r--hicn-light/src/hicn/config/controlAddListener.c5
-rw-r--r--hicn-light/src/hicn/config/controlAddPolicy.c4
-rw-r--r--hicn-light/src/hicn/config/controlAddPunting.c4
-rw-r--r--hicn-light/src/hicn/config/controlAddRoute.c4
-rw-r--r--hicn-light/src/hicn/config/controlListPolicies.c1
-rw-r--r--hicn-light/src/hicn/config/controlRemovePolicy.c4
-rw-r--r--hicn-light/src/hicn/config/controlRemoveRoute.c4
-rw-r--r--hicn-light/src/hicn/config/controlSetStrategy.c4
11 files changed, 42 insertions, 44 deletions
diff --git a/hicn-light/src/hicn/config/configuration.c b/hicn-light/src/hicn/config/configuration.c
index c10b01c30..01192569f 100644
--- a/hicn-light/src/hicn/config/configuration.c
+++ b/hicn-light/src/hicn/config/configuration.c
@@ -305,11 +305,11 @@ struct iovec *configuration_ProcessRegistrationList(Configuration *config,
if (addressGetType(addressEntry) == ADDR_INET) {
addressGetInet(addressEntry, &tmpAddr);
listRouteCommand->addressType = ADDR_INET;
- listRouteCommand->address.ipv4 = tmpAddr.sin_addr.s_addr;
+ listRouteCommand->address.v4.as_inaddr = tmpAddr.sin_addr;
} else if (addressGetType(addressEntry) == ADDR_INET6) {
addressGetInet6(addressEntry, &tmpAddr6);
listRouteCommand->addressType = ADDR_INET6;
- listRouteCommand->address.ipv6 = tmpAddr6.sin6_addr;
+ listRouteCommand->address.v6.as_in6addr = tmpAddr6.sin6_addr;
}
listRouteCommand->connid = numberSet_GetItem(nexthops, j);
listRouteCommand->len = nameBitvector_GetLength(prefix);
@@ -370,14 +370,14 @@ struct iovec *configuration_ProcessCreateTunnel(Configuration *config,
if (control->ipType == ADDR_INET) {
source =
- addressFromInaddr4Port(&control->localIp.ipv4, &control->localPort);
+ addressFromInaddr4Port(&control->localIp.v4.as_u32, &control->localPort);
destination =
- addressFromInaddr4Port(&control->remoteIp.ipv4, &control->remotePort);
+ addressFromInaddr4Port(&control->remoteIp.v4.as_u32, &control->remotePort);
} else if (control->ipType == ADDR_INET6) {
source =
- addressFromInaddr6Port(&control->localIp.ipv6, &control->localPort);
+ addressFromInaddr6Port(&control->localIp.v6.as_in6addr, &control->localPort);
destination =
- addressFromInaddr6Port(&control->remoteIp.ipv6, &control->remotePort);
+ addressFromInaddr6Port(&control->remoteIp.v6.as_in6addr, &control->remotePort);
} else {
printf("Invalid IP type.\n"); // will generate a Nack
}
@@ -714,14 +714,14 @@ struct iovec *configuration_ProcessConnectionList(Configuration *config,
// get local port/address
addressGetInet(localAddress, &tmpAddr);
listConnectionsCommand->connectionData.localPort = tmpAddr.sin_port;
- listConnectionsCommand->connectionData.localIp.ipv4 =
- tmpAddr.sin_addr.s_addr;
+ listConnectionsCommand->connectionData.localIp.v4.as_inaddr =
+ tmpAddr.sin_addr;
memset(&tmpAddr, 0, sizeof(tmpAddr));
// get remote port/address
addressGetInet(remoteAddress, &tmpAddr);
listConnectionsCommand->connectionData.remotePort = tmpAddr.sin_port;
- listConnectionsCommand->connectionData.remoteIp.ipv4 =
- tmpAddr.sin_addr.s_addr;
+ listConnectionsCommand->connectionData.remoteIp.v4.as_inaddr =
+ tmpAddr.sin_addr;
} else if (addressGetType(localAddress) == ADDR_INET6 &&
addressGetType(remoteAddress) == ADDR_INET6) {
@@ -730,12 +730,12 @@ struct iovec *configuration_ProcessConnectionList(Configuration *config,
// get local port/address
addressGetInet6(localAddress, &tmpAddr6);
listConnectionsCommand->connectionData.localPort = tmpAddr6.sin6_port;
- listConnectionsCommand->connectionData.localIp.ipv6 = tmpAddr6.sin6_addr;
+ listConnectionsCommand->connectionData.localIp.v6.as_in6addr = tmpAddr6.sin6_addr;
memset(&tmpAddr6, 0, sizeof(tmpAddr6));
// get remote port/address
addressGetInet6(remoteAddress, &tmpAddr6);
listConnectionsCommand->connectionData.remotePort = tmpAddr6.sin6_port;
- listConnectionsCommand->connectionData.remoteIp.ipv6 = tmpAddr6.sin6_addr;
+ listConnectionsCommand->connectionData.remoteIp.v6.as_in6addr = tmpAddr6.sin6_addr;
} // no need further else, control on the addressed already done at the
// time of insertion in the connection table
@@ -789,7 +789,7 @@ struct iovec *configuration_ProcessListenersList(Configuration *config,
(const Address *)listenerEntry->getListenAddress(listenerEntry),
&tmpAddr);
listListenersCommand->addressType = ADDR_INET;
- listListenersCommand->address.ipv4 = tmpAddr.sin_addr.s_addr;
+ listListenersCommand->address.v4.as_inaddr = tmpAddr.sin_addr;
listListenersCommand->port = tmpAddr.sin_port;
} else if (addressGetType((const Address *)listenerEntry->getListenAddress(
listenerEntry)) == ADDR_INET6) {
@@ -797,7 +797,7 @@ struct iovec *configuration_ProcessListenersList(Configuration *config,
(const Address *)listenerEntry->getListenAddress(listenerEntry),
&tmpAddr6);
listListenersCommand->addressType = ADDR_INET6;
- listListenersCommand->address.ipv6 = tmpAddr6.sin6_addr;
+ listListenersCommand->address.v6.as_in6addr = tmpAddr6.sin6_addr;
listListenersCommand->port = tmpAddr6.sin6_port;
}
@@ -1209,11 +1209,11 @@ struct iovec *configuration_ProcessPolicyList(Configuration *config,
if (addressGetType(addressEntry) == ADDR_INET) {
addressGetInet(addressEntry, &tmpAddr);
listPoliciesCommand->addressType = ADDR_INET;
- listPoliciesCommand->address.ipv4 = tmpAddr.sin_addr.s_addr;
+ listPoliciesCommand->address.v4.as_inaddr = tmpAddr.sin_addr;
} else if (addressGetType(addressEntry) == ADDR_INET6) {
addressGetInet6(addressEntry, &tmpAddr6);
listPoliciesCommand->addressType = ADDR_INET6;
- listPoliciesCommand->address.ipv6 = tmpAddr6.sin6_addr;
+ listPoliciesCommand->address.v6.as_in6addr = tmpAddr6.sin6_addr;
}
listPoliciesCommand->len = nameBitvector_GetLength(prefix);
listPoliciesCommand->policy = fibEntry_GetPolicy(entry);
diff --git a/hicn-light/src/hicn/config/configurationListeners.c b/hicn-light/src/hicn/config/configurationListeners.c
index 8abbeb781..21bfe7640 100644
--- a/hicn-light/src/hicn/config/configurationListeners.c
+++ b/hicn-light/src/hicn/config/configurationListeners.c
@@ -364,7 +364,7 @@ bool _addHicn(Configuration *config, add_listener_command *control,
switch (control->addressType) {
case ADDR_INET: {
localAddress =
- addressFromInaddr4Port(&control->address.ipv4, &control->port);
+ addressFromInaddr4Port(&control->address.v4.as_u32, &control->port);
success = _setupHicnListenerOnInet4(configuration_GetForwarder(config),
symbolic, localAddress);
break;
@@ -372,7 +372,7 @@ bool _addHicn(Configuration *config, add_listener_command *control,
case ADDR_INET6: {
localAddress =
- addressFromInaddr6Port(&control->address.ipv6, &control->port);
+ addressFromInaddr6Port(&control->address.v6.as_in6addr, &control->port);
success = _setupHicnListenerOnInet6(configuration_GetForwarder(config),
symbolic, localAddress);
break;
@@ -416,11 +416,11 @@ bool _addIP(Configuration *config, add_listener_command *control,
if (control->connectionType == UDP_CONN) {
success =
_setupUdpListenerOnInet(configuration_GetForwarder(config), symbolic,
- &control->address.ipv4, &control->port, control->interfaceName);
+ &control->address.v4.as_u32, &control->port, control->interfaceName);
} else if (control->connectionType == TCP_CONN) {
success =
_setupTcpListenerOnInet(configuration_GetForwarder(config), symbolic,
- &control->address.ipv4, &control->port, control->interfaceName);
+ &control->address.v4.as_u32, &control->port, control->interfaceName);
}
break;
}
@@ -428,11 +428,11 @@ bool _addIP(Configuration *config, add_listener_command *control,
case ADDR_INET6: {
if (control->connectionType == UDP_CONN) {
success = _setupUdpListenerOnInet6Light(
- configuration_GetForwarder(config), symbolic, &control->address.ipv6,
+ configuration_GetForwarder(config), symbolic, &control->address.v6.as_in6addr,
&control->port, control->interfaceName);
} else if (control->connectionType == TCP_CONN) {
success = _setupTcpListenerOnInet6Light(
- configuration_GetForwarder(config), symbolic, &control->address.ipv6,
+ configuration_GetForwarder(config), symbolic, &control->address.v6.as_in6addr,
&control->port, control->interfaceName, 0);
}
break;
@@ -522,12 +522,12 @@ struct iovec *configurationListeners_AddPunting(Configuration *config,
bool success = false;
if (control->addressType == ADDR_INET) {
- Address *address = addressFromInaddr4Port(&control->address.ipv4, &port);
+ Address *address = addressFromInaddr4Port(&control->address.v4.as_u32, &port);
Punting *punting = puntingCreate(symbolicOrConnid, address, len);
success = _AddPuntingInet(config, punting, ingressId);
addressDestroy(&address);
} else if (control->addressType == ADDR_INET6) {
- Address *address = addressFromInaddr6Port(&control->address.ipv6, &port);
+ Address *address = addressFromInaddr6Port(&control->address.v6.as_in6addr, &port);
Punting *punting = puntingCreate(symbolicOrConnid, address, len);
success = _AddPuntingInet6(config, punting, ingressId);
addressDestroy(&address);
diff --git a/hicn-light/src/hicn/config/controlAddConnection.c b/hicn-light/src/hicn/config/controlAddConnection.c
index eaa680bde..e5af5a251 100644
--- a/hicn-light/src/hicn/config/controlAddConnection.c
+++ b/hicn-light/src/hicn/config/controlAddConnection.c
@@ -228,15 +228,15 @@ static CommandReturn _controlAddConnection_CreateTunnel(
parcMemory_AllocateAndClear(sizeof(add_connection_command));
// check and set IP addresses
- if (inet_pton(AF_INET, remote_ip, &addConnectionCommand->remoteIp.ipv4) ==
+ if (inet_pton(AF_INET, remote_ip, &addConnectionCommand->remoteIp.v4.as_u32) ==
1 &&
- inet_pton(AF_INET, local_ip, &addConnectionCommand->localIp.ipv4) == 1) {
+ inet_pton(AF_INET, local_ip, &addConnectionCommand->localIp.v4.as_u32) == 1) {
addConnectionCommand->ipType = ADDR_INET;
} else if (inet_pton(AF_INET6, remote_ip,
- &addConnectionCommand->remoteIp.ipv6) == 1 &&
+ &addConnectionCommand->remoteIp.v6.as_in6addr) == 1 &&
inet_pton(AF_INET6, local_ip,
- &addConnectionCommand->localIp.ipv6) == 1) {
+ &addConnectionCommand->localIp.v6.as_in6addr) == 1) {
addConnectionCommand->ipType = ADDR_INET6;
} else {
diff --git a/hicn-light/src/hicn/config/controlAddListener.c b/hicn-light/src/hicn/config/controlAddListener.c
index 1a94ff252..d4537b855 100644
--- a/hicn-light/src/hicn/config/controlAddListener.c
+++ b/hicn-light/src/hicn/config/controlAddListener.c
@@ -106,11 +106,10 @@ static CommandReturn _CreateListener(CommandParser *parser, CommandOps *ops,
parcMemory_AllocateAndClear(sizeof(add_listener_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &addListenerCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &addListenerCommand->address.v4.as_u32) == 1) {
addListenerCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &addListenerCommand->address.ipv6) ==
- 1) {
+ } else if (inet_pton(AF_INET6, addr, &addListenerCommand->address.v6.as_in6addr) == 1) {
addListenerCommand->addressType = ADDR_INET6;
} else {
diff --git a/hicn-light/src/hicn/config/controlAddPolicy.c b/hicn-light/src/hicn/config/controlAddPolicy.c
index 9bca3355e..29120446b 100644
--- a/hicn-light/src/hicn/config/controlAddPolicy.c
+++ b/hicn-light/src/hicn/config/controlAddPolicy.c
@@ -104,7 +104,7 @@ static CommandReturn _controlAddPolicy_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(add_policy_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &addPolicyCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &addPolicyCommand->address.v4.as_u32) == 1) {
if (len > 32) {
printf("ERROR: exceeded INET mask length, max=32\n");
parcMemory_Deallocate(&addPolicyCommand);
@@ -112,7 +112,7 @@ static CommandReturn _controlAddPolicy_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
addPolicyCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &addPolicyCommand->address.ipv6) == 1) {
+ } else if (inet_pton(AF_INET6, addr, &addPolicyCommand->address.v6.as_in6addr) == 1) {
if (len > 128) {
printf("ERROR: exceeded INET6 mask length, max=128\n");
parcMemory_Deallocate(&addPolicyCommand);
diff --git a/hicn-light/src/hicn/config/controlAddPunting.c b/hicn-light/src/hicn/config/controlAddPunting.c
index ff441f7f0..e3fb57c6b 100644
--- a/hicn-light/src/hicn/config/controlAddPunting.c
+++ b/hicn-light/src/hicn/config/controlAddPunting.c
@@ -109,7 +109,7 @@ static CommandReturn _controlAddPunting_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(add_punting_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &addPuntingCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &addPuntingCommand->address.v4.as_u32) == 1) {
if (len > 32) {
printf("ERROR: exceeded INET mask length, max=32\n");
parcMemory_Deallocate(&addPuntingCommand);
@@ -117,7 +117,7 @@ static CommandReturn _controlAddPunting_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
addPuntingCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &addPuntingCommand->address.ipv6) == 1) {
+ } else if (inet_pton(AF_INET6, addr, &addPuntingCommand->address.v6.as_in6addr) == 1) {
if (len > 128) {
printf("ERROR: exceeded INET6 mask length, max=128\n");
parcMemory_Deallocate(&addPuntingCommand);
diff --git a/hicn-light/src/hicn/config/controlAddRoute.c b/hicn-light/src/hicn/config/controlAddRoute.c
index 086cf3a2b..8a1adf6d6 100644
--- a/hicn-light/src/hicn/config/controlAddRoute.c
+++ b/hicn-light/src/hicn/config/controlAddRoute.c
@@ -113,7 +113,7 @@ static CommandReturn _controlAddRoute_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(add_route_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &addRouteCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &addRouteCommand->address.v4.as_u32) == 1) {
if (len > 32) {
printf("ERROR: exceeded INET mask length, max=32\n");
parcMemory_Deallocate(&addRouteCommand);
@@ -121,7 +121,7 @@ static CommandReturn _controlAddRoute_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
addRouteCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &addRouteCommand->address.ipv6) == 1) {
+ } else if (inet_pton(AF_INET6, addr, &addRouteCommand->address.v6.as_in6addr) == 1) {
if (len > 128) {
printf("ERROR: exceeded INET6 mask length, max=128\n");
parcMemory_Deallocate(&addRouteCommand);
diff --git a/hicn-light/src/hicn/config/controlListPolicies.c b/hicn-light/src/hicn/config/controlListPolicies.c
index c70d8baea..9aff68c69 100644
--- a/hicn-light/src/hicn/config/controlListPolicies.c
+++ b/hicn-light/src/hicn/config/controlListPolicies.c
@@ -69,7 +69,6 @@ static CommandReturn _controlListPolicies_HelpExecute(CommandParser *parser,
#define MAXSZ_STR_STAT 10
#define MAXSZ_APP_NAME 25
-#define MAXSZ_PREFIX 25
typedef struct {
#define _(x, y) char x[MAXSZ_POLICY_TAG_STATE];
diff --git a/hicn-light/src/hicn/config/controlRemovePolicy.c b/hicn-light/src/hicn/config/controlRemovePolicy.c
index 510203886..bd2e6e6d8 100644
--- a/hicn-light/src/hicn/config/controlRemovePolicy.c
+++ b/hicn-light/src/hicn/config/controlRemovePolicy.c
@@ -96,7 +96,7 @@ static CommandReturn _controlRemovePolicy_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(remove_policy_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &removePolicyCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &removePolicyCommand->address.v4.as_u32) == 1) {
if (len > 32) {
printf("ERROR: exceeded INET mask length, max=32\n");
parcMemory_Deallocate(&removePolicyCommand);
@@ -104,7 +104,7 @@ static CommandReturn _controlRemovePolicy_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
removePolicyCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &removePolicyCommand->address.ipv6) ==
+ } else if (inet_pton(AF_INET6, addr, &removePolicyCommand->address.v6.as_in6addr) ==
1) {
if (len > 128) {
printf("ERROR: exceeded INET6 mask length, max=128\n");
diff --git a/hicn-light/src/hicn/config/controlRemoveRoute.c b/hicn-light/src/hicn/config/controlRemoveRoute.c
index 0626886de..0f46211c1 100644
--- a/hicn-light/src/hicn/config/controlRemoveRoute.c
+++ b/hicn-light/src/hicn/config/controlRemoveRoute.c
@@ -104,7 +104,7 @@ static CommandReturn _controlRemoveRoute_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(remove_route_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &removeRouteCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &removeRouteCommand->address.v4.as_u32) == 1) {
if (len > 32) {
printf("ERROR: exceeded INET mask length, max=32\n");
parcMemory_Deallocate(&removeRouteCommand);
@@ -112,7 +112,7 @@ static CommandReturn _controlRemoveRoute_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
removeRouteCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &removeRouteCommand->address.ipv6) ==
+ } else if (inet_pton(AF_INET6, addr, &removeRouteCommand->address.v6.as_in6addr) ==
1) {
if (len > 128) {
printf("ERROR: exceeded INET6 mask length, max=128\n");
diff --git a/hicn-light/src/hicn/config/controlSetStrategy.c b/hicn-light/src/hicn/config/controlSetStrategy.c
index b2968712f..d8b326f42 100644
--- a/hicn-light/src/hicn/config/controlSetStrategy.c
+++ b/hicn-light/src/hicn/config/controlSetStrategy.c
@@ -123,7 +123,7 @@ static CommandReturn _controlSetStrategy_Execute(CommandParser *parser,
parcMemory_AllocateAndClear(sizeof(set_strategy_command));
// check and set IP address
- if (inet_pton(AF_INET, addr, &setStrategyCommand->address.ipv4) == 1) {
+ if (inet_pton(AF_INET, addr, &setStrategyCommand->address.v4.as_u32) == 1) {
if (len == UINT32_MAX) {
printf("Netmask not specified: set to 32 by default\n");
len = 32;
@@ -134,7 +134,7 @@ static CommandReturn _controlSetStrategy_Execute(CommandParser *parser,
return CommandReturn_Failure;
}
setStrategyCommand->addressType = ADDR_INET;
- } else if (inet_pton(AF_INET6, addr, &setStrategyCommand->address.ipv6) ==
+ } else if (inet_pton(AF_INET6, addr, &setStrategyCommand->address.v6.as_in6addr) ==
1) {
if (len == UINT32_MAX) {
printf("Netmask not specified: set to 128 by default\n");