diff libfreeDiameter/messages.c @ 37:cc3c59fe98fe

Lot of cleanups in peer structure management
author Sebastien Decugis <sdecugis@nict.go.jp>
date Thu, 05 Nov 2009 14:28:46 +0900
parents 6486e97f56ae
children c662d3eb6ff6
line wrap: on
line diff
--- a/libfreeDiameter/messages.c	Mon Nov 02 17:31:36 2009 +0900
+++ b/libfreeDiameter/messages.c	Thu Nov 05 14:28:46 2009 +0900
@@ -1062,8 +1062,8 @@
 	CHECK_PARAMS_DO(  CHECK_MSG(msg),  return 0 /* pretend the message is not routable */ );
 	
 	if ( ! msg->msg_routable ) {
-		/* To define if a message is routable, we rely on the "PXY" command flag yet. */
-		msg->msg_routable = (msg->msg_public.msg_flags & CMD_FLAG_PROXIABLE) ? 1 : 2;
+		/* To define if a message is routable, we rely on the "PXY" flag (for application 0). */
+		msg->msg_routable = ((msg->msg_public.msg_appl != 0) || (msg->msg_public.msg_flags & CMD_FLAG_PROXIABLE)) ? 1 : 2;
 		
 		/* Note : the 'real' criteria according to the Diameter I-D is that the message is 
 		 routable if and only if the "Destination-Realm" AVP is required by the command ABNF.
"Welcome to our mercurial repository"