From d7c8695c3b106b9d2f1185cd14b0e746dbfa353b Mon Sep 17 00:00:00 2001 From: David Vossel Date: Wed, 2 Sep 2009 16:09:13 +0000 Subject: [PATCH] Merged revisions 215466 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ........ r215466 | dvossel | 2009-09-02 11:08:00 -0500 (Wed, 02 Sep 2009) | 16 lines SIP support for keep-alive event keep-alive events are used by Sipura/Linksys for NAT keepalive. There currently don't appear to be any problems with NAT, but everytime a keep-alive event is received, Asterisk responds with a "489 Bad event". This error may indicate to a user that NAT problems exist just because this even is not supported. Now, rather than respond with an error, the packet is consumed and a "200 ok" is sent just to indicate we received the packet. (issue #15084) Patches: chan_sip.keepalive.v1.diff uploaded by IgorG (license 20) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@215467 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_sip.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 161d5fafdb..c24cf9006f 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -18526,6 +18526,10 @@ static int handle_request_notify(struct sip_pvt *p, struct sip_request *req, str } transmit_response(p, "200 OK", req); + } else if (!strcmp(event, "keep-alive")) { + /* Used by Sipura/Linksys for NAT pinhole, + * just confirm that we recieved the packet. */ + transmit_response(p, "200 OK", req); } else { /* We don't understand this event. */ transmit_response(p, "489 Bad event", req);