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@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serdev