This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Harald Welte gerrit-no-reply at lists.osmocom.org
Review at https://gerrit.osmocom.org/3841
lib/ippool: Add back-pointer from pool member to pool
This allows us to remove pool members without having to keep
a pointer to the pool around.
Change-Id: I9042eb85989c5451d7894678eca110dd19e78002
---
M lib/ippool.c
M lib/ippool.h
2 files changed, 3 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/openggsn refs/changes/41/3841/1
diff --git a/lib/ippool.c b/lib/ippool.c
index 1729ec7..b1b242d 100644
--- a/lib/ippool.c
+++ b/lib/ippool.c
@@ -295,6 +295,7 @@
in46a_inc(&addr);
(*this)->member[i].inuse = 0;
+ (*this)->member[i].pool = *this;
/* Insert into list of unused */
(*this)->member[i].prev = (*this)->lastdyn;
@@ -315,6 +316,7 @@
struct in46_addr *i6al = &(*this)->member[i].addr;
memset(i6al, 0, sizeof(*i6al));
(*this)->member[i].inuse = 0;
+ (*this)->member[i].pool = *this;
/* Insert into list of unused */
(*this)->member[i].prev = (*this)->laststat;
diff --git a/lib/ippool.h b/lib/ippool.h
index ba92a56..8249b7f 100644
--- a/lib/ippool.h
+++ b/lib/ippool.h
@@ -56,6 +56,7 @@
struct ippoolm_t {
struct in46_addr addr; /* IP address of this member */
+ struct ippool_t *pool; /* Pool to which we belong */
int inuse; /* 0=available; 1= dynamic; 2 = static */
struct ippoolm_t *nexthash; /* Linked list part of hash table */
struct ippoolm_t *prev, *next; /* Linked list of free dynamic or static */
--
To view, visit https://gerrit.osmocom.org/3841
To unsubscribe, visit https://gerrit.osmocom.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9042eb85989c5451d7894678eca110dd19e78002
Gerrit-PatchSet: 1
Gerrit-Project: openggsn
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>