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