diff options
| author | Donald Sharp <sharpd@nvidia.com> | 2021-01-05 18:25:10 -0500 | 
|---|---|---|
| committer | Donald Sharp <sharpd@nvidia.com> | 2021-01-13 13:22:27 -0500 | 
| commit | bf902d4c52cab7ebd3976870d75810f10e38f8b8 (patch) | |
| tree | 99589c8b0e0fe337aba1d6aeebb263fc343d77fd /lib | |
| parent | d7ceaa8f5a9d83eddc784e395bb719dc59d4b4be (diff) | |
zebra: Create function to dump MACIP flags
Create a function to dump MACIP flags and to use it.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/zclient.c | 23 | ||||
| -rw-r--r-- | lib/zclient.h | 5 | 
2 files changed, 27 insertions, 1 deletions
diff --git a/lib/zclient.c b/lib/zclient.c index 563673c6f3..f16c94369b 100644 --- a/lib/zclient.c +++ b/lib/zclient.c @@ -4147,3 +4147,26 @@ char *zclient_dump_route_flags(uint32_t flags, char *buf, size_t len)  							     : "");  	return buf;  } + +char *zclient_evpn_dump_macip_flags(uint8_t flags, char *buf, size_t len) +{ +	if (flags == 0) { +		snprintfrr(buf, len, "None "); +		return buf; +	} + +	snprintfrr( +		buf, len, "%s%s%s%s%s%s%s", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_STICKY) ? "Sticky MAC " : "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_GW) ? "Gateway MAC " : "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_ROUTER_FLAG) ? "Router " +								: "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_OVERRIDE_FLAG) ? "Override " +								  : "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_SVI_IP) ? "SVI MAC " : "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_PROXY_ADVERT) ? "Proxy " +								 : "", +		CHECK_FLAG(flags, ZEBRA_MACIP_TYPE_SYNC_PATH) ? "Sync " : ""); + +	return buf; +} diff --git a/lib/zclient.h b/lib/zclient.h index 44aa1fc091..57bad7c2e6 100644 --- a/lib/zclient.h +++ b/lib/zclient.h @@ -771,8 +771,11 @@ zapi_rule_notify_owner2str(enum zapi_rule_notify_owner note)  #define ZEBRA_MACIP_TYPE_PROXY_ADVERT          0x20 /* Not locally active */  #define ZEBRA_MACIP_TYPE_SYNC_PATH             0x40 /* sync path */  /* XXX - flags is an u8; that needs to be changed to u32 if you need - * to allocate past 0x80 + * to allocate past 0x80.  Additionally touch zclient_evpn_dump_macip_flags   */ +#define MACIP_BUF_SIZE 128 +extern char *zclient_evpn_dump_macip_flags(uint8_t flags, char *buf, +					   size_t len);  /* Zebra ES VTEP flags (ZEBRA_REMOTE_ES_VTEP_ADD) */  /* ESR has been rxed from the VTEP. Only VTEPs that have advertised the  | 
