diff options
| author | Jafar Al-Gharaibeh <jafar@atcorp.com> | 2022-10-29 16:57:34 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-29 16:57:34 -0500 |
| commit | 109fe83ac07dbb72de340f7edfbcecfc4f0e4f06 (patch) | |
| tree | a91cf19db1526a9afb5ccdf7fa2db3ecfe0dc89e /ospfd/ospf_api.h | |
| parent | 99267afe94eb286cf3f55db4244982022058096a (diff) | |
| parent | d9374552cb2584cb4fdc2da407ba44e141b8436c (diff) | |
Merge pull request #12223 from FRRouting/mergify/bp/dev/8.4/pr-12172
OSPF opaques LSA API - fix bug with LL API delete, add option for zero data length withdrawals (backport #12172)
Diffstat (limited to 'ospfd/ospf_api.h')
| -rw-r--r-- | ospfd/ospf_api.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/ospfd/ospf_api.h b/ospfd/ospf_api.h index 51c8c52ce5..6f569e962d 100644 --- a/ospfd/ospf_api.h +++ b/ospfd/ospf_api.h @@ -185,11 +185,19 @@ struct msg_originate_request { struct lsa_header data; }; + +/* OSPF API MSG Delete Flag. */ +#define OSPF_API_DEL_ZERO_LEN_LSA 0x01 /* send withdrawal with no LSA data */ + +#define IS_DEL_ZERO_LEN_LSA(x) ((x)->flags & OSPF_API_DEL_ZERO_LEN_LSA) + struct msg_delete_request { - struct in_addr area_id; /* "0.0.0.0" for AS-external opaque LSAs */ + struct in_addr addr; /* intf IP for link local, area for type 10, + "0.0.0.0" for AS-external */ uint8_t lsa_type; uint8_t opaque_type; - uint8_t pad[2]; /* padding */ + uint8_t pad; /* padding */ + uint8_t flags; /* delete flags */ uint32_t opaque_id; }; @@ -311,10 +319,9 @@ extern struct msg *new_msg_originate_request(uint32_t seqnum, struct in_addr ifaddr, struct in_addr area_id, struct lsa_header *data); -extern struct msg *new_msg_delete_request(uint32_t seqnum, - struct in_addr area_id, +extern struct msg *new_msg_delete_request(uint32_t seqnum, struct in_addr addr, uint8_t lsa_type, uint8_t opaque_type, - uint32_t opaque_id); + uint32_t opaque_id, uint8_t flags); /* Messages sent by OSPF daemon */ extern struct msg *new_msg_reply(uint32_t seqnum, uint8_t rc); |
