aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2010-12-22 22:56:15 +0100
committerHarald Welte <laforge@gnumonks.org>2010-12-26 10:01:41 +0100
commitc13efee3c50e58ad9b0de85bf1e1eabdc8173ea3 (patch)
treef3643831900be69decb9cc7fc3a040aa486c12b9 /openbsc/src
parentfb06b31343c22be4f952ad65111c4365b632d12f (diff)
mncc_sock: Add an assert() in case our queue peek trick goes wrong
Diffstat (limited to 'openbsc/src')
-rw-r--r--openbsc/src/mncc_sock.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/openbsc/src/mncc_sock.c b/openbsc/src/mncc_sock.c
index 9e728bc14..be0d9b933 100644
--- a/openbsc/src/mncc_sock.c
+++ b/openbsc/src/mncc_sock.c
@@ -25,6 +25,7 @@
#include <stdlib.h>
#include <string.h>
#include <errno.h>
+#include <assert.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>
@@ -118,7 +119,7 @@ static int mncc_sock_write(struct bsc_fd *bfd)
int rc;
while (!llist_empty(&net->upqueue)) {
- struct msgb *msg;
+ struct msgb *msg, *msg2;
struct gsm_mncc *mncc_prim;
/* peek at the beginning of the queue */
@@ -139,7 +140,9 @@ static int mncc_sock_write(struct bsc_fd *bfd)
goto close;
}
/* _after_ we send it, we can deueue */
- msgb_dequeue(&net->upqueue);
+ msg2 = msgb_dequeue(&net->upqueue);
+ assert(msg == msg2);
+ msgb_free(msg);
}
return 0;