Bugs item #1791953, was opened at 2007-09-10 23:41
Message generated for change (Comment added) made by bogdan_iancu
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1791953&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver 1.2.x
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Ovidiu Sas (osas)
Assigned to: Bogdan (bogdan_iancu)
Summary: missing dialog callback for ACK (dialog module)

Initial Comment:
Dialog callback are not run for ACKs.
Here's a small patch (for dev version) that will fix the issue.  Same patch can 
be applied to 1.2.

# svn diff
Index: dlg_handlers.c
===================================================================
--- dlg_handlers.c      (revision 2733)
+++ dlg_handlers.c      (working copy)
@@ -613,7 +613,7 @@
                return;
        }
 
-       if (event==DLG_EVENT_REQ && new_state==DLG_STATE_CONFIRMED) {
+       if ((event==DLG_EVENT_REQ || event==DLG_EVENT_REQACK) && 
new_state==DLG_STATE_CONFIRMED) {
                DBG("DEBUG:dialog:dlg_onroute: sequential request successfully "
                        "processed\n");
                dlg->lifetime = get_dlg_timeout(req);


----------------------------------------------------------------------

>Comment By: Bogdan (bogdan_iancu)
Date: 2007-10-23 18:42

Message:
Logged In: YES 
user_id=1275325
Originator: NO

Hi Ovidiu,

I was looking over the report and I'm a bit confused... Why should the
update take place only for ACK and not for the other sequential requests
too (as per original patch) ? The original idea was to allow you to grab
all sequential requests and to update the the dialog lifetime with each
sequential request.

Regards,
Bogdan

----------------------------------------------------------------------

Comment By: Ovidiu Sas (osas)
Date: 2007-10-22 18:45

Message:
Logged In: YES 
user_id=1395524
Originator: YES

The right patch for this one would be to check only for ACK -
DLG_EVENT_REQACK (no need to chack for DLG_EVENT_REQ):
Index: modules/dialog/dlg_handlers.c
===================================================================
--- modules/dialog/dlg_handlers.c       (revision 2967)
+++ modules/dialog/dlg_handlers.c       (working copy)
@@ -590,7 +590,7 @@
                return;
        }
 
-       if (event==DLG_EVENT_REQ && new_state==DLG_STATE_CONFIRMED) {
+       if (event==DLG_EVENT_REQACK && new_state==DLG_STATE_CONFIRMED) {
                LM_DBG("sequential request successfully processed\n");
                dlg->lifetime = get_dlg_timeout(req);
                if (update_dlg_timer( &dlg->tl, dlg->lifetime )!=-1) {

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1791953&group_id=139143

_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel

Reply via email to