[Serusers] Re: [Serdev] [Fwd: Support for INFO method]

Maxim Sobolev sobomax at portaone.com
Thu May 19 19:52:40 CEST 2005


Bayan Towfiq wrote:
> Hi Maxim,
> Do you know if anyone has RFC2833 support done for SEMS?

Yes, we've done. It will be committed into the SEMS's cvs in few days 
from now.

-Maxim


> 
> Thanks,
> Bayan
> 
> Maxim Sobolev wrote:
> 
>> Folks,
>>
>> Please approve attached patch, which adds support for INFO method in the
>> parser and in the FIFO. This support is necessary for getting
>> out-of-band DTMF support working in SEMS (yes, we do have this patch for
>> SEMS already :).
>>
>> Thanks!
>>
>> -Maxim
>>
>> ------------------------------------------------------------------------
>>
>> Index: stats.h
>> ===================================================================
>> RCS file: /cvsroot/ser/sip_router/stats.h,v
>> retrieving revision 1.10
>> diff -d -u -d -u -r1.10 stats.h
>> --- stats.h    24 Aug 2004 08:45:10 -0000    1.10
>> +++ stats.h    16 May 2005 22:49:34 -0000
>> @@ -47,6 +47,7 @@
>>               case METHOD_ACK: stats->dir##_requests_ack++; 
>> break;        \
>>               case METHOD_CANCEL: stats->dir##_requests_cnc++; 
>> break;    \
>>               case METHOD_BYE: stats->dir##_requests_bye++; 
>> break;        \
>> +        case METHOD_INFO: stats->dir##_requests_info++; break;        \
>>               case METHOD_OTHER: stats->dir##_requests_other++; 
>> break;    \
>>               default: LOG(L_ERR, "ERROR: unknown method in rq stats 
>> (%s)\n", \
>>                             #dir);    \
>> Index: modules/tm/t_fifo.c
>> ===================================================================
>> RCS file: /cvsroot/ser/sip_router/modules/tm/t_fifo.c,v
>> retrieving revision 1.22
>> diff -d -u -d -u -r1.22 t_fifo.c
>> --- modules/tm/t_fifo.c    25 Apr 2005 09:06:33 -0000    1.22
>> +++ modules/tm/t_fifo.c    16 May 2005 22:49:34 -0000
>> @@ -805,6 +805,7 @@
>>         str_uri.len,str_uri.len ? str_uri.s : "");
>>     
>>     if ( REQ_LINE(msg).method_value==METHOD_INVITE || +         
>> REQ_LINE(msg).method_value==METHOD_INFO ||
>>             (twi->append && twi->append->add_body) ) {
>>         /* get body */
>>         if( (body.s = get_body(msg)) == 0 ){
>> Index: parser/msg_parser.h
>> ===================================================================
>> RCS file: /cvsroot/ser/sip_router/parser/msg_parser.h,v
>> retrieving revision 1.56
>> diff -d -u -d -u -r1.56 msg_parser.h
>> --- parser/msg_parser.h    28 Feb 2005 15:28:24 -0000    1.56
>> +++ parser/msg_parser.h    16 May 2005 22:49:34 -0000
>> @@ -67,7 +67,7 @@
>>
>> /* number methods as power of two to allow bitmap matching */
>> enum request_method { METHOD_UNDEF=0, METHOD_INVITE=1, 
>> METHOD_CANCEL=2, METHOD_ACK=4, -    METHOD_BYE=8, METHOD_OTHER=16 };
>> +    METHOD_BYE=8, METHOD_INFO=16, METHOD_OTHER=32 };
>>
>> #define FL_FORCE_RPORT 1   /* force rport */
>> #define FL_FORCE_ACTIVE 2  /* force active SDP */
>> Index: parser/parse_fline.c
>> ===================================================================
>> RCS file: /cvsroot/ser/sip_router/parser/parse_fline.c,v
>> retrieving revision 1.8
>> diff -d -u -d -u -r1.8 parse_fline.c
>> --- parser/parse_fline.c    24 Aug 2004 09:01:25 -0000    1.8
>> +++ parser/parse_fline.c    16 May 2005 22:49:34 -0000
>> @@ -1192,6 +1192,7 @@
>>     else IFISMETHOD( CANCEL, 'C')
>>     else IFISMETHOD( ACK, 'A' )
>>     else IFISMETHOD( BYE, 'B' ) +    else IFISMETHOD( INFO, 'I' )
>>     /* if you want to add another method XXX, include METHOD_XXX in
>>            H-file (this is the value which you will take later in
>>            processing and define XXX_LEN as length of method name;
>> Index: parser/parse_fline.h
>> ===================================================================
>> RCS file: /cvsroot/ser/sip_router/parser/parse_fline.h,v
>> retrieving revision 1.6
>> diff -d -u -d -u -r1.6 parse_fline.h
>> --- parser/parse_fline.h    24 Aug 2004 09:01:25 -0000    1.6
>> +++ parser/parse_fline.h    16 May 2005 22:49:34 -0000
>> @@ -51,6 +51,7 @@
>> #define CANCEL_LEN 6
>> #define ACK_LEN 3
>> #define BYE_LEN 3
>> +#define INFO_LEN 4
>>
>>
>> struct msg_start {
>>
>>  
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Serdev mailing list
>> serdev at lists.iptel.org
>> http://lists.iptel.org/mailman/listinfo/serdev
>>  
>>
> 
> 
> 




More information about the sr-users mailing list