mirror of
				https://git.proxmox.com/git/mirror_frr
				synced 2025-11-03 23:47:16 +00:00 
			
		
		
		
	bgpd: Always show CIDR mask when displaying routes
Classful networking has been obsolete for ages and there is currently an inconsistency between `show ip route` and `show bgp`, where the first one always displays the CIDR mask while the second one hides classful network masks. This commit adjusts the behavior of `show bgp` to always show the CIDR mask for a route, even when it is classful. Signed-off-by: Pascal Mathis <mail@pascalmathis.com>
This commit is contained in:
		
							parent
							
								
									6c70521823
								
							
						
					
					
						commit
						89e5e9f028
					
				@ -6245,24 +6245,14 @@ static void route_vty_out_route(struct prefix *p, struct vty *vty,
 | 
			
		||||
				json_object *json)
 | 
			
		||||
{
 | 
			
		||||
	int len = 0;
 | 
			
		||||
	uint32_t destination;
 | 
			
		||||
	char buf[BUFSIZ];
 | 
			
		||||
 | 
			
		||||
	if (p->family == AF_INET) {
 | 
			
		||||
		if (!json) {
 | 
			
		||||
			len = vty_out(vty, "%s",
 | 
			
		||||
				      inet_ntop(p->family, &p->u.prefix, buf,
 | 
			
		||||
						BUFSIZ));
 | 
			
		||||
			destination = ntohl(p->u.prefix4.s_addr);
 | 
			
		||||
 | 
			
		||||
			if ((IN_CLASSC(destination) && p->prefixlen == 24)
 | 
			
		||||
			    || (IN_CLASSB(destination) && p->prefixlen == 16)
 | 
			
		||||
			    || (IN_CLASSA(destination) && p->prefixlen == 8)
 | 
			
		||||
			    || p->u.prefix4.s_addr == 0) {
 | 
			
		||||
				/* When mask is natural,
 | 
			
		||||
				   mask is not displayed. */
 | 
			
		||||
			} else
 | 
			
		||||
				len += vty_out(vty, "/%d", p->prefixlen);
 | 
			
		||||
			len = vty_out(
 | 
			
		||||
				vty, "%s/%d",
 | 
			
		||||
				inet_ntop(p->family, &p->u.prefix, buf, BUFSIZ),
 | 
			
		||||
				p->prefixlen);
 | 
			
		||||
		} else {
 | 
			
		||||
			json_object_string_add(json, "prefix",
 | 
			
		||||
					       inet_ntop(p->family,
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user