DIST_LIST_INCL functions

Do Suns tests first.

DIST_LIST_INCL on Peers

6 way


Add to local-node portion 


	local-info {
		   route-server no;
		   allow-dist { rdi-1 rdi-2 rdi-3 }
		   }
	ext-info {
		 route-server yes;
		 allow-dist {rdi-4 rdi-5 rdi-6} 
		 } 
	

	Test 0 : no routes
	Test 1: route set 1 - local
		route set 2 - ext info set
	Test 3: route set 2 deleted
		route set 3 (routes in route set 1 with 
			     exterior flag)

	Test 4: route set 2 added
	Test 5: route set 2 & 3 delete
	

	Run with deltas & rib refresh on internal, external peers. 
	External peers have rdi rdi-1, rdi-2, rdi-3, rdi-4, rdi-5, rdi-6.	

Import for DIST_LIST_INCL

Tests

Test Group 1: Dist _list exact
 

	remote side sets it in peer 


	import proto idrp rdi rdi1 
		idrp_ps_policy_atts {
		dist_list_incl {rdi-1 rdi-2 rdi-3} ;
		}
		{
		policy;
		}



For Test Group 1 use the following setting for the remote side tests:
	Test 0 : no routes with set
	Test 1: route set 1 - local
		route set 2 - ext info set
	Test 3: route set 2 deleted
		route set 3 (routes in route set 1 with 
			     exterior flag)

	Test 4: route set 2 added
	Test 5: route set 2 & 3 delete
	

Test Group 2: list of rdis is not exact  
	      remote side doesn't sets it in peer 
	Test 1: route 1 only


	import proto idrp rdi rdi1 
		idrp_ps_policy_atts {
		 dist_list_incl {rdi-7}	
		}
		{
		policy;
		}

Test Group 3: list of rdis is not but contains a subset 
	Test 1: route 1 only
		route should not come in


	import proto idrp rdi rdi1 
		idrp_ps_policy_atts {
		 dist_list_incl {rdi-1 rdi-2 }	
		}
		{
		policy;
		}

These test are run on 6 peers, with internal, external meshes in
the Rib-Refresh and Deltas.

Export Tests

These test are run on 6 peers, with internal, external meshes in
the Rib-Refresh and Deltas.

Export Tests

Tests on Source

Insert the above two groups of tests into the source of the export clause


	export proto idrp rdi rdi-1
	 {
	  proto idrp rdi rdi-2 
		idrp_ps_policy_atts {
		dist-list-incl { rdi-1 rdi-2 rdi-3 }
		}
		{
		policy;
		};
          proto idrp rdi rdi-3
		idrp_ps_policy_atts {
		dist-list-incl {rdi-7}
		};
		{
		policy;
		};
	};	

Policy should vary with:
  1. all restrict
  2. all
  3. route set 1
  4. route set 2
  5. none

Tests on Modifying Export

Run tests Export Source with the following additional code:


	export proto idrp rdi rdi-1
	 idrp-ps-att {
		dist-list-incl {rdi-1}	
		}
	 {

	# should restrict this to rdi-1
	  proto idrp rdi rdi-2 
		idrp_ps_policy_atts {
		dist-list-incl {rdi-1 rdi-2 rdi-3}
		}
		{
		policy;
		};

	# should not allow any of these routes out

	  proto idrp rdi rdi-3 
		idrp_ps_policy_atts {
		dist-list-incl {rdi-2 rdi-3}
		}
		{
		policy;
		};

	# no dist_list  exists for this node 
	# should add the dist-list

          proto idrp rdi rdi-3
		{
		policy;
		};
	};