mirror of
				https://gitlab.labs.nic.cz/labs/bird.git
				synced 2024-05-11 16:54:54 +00:00 
			
		
		
		
	Unnumbered OSPF interfaces should be always in the point-to-point mode.
This commit is contained in:
		| @@ -355,6 +355,9 @@ ospf_open_mc_socket(struct ospf_iface *ifa) | |||||||
| u8 | u8 | ||||||
| ospf_iface_clasify(struct iface * ifa) | ospf_iface_clasify(struct iface * ifa) | ||||||
| { | { | ||||||
|  |   if (ifa->addr->flags & IA_UNNUMBERED) | ||||||
|  |     return OSPF_IT_PTP; | ||||||
|  |  | ||||||
|   if ((ifa->flags & (IF_MULTIACCESS | IF_MULTICAST)) == |   if ((ifa->flags & (IF_MULTIACCESS | IF_MULTICAST)) == | ||||||
|       (IF_MULTIACCESS | IF_MULTICAST)) |       (IF_MULTIACCESS | IF_MULTICAST)) | ||||||
|     return OSPF_IT_BCAST; |     return OSPF_IT_BCAST; | ||||||
| @@ -458,6 +461,16 @@ ospf_iface_new(struct proto_ospf *po, struct iface *iface, | |||||||
|   else |   else | ||||||
|     ifa->type = ip->type; |     ifa->type = ip->type; | ||||||
|  |  | ||||||
|  | #ifdef OSPFv2 | ||||||
|  |   if ((ifa->type != OSPF_IT_PTP) && (ifa->type != OSPF_IT_VLINK) && | ||||||
|  |       (ifa->iface->addr->flags & IA_UNNUMBERED)) | ||||||
|  |   { | ||||||
|  |     log(L_WARN "%s: Missing proper IP prefix on interface %s, forcing point-to-point mode", | ||||||
|  | 	p->name,  iface->name); | ||||||
|  |     ifa->type = OSPF_IT_PTP; | ||||||
|  |   } | ||||||
|  | #endif | ||||||
|  |  | ||||||
|   init_list(&ifa->neigh_list); |   init_list(&ifa->neigh_list); | ||||||
|   init_list(&ifa->nbma_list); |   init_list(&ifa->nbma_list); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user