[PATCH] Fix EMI unacked message detection in windowing mode

Olivier Dormond <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization MNC Mobile News Channel SA
Message-ID <20100708105216.5485432c@angband>
Hello,

 Here is a patch against 1.4.3 to fix the detection of non-acked
messages sent through EMI/UCP. The problem arise when the window
parameter is set to a non-default value. In this case the loop in 
emi2_idleprocessing which search for unacked messages only examine
the first "window" messages of the ring-buffer and thus misses any
unacked message with a trn higher then "window".

Cheers,

				Olivier

-- 
______________________________________________________________________
MNC Mobile News Channel SA              Direct phone: +41 21 317 50 25
Olivier Dormond                         Central:      +41 21 317 50 20
Av. de la Gare 10                       Fax:          +41 21 317 50 21
1003 Lausanne                           Email:          [email protected]
kannel-1.4.3-emi-windowing-fix.patch (text/x-patch, 635 B)
diff -rubB kannel-1.4.3/gw/smsc/smsc_emi.c kannel-1.4.3-emi-windowing-fix/gw/smsc/smsc_emi.c
--- kannel-1.4.3/gw/smsc/smsc_emi.c	2009-01-12 17:46:50.000000000 +0100
+++ kannel-1.4.3-emi-windowing-fix/gw/smsc/smsc_emi.c	2010-07-08 10:35:06.000000000 +0200
@@ -1199,7 +1199,7 @@
     
     if (PRIVDATA(conn)->unacked && (current_time > (PRIVDATA(conn)->check_time + 30))) {
 	PRIVDATA(conn)->check_time = current_time;
-        for (i = 0; i < PRIVDATA(conn)->window; i++) {
+        for (i = 0; i < EMI2_MAX_TRN; i++) {
 	    if (SLOTBUSY(conn,i)
 		&& PRIVDATA(conn)->slots[i].sendtime < (current_time - PRIVDATA(conn)->waitack)) {
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.