osmux: Cleanup of CID alloc pool APIs
* Cleanup naming to make it far more clear
* Drop 2 variables holding CID values (allocated_cid, cid), in favour of
1 value holdinf the value and one bool stating whether the value is
used.
* Change conn_osmux_allocate_cid to allow allocating either next
available CID or a specific one, in preparation for forthcoming patches.
This commit can be merged straight away because anyway osmux cannot be
enabled in current status (blocked by vty config) and
(conn_)osmux_allocate_cid was/is not called anywhere. However, it helps
improving code base for future re-introduction of Osmux as it is
envisioned.
Change-Id: I737a248ac6c74add8e917fe2e2f36779d0f1d685
diff --git a/tests/mgcp/mgcp_test.c b/tests/mgcp/mgcp_test.c
index be45598..c4931b2 100644
--- a/tests/mgcp/mgcp_test.c
+++ b/tests/mgcp/mgcp_test.c
@@ -1554,25 +1554,34 @@
{
int id, i;
- OSMO_ASSERT(osmux_used_cid() == 0);
- id = osmux_get_cid();
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 0);
+
+ id = osmux_cid_pool_get_next();
OSMO_ASSERT(id == 0);
- OSMO_ASSERT(osmux_used_cid() == 1);
- osmux_put_cid(id);
- OSMO_ASSERT(osmux_used_cid() == 0);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 1);
+
+ osmux_cid_pool_get(30);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 2);
+ osmux_cid_pool_get(30);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 2);
+
+ osmux_cid_pool_put(id);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 1);
+ osmux_cid_pool_put(30);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 0);
for (i = 0; i < 256; ++i) {
- id = osmux_get_cid();
+ id = osmux_cid_pool_get_next();
OSMO_ASSERT(id == i);
- OSMO_ASSERT(osmux_used_cid() == i + 1);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == i + 1);
}
- id = osmux_get_cid();
+ id = osmux_cid_pool_get_next();
OSMO_ASSERT(id == -1);
for (i = 0; i < 256; ++i)
- osmux_put_cid(i);
- OSMO_ASSERT(osmux_used_cid() == 0);
+ osmux_cid_pool_put(i);
+ OSMO_ASSERT(osmux_cid_pool_count_used() == 0);
}
static const struct log_info_cat log_categories[] = {