Project

General

Profile

Bug #1740

add unit tests for queue_seqdel() and callers

Added by neels about 3 years ago. Updated 17 days ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
06/01/2016
Due date:
% Done:

0%

Spec Reference:

Description

See http://lists.osmocom.org/pipermail/osmocom-net-gprs/2016-May/000616.html
and following mails in this thread.

diff --git a/gtp/queue.c b/gtp/queue.c
index 5b4d849..fbfa1ec 100644
--- a/gtp/queue.c
+++ b/gtp/queue.c
@@ -105,8 +105,7 @@ static int queue_seqdel(struct queue_t *queue, struct qmsg_t *qmsg)
              printf("Begin queue_seqdel seq = %d\n", (int)qmsg->seq);

      for (qmsg2 = queue->hashseq[hash]; qmsg2; qmsg2 = qmsg2->seqnext) {
-             /* FIXME: this is always true !?! */
-             if (qmsg == qmsg) {
+             if (qmsg == qmsg2) {

queue_seqdel() is/was fundamentally broken.
We want unit tests for

  • queue_seqdel()
  • queue_freemsg()
  • queue_freemsg_seq()

as well as

  • gtp_conf()
  • gtp_retrans()

Related issues

Related to OsmoGGSN (former OpenGGSN) - Bug #3997: Retransmit queue is not clearedResolved05/11/2019

History

#1 Updated by pespin 17 days ago

I recently added TTCN3 tests for those. It's difficult to cover 100% cases with that kind of tests but at least it tests some basic stuff around it is working (like retransmission of request and response messages).

#2 Updated by pespin 17 days ago

  • Related to Bug #3997: Retransmit queue is not cleared added

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)