mirror of
				https://gitlab.labs.nic.cz/labs/bird.git
				synced 2024-05-11 16:54:54 +00:00 
			
		
		
		
	Use preferences properly.
This commit is contained in:
		| @@ -351,10 +351,10 @@ extern struct protocol *attr_class_to_protocol[EAP_MAX]; | ||||
|  | ||||
| #define DEF_PREF_DIRECT	    	240	/* Directly connected */ | ||||
| #define DEF_PREF_STATIC		200	/* Static route */ | ||||
| #define DEF_PREF_OSPF_INTERNAL	150	/* OSPF intra-area, inter-area and type 1 external routes */ | ||||
| #define DEF_PREF_OSPF		150	/* OSPF intra-area, inter-area and type 1 external routes */ | ||||
| #define DEF_PREF_RIP		120	/* RIP */ | ||||
| #define DEF_PREF_BGP		100	/* BGP */ | ||||
| #define DEF_PREF_OSPF_EXTERNAL	80	/* OSPF external routes */ | ||||
| #define DEF_PREF_PIPE		70	/* Routes piped from other tables */ | ||||
| #define DEF_PREF_INHERITED	10	/* Routes inherited from other routing daemons */ | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -20,6 +20,7 @@ CF_ADDTO(proto, ospf_proto '}') | ||||
|  | ||||
| ospf_proto_start: proto_start OSPF { | ||||
|      this_proto = proto_config_new(&proto_ospf, sizeof(struct ospf_config)); | ||||
|      this_proto->preference = DEF_PREF_OSPF; | ||||
|   } | ||||
|  ; | ||||
|  | ||||
|   | ||||
| @@ -211,6 +211,7 @@ again: | ||||
|         e->u.ospf.tag=0;			/* FIXME Some config? */ | ||||
|         e->pflags = 0; | ||||
|         e->net=ne; | ||||
| 	e->pref = p->preference; | ||||
|         DBG("Modifying rt entry %I\n     (IP: %I, GW: %I, Iface: %s)\n", | ||||
|           nf->fn.prefix,ip,en->nh,en->nhi->name); | ||||
|         rte_update(p->table, ne, p, e); | ||||
|   | ||||
| @@ -31,7 +31,7 @@ kern_proto_start: proto_start KERNEL { | ||||
|        cf_error("Kernel protocol already defined"); | ||||
| #endif | ||||
|      cf_krt = this_proto = proto_config_new(&proto_unix_kernel, sizeof(struct krt_config)); | ||||
|      this_proto->preference = 0; | ||||
|      this_proto->preference = DEF_PREF_INHERITED; | ||||
|      THIS_KRT->scan_time = 60; | ||||
|      THIS_KRT->learn = THIS_KRT->persist = 0; | ||||
|      krt_scan_construct(THIS_KRT); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user