ipsec: IPSec protection for multi-point tunnel interfaces
[vpp.git] / src / vnet / adj / adj_delegate.h
index 13bf911..d49c666 100644 (file)
@@ -36,8 +36,14 @@ typedef enum adj_delegate_type_t_ {
      * BFD session state
      */
     ADJ_DELEGATE_BFD,
+    /**
+     * Stacking of a midchain's nexthop
+     */
+    ADJ_DELEGATE_MIDCHAIN,
 } adj_delegate_type_t;
 
+#define ADJ_DELEGATE_LAST (ADJ_DELEGATE_MIDCHAIN)
+
 /**
  * Adj delegate. This object is attached to the adjacency.
  */
@@ -71,12 +77,18 @@ typedef void (*adj_delegate_adj_deleted_t)(adj_delegate_t *aed);
  */
 typedef u8 * (*adj_delegate_format_t)(const adj_delegate_t *aed, u8 *s);
 
+/**
+ * Notification that an adjacency has been created
+ */
+typedef void (*adj_delegate_adj_created_t)(adj_index_t ai);
+
 /**
  * An ADJ delegate virtual function table
  */
 typedef struct adj_delegate_vft_t_ {
     adj_delegate_format_t adv_format;
     adj_delegate_adj_deleted_t adv_adj_deleted;
+    adj_delegate_adj_created_t adv_adj_created;
 } adj_delegate_vft_t;
 
 /**