diff options
| author | Karen Schoener <karen@volta.io> | 2020-05-28 16:36:35 -0400 |
|---|---|---|
| committer | Karen Schoener <karen@volta.io> | 2020-06-01 13:21:37 -0400 |
| commit | fd563cc7f35e598decdbfd6a58bae2f050143b3f (patch) | |
| tree | 682f7ce1aaa6b133803c0c61e31e2c6f55d387f9 /lib | |
| parent | 6b2210021cab645efa58a23d5a4d171fe37f305e (diff) | |
ldpd: Relay data plane pseudowire status in LDP notification
Provide a way for the data plane to indicate pseudowire
status (such as: not forwarding, AC failure).
On a data plane pseudowire install failure, data plane
sets the pseudowire status.
Zebra relays the pseudowire status to LDP.
LDP includes the pseudowire status in the LDP notification
to the LDP peer.
Signed-off-by: Karen Schoener <karen@voltanet.io>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pw.h | 10 | ||||
| -rw-r--r-- | lib/zclient.h | 1 |
2 files changed, 8 insertions, 3 deletions
@@ -35,9 +35,13 @@ extern "C" { /* Pseudowire flags. */ #define F_PSEUDOWIRE_CWORD 0x01 -/* Pseudowire status. */ -#define PW_STATUS_DOWN 0 -#define PW_STATUS_UP 1 +/* Pseudowire status TLV */ +#define PW_FORWARDING 0 +#define PW_NOT_FORWARDING (1 << 0) +#define PW_LOCAL_RX_FAULT (1 << 1) +#define PW_LOCAL_TX_FAULT (1 << 2) +#define PW_PSN_RX_FAULT (1 << 3) +#define PW_PSN_TX_FAULT (1 << 4) /* * Protocol-specific information about the pseudowire. diff --git a/lib/zclient.h b/lib/zclient.h index 4ada064623..e3e929c8d6 100644 --- a/lib/zclient.h +++ b/lib/zclient.h @@ -514,6 +514,7 @@ struct zapi_pw_status { char ifname[IF_NAMESIZE]; ifindex_t ifindex; uint32_t status; + uint32_t pwstatus; }; enum zapi_route_notify_owner { |
