[Kamailio-Devel] bogus commit to t_lookup.c in openser 1.3?
Daniel-Constantin Mierla
miconda at gmail.com
Mon Dec 29 12:36:30 CET 2008
On 12/29/08 10:31, Juha Heinanen wrote:
> i started to read the debug log more carefully and noticed that the
> patch cannot be the reason why ack matching fails.
yes, as I said, the patch was for a case that should not happen that
often nowadays.
The problem is clear present in many versions. I have done some tests
with trunk and replies from config, not sure it resembles the
t_write_unix() case, and there are issues as well.
> the part of t_lookup
> code, which is affected by the patch (found => e2e_ack) is not executed
> when ack matching fails.
>
> so the bug must be somewhere else and may be timing dependent, because i
> don't see it every time.
>
> for some reason, the ack that twinkle sends, is found to be an e2e ack
> already in case 2 here:
>
This is dependent of how many transactions are in the hash table entry.
If there are many, then matching_3261() behaves wrong in some cases.
I already have a patch for trunk, can you test your scenario using the
trunk? Or shall I make one for 1.3?
Cheers,
Daniel
> branch=p_msg->via1->branch;
> 424 if (branch && branch->value.s && branch->value.len>MCOOKIE_LEN
> 425 && memcmp(branch->value.s,MCOOKIE,MCOOKIE_LEN)==0) {
> 426 /* huhuhu! the cookie is there -- let's proceed fast */
> 427 LOCK_HASH(p_msg->hash_index);
> 428 match_status=matching_3261(p_msg,&p_cell,
> 429 /* skip transactions with different method; otherwise CANCEL
> 430 * would match the previous INVITE trans. */
> 431 isACK ? ~METHOD_INVITE: ~p_msg->REQ_METHOD);
> 432 switch(match_status) {
> 433 case 0: goto notfound; /* no match */
> 434 case 1: goto found; /* match */
> 435 case 2: goto e2e_ack; /* e2e proxy ACK */
> 436 }
> 437 }
>
> i.e., matching_3261 function things that it is an e2eproxy ack, whatever
> that is.
>
> -- juha
>
> _______________________________________________
> Devel mailing list
> Devel at lists.kamailio.org
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/devel
>
>
--
Daniel-Constantin Mierla
http://www.asipto.com
More information about the Devel
mailing list