* MAP-REPLY MESSAGE
*/
- /* Map Reply action codes */
- #define LISP_ACTION_NO_ACTION 0
- #define LISP_ACTION_FORWARD 1
- #define LISP_ACTION_DROP 2
- #define LISP_ACTION_SEND_MAP_REQUEST 3
-
/*
* Map-Reply Message Format
*
typedef enum
{
- ACTION_NONE,
- ACTION_NATIVELY_FORWARDED,
- ACTION_SEND_MAP_REQUEST,
- ACTION_DROP
+ LISP_NO_ACTION,
+ LISP_FORWARD_NATIVE,
+ LISP_SEND_MAP_REQUEST,
+ LISP_DROP
} lisp_action_e;
typedef enum lisp_authoritative
#define LCAF_FLAGS(h) ((lcaf_hdr_t *)(h))->flags
#define LCAF_PAYLOAD(h) (u8 *)(h)+sizeof(lcaf_hdr_t)
+/*
+ * Source/Dest Key Canonical Address Format:
+ *
+ * 0 1 2 3
+ * 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+ * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ * | Reserved | Source-ML | Dest-ML |
+ * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ */
+typedef struct _lcaf_src_dst_hdr_t
+{
+ u16 reserved;
+ u8 src_mask_len;
+ u8 dst_mask_len;
+} __attribute__ ((__packed__)) lcaf_src_dst_hdr_t;
+
+#define LCAF_SD_SRC_ML(_h) (_h)->src_mask_len
+#define LCAF_SD_DST_ML(_h) (_h)->dst_mask_len
+
#endif /* VNET_LISP_GPE_LISP_CP_MESSAGES_H_ */