aboutsummaryrefslogtreecommitdiffstats
path: root/hicn-light/src/hicn/processor
diff options
context:
space:
mode:
Diffstat (limited to 'hicn-light/src/hicn/processor')
-rw-r--r--hicn-light/src/hicn/processor/fib.c5
-rw-r--r--hicn-light/src/hicn/processor/fibEntry.c10
-rw-r--r--hicn-light/src/hicn/processor/fibEntry.h11
-rw-r--r--hicn-light/src/hicn/processor/messageProcessor.c1
4 files changed, 13 insertions, 14 deletions
diff --git a/hicn-light/src/hicn/processor/fib.c b/hicn-light/src/hicn/processor/fib.c
index 8822134fe..de0d1e2ef 100644
--- a/hicn-light/src/hicn/processor/fib.c
+++ b/hicn-light/src/hicn/processor/fib.c
@@ -236,6 +236,8 @@ void fib_Add(FIB *fib, FibEntry *entry) {
inner_node ->right = curr;
}
fib->size ++;
+
+ name_Release(&inner_prefix);
}
FibEntry *fib_Contains(const FIB *fib, const Name *prefix) {
@@ -431,6 +433,9 @@ void fib_Remove(FIB *fib, const Name *name, unsigned connId) {
_removeNode(fib, name);
#endif /* WITH_MAPME */
+ // XXX We never release the FIB entry here it seems, including the inner
+ // prefix
+
}
void _removeConnectionId(FibNode *n, unsigned connectionId,
diff --git a/hicn-light/src/hicn/processor/fibEntry.c b/hicn-light/src/hicn/processor/fibEntry.c
index 077e33ff3..7412b4ccf 100644
--- a/hicn-light/src/hicn/processor/fibEntry.c
+++ b/hicn-light/src/hicn/processor/fibEntry.c
@@ -55,7 +55,7 @@ struct fib_entry {
#ifdef WITH_POLICY
NumberSet *nexthops;
const Forwarder * forwarder;
- policy_t policy;
+ hicn_policy_t policy;
policy_counters_t policy_counters;
// NumberSet *available_nexthops;
#ifdef WITH_MAPME
@@ -198,7 +198,7 @@ fibEntry_GetAvailableNextHops(const FibEntry *fibEntry, unsigned in_connection)
ConnectionTable * table = forwarder_GetConnectionTable(fibEntry->forwarder);
NumberSet * nexthops;
bool dealloc_nexthops = false;
- policy_t policy = fibEntry_GetPolicy(fibEntry);
+ hicn_policy_t policy = fibEntry_GetPolicy(fibEntry);
/* Reset available next hops and start filtering */
NumberSet * available_nexthops = numberSet_Create();
@@ -465,11 +465,11 @@ fibEntry_GetAvailableNextHops(const FibEntry *fibEntry, unsigned in_connection)
return priority_nexthops;
}
-policy_t fibEntry_GetPolicy(const FibEntry *fibEntry) {
+hicn_policy_t fibEntry_GetPolicy(const FibEntry *fibEntry) {
return fibEntry->policy;
}
-void fibEntry_SetPolicy(FibEntry *fibEntry, policy_t policy) {
+void fibEntry_SetPolicy(FibEntry *fibEntry, hicn_policy_t policy) {
fibEntry->policy = policy;
mapme_reconsiderFibEntry(forwarder_getMapmeInstance(fibEntry->forwarder), fibEntry);
}
@@ -541,7 +541,7 @@ const NumberSet *fibEntry_GetNexthopsFromForwardingStrategy(
ConnectionTable * table = forwarder_GetConnectionTable(fibEntry->forwarder);
unsigned in_connection = message_GetIngressConnectionId(interestMessage);
- policy_t policy = fibEntry_GetPolicy(fibEntry);
+ hicn_policy_t policy = fibEntry_GetPolicy(fibEntry);
NumberSet * out;
diff --git a/hicn-light/src/hicn/processor/fibEntry.h b/hicn-light/src/hicn/processor/fibEntry.h
index 9e438b0e6..3f78f47dd 100644
--- a/hicn-light/src/hicn/processor/fibEntry.h
+++ b/hicn-light/src/hicn/processor/fibEntry.h
@@ -99,13 +99,6 @@ size_t fibEntry_NexthopCount(const FibEntry *fibEntry);
*/
const NumberSet *fibEntry_GetNexthops(const FibEntry *fibEntry);
-const NumberSet *fibEntry_GetNexthopsFromForwardingStrategy(
-#ifdef WITH_POLICY
- FibEntry *fibEntry, const Message *interestMessage, bool is_retransmission);
-#else
- const FibEntry *fibEntry, const Message *interestMessage);
-#endif /* WITH_POLICY */
-
#ifdef WITH_POLICY
void fibEntry_ReceiveObjectMessage(FibEntry *fibEntry,
#else
@@ -117,9 +110,9 @@ void fibEntry_ReceiveObjectMessage(const FibEntry *fibEntry,
Ticks objReception);
#ifdef WITH_POLICY
-policy_t fibEntry_GetPolicy(const FibEntry *fibEntry);
+hicn_policy_t fibEntry_GetPolicy(const FibEntry *fibEntry);
void fibEntry_ReconsiderPolicy(FibEntry *fibEntry);
-void fibEntry_SetPolicy(FibEntry *fibEntry, policy_t policy);
+void fibEntry_SetPolicy(FibEntry *fibEntry, hicn_policy_t policy);
void fibEntry_UpdateStats(FibEntry *fibEntry, uint64_t now);
NumberSet * fibEntry_GetAvailableNextHops(const FibEntry *fibEntry, unsigned in_connection);
NumberSet * fibEntry_GetPreviousNextHops(const FibEntry *fibEntry);
diff --git a/hicn-light/src/hicn/processor/messageProcessor.c b/hicn-light/src/hicn/processor/messageProcessor.c
index bdd9c23e8..d3f07cbda 100644
--- a/hicn-light/src/hicn/processor/messageProcessor.c
+++ b/hicn-light/src/hicn/processor/messageProcessor.c
@@ -619,6 +619,7 @@ static bool messageProcessor_ForwardViaFib(MessageProcessor *processor,
}
}
+ numberSet_Release(&nexthops);
return false;
}