Revision: 40866
http://brlcad.svn.sourceforge.net/brlcad/?rev=40866&view=rev
Author: davidloman
Date: 2010-09-29 19:22:24 +0000 (Wed, 29 Sep 2010)
Log Message:
-----------
Make NetMsgRouter send back an UNHANDLED_MSG_TYPE error if there is no routing
for recv-ed Msg Type.
Modified Paths:
--------------
rt^3/trunk/include/NetMsgTypes.h
rt^3/trunk/src/libNet/NetMsgRouter.cxx
Modified: rt^3/trunk/include/NetMsgTypes.h
===================================================================
--- rt^3/trunk/include/NetMsgTypes.h 2010-09-29 19:18:58 UTC (rev 40865)
+++ rt^3/trunk/include/NetMsgTypes.h 2010-09-29 19:22:24 UTC (rev 40866)
@@ -62,8 +62,9 @@
#define CMD_SHUTDOWN 0x9000
/* Failure Codes */
-const char OPERATION_NOT_AVAILABLE = 0x01;
-const char ACCOUNT_VALIDATION_FAIL = 0x02;
+const char UNHANDLED_MSG_TYPE = 0x01;
+const char OPERATION_NOT_AVAILABLE = 0x02;
+const char ACCOUNT_VALIDATION_FAIL = 0x03;
Modified: rt^3/trunk/src/libNet/NetMsgRouter.cxx
===================================================================
--- rt^3/trunk/src/libNet/NetMsgRouter.cxx 2010-09-29 19:18:58 UTC (rev
40865)
+++ rt^3/trunk/src/libNet/NetMsgRouter.cxx 2010-09-29 19:22:24 UTC (rev
40866)
@@ -69,10 +69,17 @@
s.append(QString::number(msg->getMsgType()));
Logger::getInstance()->logINFO("NetMsgRouter", s);
- for (int i = 0; i < list->length(); ++i) {
- list->at(i)->handleNetMsg(msg);
+ if (list->length() == 0) {
+ //If no routing table, send back an error
+ TypeOnlyMsg* tom = new TypeOnlyMsg(UNHANDLED_MSG_TYPE);
+ origin->send(tom);
+ return;
+
+ } else {
+ for (int i = 0; i < list->length(); ++i) {
+ list->at(i)->handleNetMsg(msg);
+ }
}
-
//Now delete msg
delete msg;
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits