@@ -536,7 +536,7 @@ int osmux_used_cid(void)
{
int i, j, used = 0;
- for (i = 0; i < sizeof(osmux_cid_bitmap) / 8; i++) {
+ for (i = 0; i < sizeof(osmux_cid_bitmap); i++) {
for (j = 0; j < 8; j++) {
if (osmux_cid_bitmap[i] & (1 << j))
used += 1;
@@ -550,7 +550,7 @@ int osmux_get_cid(void)
{
int i, j;
- for (i = 0; i < sizeof(osmux_cid_bitmap) / 8; i++) {
+ for (i = 0; i < sizeof(osmux_cid_bitmap); i++) {
for (j = 0; j < 8; j++) {
if (osmux_cid_bitmap[i] & (1 << j))
continue;
@@ -1186,7 +1186,7 @@ static void test_osmux_cid(void)
osmux_put_cid(id);
OSMO_ASSERT(osmux_used_cid() == 0);
- for (i = 0; i < 16; ++i) {
+ for (i = 0; i < 128; ++i) {
id = osmux_get_cid();
OSMO_ASSERT(id == i);
OSMO_ASSERT(osmux_used_cid() == i + 1);
From: Holger Hans Peter Freyther <holger@moiji-mobile.com> sizeof(uint8_t) == 1 and there is no need to create an array with 16 bytes and then only use the first two of them. This means the CID range is from 0 to 127 and we should be able to extend this to 256 by changing the array size to 32. Update the testcase now that we can have more than 16 calls with Osmux. --- openbsc/src/libmgcp/mgcp_osmux.c | 4 ++-- openbsc/tests/mgcp/mgcp_test.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)