Module: sems
Branch: sayer/offer_answer
Commit: 797f17d080e9191c25d1167e38fc0e552786b8ab
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=797f17d080e9191c25d1167e38fc0e552786b8ab

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Tue Oct 19 19:41:26 2010 +0200

handle errors in processing INVITE

---

 core/AmSession.cpp |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/core/AmSession.cpp b/core/AmSession.cpp
index 93f0be4..36fa00c 100644
--- a/core/AmSession.cpp
+++ b/core/AmSession.cpp
@@ -682,7 +682,19 @@ void AmSession::onSipRequest(const AmSipRequest& req)
 
   DBG("onSipRequest: method = %s\n",req.method.c_str());
   if(req.method == "INVITE"){
-    onInvite(req);
+    try {
+      onInvite(req);
+    }
+    catch(const string& s) {
+      ERROR("%s\n",s.c_str());
+      setStopped();
+      AmSipDialog::reply_error(req, 500, "Internal Server Error");
+    }
+    catch(const AmSession::Exception& e) {
+      ERROR("%i %s\n",e.code,e.reason.c_str());
+      setStopped();
+      AmSipDialog::reply_error(req,e.code,e.reason);
+    }
   }
   else if(req.method == "ACK"){
     return;

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to