1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156
|
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* Zebra debug related function
* Copyright (C) 1999 Kunihiro Ishiguro
*/
#ifndef _ZEBRA_DEBUG_H
#define _ZEBRA_DEBUG_H
#include "lib/vty.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Debug flags. */
#define ZEBRA_DEBUG_EVENT 0x01
#define ZEBRA_DEBUG_PACKET 0x01
#define ZEBRA_DEBUG_SEND 0x20
#define ZEBRA_DEBUG_RECV 0x40
#define ZEBRA_DEBUG_DETAIL 0x80
#define ZEBRA_DEBUG_KERNEL 0x01
#define ZEBRA_DEBUG_KERNEL_MSGDUMP_SEND 0x20
#define ZEBRA_DEBUG_KERNEL_MSGDUMP_RECV 0x40
#define ZEBRA_DEBUG_RIB 0x01
#define ZEBRA_DEBUG_RIB_DETAILED 0x02
#define ZEBRA_DEBUG_FPM 0x01
#define ZEBRA_DEBUG_NHT 0x01
#define ZEBRA_DEBUG_NHT_DETAILED 0x02
#define ZEBRA_DEBUG_MPLS 0x01
#define ZEBRA_DEBUG_MPLS_DETAILED 0x02
#define ZEBRA_DEBUG_VXLAN 0x01
#define ZEBRA_DEBUG_PW 0x01
#define ZEBRA_DEBUG_DPLANE 0x01
#define ZEBRA_DEBUG_DPLANE_DETAILED 0x02
#define ZEBRA_DEBUG_DPLANE_DPDK 0x01
#define ZEBRA_DEBUG_DPLANE_DPDK_DETAIL 0x02
#define ZEBRA_DEBUG_MLAG 0x01
#define ZEBRA_DEBUG_NHG 0x01
#define ZEBRA_DEBUG_NHG_DETAILED 0x02
#define ZEBRA_DEBUG_EVPN_MH_ES 0x01
#define ZEBRA_DEBUG_EVPN_MH_NH 0x02
#define ZEBRA_DEBUG_EVPN_MH_MAC 0x04
#define ZEBRA_DEBUG_EVPN_MH_NEIGH 0x08
#define ZEBRA_DEBUG_PBR 0x01
#define ZEBRA_DEBUG_NEIGH 0x01
#define ZEBRA_DEBUG_TC 0x01
#define ZEBRA_DEBUG_SRV6 0x01
/* Debug related macro. */
#define IS_ZEBRA_DEBUG_EVENT (zebra_debug_event & ZEBRA_DEBUG_EVENT)
#define IS_ZEBRA_DEBUG_PACKET (zebra_debug_packet & ZEBRA_DEBUG_PACKET)
#define IS_ZEBRA_DEBUG_SEND (zebra_debug_packet & ZEBRA_DEBUG_SEND)
#define IS_ZEBRA_DEBUG_RECV (zebra_debug_packet & ZEBRA_DEBUG_RECV)
#define IS_ZEBRA_DEBUG_DETAIL (zebra_debug_packet & ZEBRA_DEBUG_DETAIL)
#define IS_ZEBRA_DEBUG_KERNEL (zebra_debug_kernel & ZEBRA_DEBUG_KERNEL)
#define IS_ZEBRA_DEBUG_KERNEL_MSGDUMP_SEND \
(zebra_debug_kernel & ZEBRA_DEBUG_KERNEL_MSGDUMP_SEND)
#define IS_ZEBRA_DEBUG_KERNEL_MSGDUMP_RECV \
(zebra_debug_kernel & ZEBRA_DEBUG_KERNEL_MSGDUMP_RECV)
#define IS_ZEBRA_DEBUG_RIB \
(zebra_debug_rib & (ZEBRA_DEBUG_RIB | ZEBRA_DEBUG_RIB_DETAILED))
#define IS_ZEBRA_DEBUG_RIB_DETAILED (zebra_debug_rib & ZEBRA_DEBUG_RIB_DETAILED)
#define IS_ZEBRA_DEBUG_FPM (zebra_debug_fpm & ZEBRA_DEBUG_FPM)
#define IS_ZEBRA_DEBUG_NHT (zebra_debug_nht & ZEBRA_DEBUG_NHT)
#define IS_ZEBRA_DEBUG_NHT_DETAILED (zebra_debug_nht & ZEBRA_DEBUG_NHT_DETAILED)
#define IS_ZEBRA_DEBUG_MPLS (zebra_debug_mpls & ZEBRA_DEBUG_MPLS)
#define IS_ZEBRA_DEBUG_MPLS_DETAIL \
(zebra_debug_mpls & ZEBRA_DEBUG_MPLS_DETAILED)
#define IS_ZEBRA_DEBUG_VXLAN (zebra_debug_vxlan & ZEBRA_DEBUG_VXLAN)
#define IS_ZEBRA_DEBUG_PW (zebra_debug_pw & ZEBRA_DEBUG_PW)
#define IS_ZEBRA_DEBUG_DPLANE (zebra_debug_dplane & ZEBRA_DEBUG_DPLANE)
#define IS_ZEBRA_DEBUG_DPLANE_DETAIL \
(zebra_debug_dplane & ZEBRA_DEBUG_DPLANE_DETAILED)
#define IS_ZEBRA_DEBUG_DPLANE_DPDK \
(zebra_debug_dplane_dpdk & ZEBRA_DEBUG_DPLANE_DPDK)
#define IS_ZEBRA_DEBUG_DPLANE_DPDK_DETAIL \
(zebra_debug_dplane_dpdk & ZEBRA_DEBUG_DPLANE_DPDK_DETAIL)
#define IS_ZEBRA_DEBUG_MLAG (zebra_debug_mlag & ZEBRA_DEBUG_MLAG)
#define IS_ZEBRA_DEBUG_NHG (zebra_debug_nexthop & ZEBRA_DEBUG_NHG)
#define IS_ZEBRA_DEBUG_NHG_DETAIL \
(zebra_debug_nexthop & ZEBRA_DEBUG_NHG_DETAILED)
#define IS_ZEBRA_DEBUG_EVPN_MH_ES \
(zebra_debug_evpn_mh & ZEBRA_DEBUG_EVPN_MH_ES)
#define IS_ZEBRA_DEBUG_EVPN_MH_NH \
(zebra_debug_evpn_mh & ZEBRA_DEBUG_EVPN_MH_NH)
#define IS_ZEBRA_DEBUG_EVPN_MH_MAC \
(zebra_debug_evpn_mh & ZEBRA_DEBUG_EVPN_MH_MAC)
#define IS_ZEBRA_DEBUG_EVPN_MH_NEIGH \
(zebra_debug_evpn_mh & ZEBRA_DEBUG_EVPN_MH_NEIGH)
#define IS_ZEBRA_DEBUG_PBR (zebra_debug_pbr & ZEBRA_DEBUG_PBR)
#define IS_ZEBRA_DEBUG_NEIGH (zebra_debug_neigh & ZEBRA_DEBUG_NEIGH)
#define IS_ZEBRA_DEBUG_TC (zebra_debug_tc & ZEBRA_DEBUG_TC)
#define IS_ZEBRA_DEBUG_SRV6 (zebra_debug_srv6 & ZEBRA_DEBUG_SRV6)
extern unsigned long zebra_debug_event;
extern unsigned long zebra_debug_packet;
extern unsigned long zebra_debug_kernel;
extern unsigned long zebra_debug_rib;
extern unsigned long zebra_debug_fpm;
extern unsigned long zebra_debug_nht;
extern unsigned long zebra_debug_mpls;
extern unsigned long zebra_debug_vxlan;
extern unsigned long zebra_debug_pw;
extern unsigned long zebra_debug_dplane;
extern unsigned long zebra_debug_dplane_dpdk;
extern unsigned long zebra_debug_mlag;
extern unsigned long zebra_debug_nexthop;
extern unsigned long zebra_debug_evpn_mh;
extern unsigned long zebra_debug_pbr;
extern unsigned long zebra_debug_neigh;
extern unsigned long zebra_debug_tc;
extern unsigned long zebra_debug_srv6;
extern void zebra_debug_init(void);
DECLARE_HOOK(zebra_debug_show_debugging, (struct vty *vty), (vty));
#ifdef __cplusplus
}
#endif
#endif /* _ZEBRA_DEBUG_H */
|