]> git.puffer.fish Git - mirror/frr.git/commitdiff
*: require semicolon after DEFINE_QOBJ & co.
authorDavid Lamparter <equinox@diac24.net>
Sun, 21 Feb 2021 05:38:13 +0000 (06:38 +0100)
committerDavid Lamparter <equinox@diac24.net>
Wed, 17 Mar 2021 05:18:37 +0000 (06:18 +0100)
Again, see previous commits.

Signed-off-by: David Lamparter <equinox@diac24.net>
40 files changed:
bgpd/bgp_bmp.c
bgpd/bgp_bmp.h
bgpd/bgp_evpn.c
bgpd/bgp_evpn_mh.h
bgpd/bgp_evpn_private.h
bgpd/bgpd.c
bgpd/bgpd.h
bgpd/rfapi/bgp_rfapi_cfg.c
bgpd/rfapi/bgp_rfapi_cfg.h
eigrpd/eigrp_structs.h
eigrpd/eigrpd.c
isisd/isis_circuit.c
isisd/isis_circuit.h
isisd/isisd.c
isisd/isisd.h
ldpd/ldpd.c
ldpd/ldpd.h
lib/if.c
lib/if.h
lib/keychain.c
lib/keychain.h
lib/nexthop_group.c
lib/nexthop_group.h
lib/qobj.h
lib/routemap.c
lib/routemap.h
lib/vrf.c
lib/vrf.h
ospf6d/ospf6_interface.c
ospf6d/ospf6_interface.h
ospf6d/ospf6_top.c
ospf6d/ospf6_top.h
ospfd/ospf_interface.c
ospfd/ospf_interface.h
ospfd/ospfd.c
ospfd/ospfd.h
pbrd/pbr_map.c
pbrd/pbr_map.h
zebra/zebra_pw.c
zebra/zebra_pw.h

index 996b3d038e1ccd6a1054c2b0541f70a8dd6c55b7..f733042f7ede1c596a0896ae788b09a493411f34 100644 (file)
@@ -73,7 +73,7 @@ DEFINE_MTYPE_STATIC(BMP, BMP_MIRRORQ, "BMP route mirroring buffer");
 DEFINE_MTYPE_STATIC(BMP, BMP_PEER,     "BMP per BGP peer data");
 DEFINE_MTYPE_STATIC(BMP, BMP_OPEN,     "BMP stored BGP OPEN message");
 
-DEFINE_QOBJ_TYPE(bmp_targets)
+DEFINE_QOBJ_TYPE(bmp_targets);
 
 static int bmp_bgp_cmp(const struct bmp_bgp *a, const struct bmp_bgp *b)
 {
index 262451a7850dba2b30683e6c6d846926093962d7..10ca1e80fa0e34b3539ccdb872efdc0a0f6a31b3 100644 (file)
@@ -245,9 +245,9 @@ struct bmp_targets {
 
        uint64_t cnt_accept, cnt_aclrefused;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(bmp_targets)
+DECLARE_QOBJ_TYPE(bmp_targets);
 
 /* per struct peer * data.  Lookup by peer->qobj_node.nid, created on demand,
  * deleted in peer_backward hook. */
index 7b29f1e4c9281ca21fc0335a4b2169acb43180eb..ec712640818ccf11b1a4ec0d02d2ee79775ac13c 100644 (file)
@@ -57,8 +57,8 @@
 /*
  * Definitions and external declarations.
  */
-DEFINE_QOBJ_TYPE(bgpevpn)
-DEFINE_QOBJ_TYPE(bgp_evpn_es)
+DEFINE_QOBJ_TYPE(bgpevpn);
+DEFINE_QOBJ_TYPE(bgp_evpn_es);
 
 
 /*
index e5186619ff6f6c9ca0eaec540cb3a7b55215eb51..1053e3f022916f5f478bf6d348d3f0e67edae13f 100644 (file)
@@ -125,9 +125,9 @@ struct bgp_evpn_es {
        /* preference config for BUM-DF election. advertised via the ESR. */
        uint16_t df_pref;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(bgp_evpn_es)
+DECLARE_QOBJ_TYPE(bgp_evpn_es);
 RB_HEAD(bgp_es_rb_head, bgp_evpn_es);
 RB_PROTOTYPE(bgp_es_rb_head, bgp_evpn_es, rb_node, bgp_es_rb_cmp);
 
index 77b37463447b034a15ccd54556d522dfc1509528..ff4970af41a5c57621cdfe6292327f04bf945034 100644 (file)
@@ -112,10 +112,10 @@ struct bgpevpn {
        /* List of local ESs */
        struct list *local_es_evi_list;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 
-DECLARE_QOBJ_TYPE(bgpevpn)
+DECLARE_QOBJ_TYPE(bgpevpn);
 
 /* Mapping of Import RT to VNIs.
  * The Import RTs of all VNIs are maintained in a hash table with each
index 993caf6b9d079e216032dd6a3679edcf9dd4fce9..666dfe0ed36750bc7ebb7374b9e51449f523c9da 100644 (file)
@@ -93,9 +93,9 @@
 
 DEFINE_MTYPE_STATIC(BGPD, PEER_TX_SHUTDOWN_MSG, "Peer shutdown message (TX)");
 DEFINE_MTYPE_STATIC(BGPD, BGP_EVPN_INFO, "BGP EVPN instance information");
-DEFINE_QOBJ_TYPE(bgp_master)
-DEFINE_QOBJ_TYPE(bgp)
-DEFINE_QOBJ_TYPE(peer)
+DEFINE_QOBJ_TYPE(bgp_master);
+DEFINE_QOBJ_TYPE(bgp);
+DEFINE_QOBJ_TYPE(peer);
 DEFINE_HOOK(bgp_inst_delete, (struct bgp *bgp), (bgp));
 
 /* BGP process wide configuration.  */
index a9ee7666da7171a36d3d5a96777b87e4c6379979..52c9491ff293f41f27f02d2ba35cca9bb1266f51 100644 (file)
@@ -175,9 +175,9 @@ struct bgp_master {
 #define BM_FLAG_SEND_EXTRA_DATA_TO_ZEBRA (1 << 1)
 
        bool terminating;       /* global flag that sigint terminate seen */
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(bgp_master)
+DECLARE_QOBJ_TYPE(bgp_master);
 
 /* BGP route-map structure.  */
 struct bgp_rmap {
@@ -710,9 +710,9 @@ struct bgp {
        /* BGP route flap dampening configuration */
        struct bgp_damp_config damp[AFI_MAX][SAFI_MAX];
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(bgp)
+DECLARE_QOBJ_TYPE(bgp);
 
 DECLARE_HOOK(bgp_inst_delete, (struct bgp *bgp), (bgp));
 DECLARE_HOOK(bgp_inst_config_write,
@@ -1574,9 +1574,9 @@ struct peer {
        bool advmap_config_change[AFI_MAX][SAFI_MAX];
        bool advmap_table_change;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(peer)
+DECLARE_QOBJ_TYPE(peer);
 
 /* Inherit peer attribute from peer-group. */
 #define PEER_ATTR_INHERIT(peer, group, attr)                                   \
index 3ad0b070b40f1b75e4b603e1617d7b66a460bfe3..cc64261388c6f09bbdf9f89785636a27663b0890 100644 (file)
@@ -80,8 +80,8 @@ DEFINE_MTYPE(RFAPI, RFAPI_L2ADDR_OPT, "RFAPI L2 Address Option");
 DEFINE_MTYPE(RFAPI, RFAPI_AP, "RFAPI Advertised Prefix");
 DEFINE_MTYPE(RFAPI, RFAPI_MONITOR_ETH, "RFAPI Monitor Ethernet");
 
-DEFINE_QOBJ_TYPE(rfapi_nve_group_cfg)
-DEFINE_QOBJ_TYPE(rfapi_l2_group_cfg)
+DEFINE_QOBJ_TYPE(rfapi_nve_group_cfg);
+DEFINE_QOBJ_TYPE(rfapi_l2_group_cfg);
 /***********************************************************************
  *                     RFAPI Support
  ***********************************************************************/
index f1548a6173cb13d09769d75e7aad52c7b32c4dfe..ef97419c4d01bb8c52ed432d33e83572fbce3ba8 100644 (file)
@@ -35,9 +35,9 @@ struct rfapi_l2_group_cfg {
        struct ecommunity *rt_export_list;
        void *rfp_cfg; /* rfp owned group config */
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(rfapi_l2_group_cfg)
+DECLARE_QOBJ_TYPE(rfapi_l2_group_cfg);
 
 typedef enum {
        RFAPI_GROUP_CFG_NVE = 1,
@@ -108,9 +108,9 @@ struct rfapi_nve_group_cfg {
        /* for VRF type groups */
        uint32_t label;
        struct rfapi_descriptor *rfd;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(rfapi_nve_group_cfg)
+DECLARE_QOBJ_TYPE(rfapi_nve_group_cfg);
 
 struct rfapi_rfg_name {
        struct rfapi_nve_group_cfg *rfg;
index 0d8bb2996416ed0efb651960dfcd2b6a4e59b9f2..eb4a91cb64e4d1993a155533cb3841295bd65388 100644 (file)
@@ -126,9 +126,9 @@ struct eigrp {
        /* distribute_ctx */
        struct distribute_ctx *distribute_ctx;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(eigrp)
+DECLARE_QOBJ_TYPE(eigrp);
 
 struct eigrp_if_params {
        uint8_t passive_interface;
index 5002630796c9feec76b3761467f45fa5e135e00d..8c16cf3d58a8d9b19759d2dd297de98e0edc13f3 100644 (file)
@@ -58,7 +58,7 @@
 #include "eigrpd/eigrp_memory.h"
 #include "eigrpd/eigrp_filter.h"
 
-DEFINE_QOBJ_TYPE(eigrp)
+DEFINE_QOBJ_TYPE(eigrp);
 
 static struct eigrp_master eigrp_master;
 
index 0c59826ddca45a54ec67a19195aa0f8339f26d65..6fc76fce43f04bf18a3293924295c6af592580c6 100644 (file)
@@ -61,7 +61,7 @@
 #include "isisd/isis_nb.h"
 #include "isisd/isis_ldp_sync.h"
 
-DEFINE_QOBJ_TYPE(isis_circuit)
+DEFINE_QOBJ_TYPE(isis_circuit);
 
 DEFINE_HOOK(isis_if_new_hook, (struct interface *ifp), (ifp));
 
index 62d0478864cfd7f0e19e1c4c1b1f565fecad9495..cbe4040b64d6cbaa66dd4822af9f7e2cc119aeb2 100644 (file)
@@ -174,9 +174,9 @@ struct isis_circuit {
                                    */
        struct list *snmp_adj_list; /* List in id order */
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(isis_circuit)
+DECLARE_QOBJ_TYPE(isis_circuit);
 
 void isis_circuit_init(void);
 struct isis_circuit *isis_circuit_new(struct isis *isis);
index 487a902c068b944a0f919ebd2a4e9e87710b1168..039a8db27ea1076c836a797dd064e761c94c0157 100644 (file)
@@ -81,7 +81,7 @@ unsigned long debug_sr;
 unsigned long debug_ldp_sync;
 unsigned long debug_lfa;
 
-DEFINE_QOBJ_TYPE(isis_area)
+DEFINE_QOBJ_TYPE(isis_area);
 
 /* ISIS process wide configuration. */
 static struct isis_master isis_master;
index 4166216f9f3ea7525ef7505700f1af279c23c27f..ea716f998e4c20c7a29e955df383e55823210cb7 100644 (file)
@@ -236,9 +236,9 @@ struct isis_area {
        uint64_t id_len_mismatches[2];
        uint64_t lsp_error_counter[2];
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(isis_area)
+DECLARE_QOBJ_TYPE(isis_area);
 
 DECLARE_HOOK(isis_area_overload_bit_update, (struct isis_area * area), (area));
 
index 2ee2dc12faa09642c24181b89add593cceff26d6..d609ef4401fd8386079b6c8d403ed82eaafb8958 100644 (file)
@@ -69,13 +69,13 @@ static void          merge_l2vpns(struct ldpd_conf *, struct ldpd_conf *);
 static void             merge_l2vpn(struct ldpd_conf *, struct l2vpn *,
                            struct l2vpn *);
 
-DEFINE_QOBJ_TYPE(iface)
-DEFINE_QOBJ_TYPE(tnbr)
-DEFINE_QOBJ_TYPE(nbr_params)
-DEFINE_QOBJ_TYPE(l2vpn_if)
-DEFINE_QOBJ_TYPE(l2vpn_pw)
-DEFINE_QOBJ_TYPE(l2vpn)
-DEFINE_QOBJ_TYPE(ldpd_conf)
+DEFINE_QOBJ_TYPE(iface);
+DEFINE_QOBJ_TYPE(tnbr);
+DEFINE_QOBJ_TYPE(nbr_params);
+DEFINE_QOBJ_TYPE(l2vpn_if);
+DEFINE_QOBJ_TYPE(l2vpn_pw);
+DEFINE_QOBJ_TYPE(l2vpn);
+DEFINE_QOBJ_TYPE(ldpd_conf);
 
 struct ldpd_global      global;
 struct ldpd_init        init;
index dd29c68f502d506877c839fc32db360f0e58a3fd..8fdc16fc7b97b60a366147109df48c5510a332fc 100644 (file)
@@ -362,11 +362,11 @@ struct iface {
        struct iface_af          ipv4;
        struct iface_af          ipv6;
        struct iface_ldp_sync    ldp_sync;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(iface_head, iface);
 RB_PROTOTYPE(iface_head, iface, entry, iface_compare);
-DECLARE_QOBJ_TYPE(iface)
+DECLARE_QOBJ_TYPE(iface);
 
 /* source of targeted hellos */
 struct tnbr {
@@ -379,11 +379,11 @@ struct tnbr {
        uint16_t                 pw_count;
        uint32_t                 rlfa_count;
        uint8_t                  flags;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(tnbr_head, tnbr);
 RB_PROTOTYPE(tnbr_head, tnbr, entry, tnbr_compare);
-DECLARE_QOBJ_TYPE(tnbr)
+DECLARE_QOBJ_TYPE(tnbr);
 #define F_TNBR_CONFIGURED       0x01
 #define F_TNBR_DYNAMIC          0x02
 
@@ -405,11 +405,11 @@ struct nbr_params {
                uint8_t                  md5key_len;
        } auth;
        uint8_t                  flags;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(nbrp_head, nbr_params);
 RB_PROTOTYPE(nbrp_head, nbr_params, entry, nbr_params_compare);
-DECLARE_QOBJ_TYPE(nbr_params)
+DECLARE_QOBJ_TYPE(nbr_params);
 #define F_NBRP_KEEPALIVE        0x01
 #define F_NBRP_GTSM             0x02
 #define F_NBRP_GTSM_HOPS        0x04
@@ -463,11 +463,11 @@ struct l2vpn_if {
        ifindex_t                ifindex;
        int                      operative;
        uint8_t                  mac[ETH_ALEN];
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(l2vpn_if_head, l2vpn_if);
 RB_PROTOTYPE(l2vpn_if_head, l2vpn_if, entry, l2vpn_if_compare);
-DECLARE_QOBJ_TYPE(l2vpn_if)
+DECLARE_QOBJ_TYPE(l2vpn_if);
 
 struct l2vpn_pw {
        RB_ENTRY(l2vpn_pw)       entry;
@@ -485,11 +485,11 @@ struct l2vpn_pw {
        uint32_t                 remote_status;
        uint8_t                  flags;
        uint8_t                  reason;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(l2vpn_pw_head, l2vpn_pw);
 RB_PROTOTYPE(l2vpn_pw_head, l2vpn_pw, entry, l2vpn_pw_compare);
-DECLARE_QOBJ_TYPE(l2vpn_pw)
+DECLARE_QOBJ_TYPE(l2vpn_pw);
 #define F_PW_STATUSTLV_CONF    0x01    /* status tlv configured */
 #define F_PW_STATUSTLV         0x02    /* status tlv negotiated */
 #define F_PW_CWORD_CONF                0x04    /* control word configured */
@@ -513,11 +513,11 @@ struct l2vpn {
        struct l2vpn_if_head     if_tree;
        struct l2vpn_pw_head     pw_tree;
        struct l2vpn_pw_head     pw_inactive_tree;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(l2vpn_head, l2vpn);
 RB_PROTOTYPE(l2vpn_head, l2vpn, entry, l2vpn_compare);
-DECLARE_QOBJ_TYPE(l2vpn)
+DECLARE_QOBJ_TYPE(l2vpn);
 #define L2VPN_TYPE_VPWS                1
 #define L2VPN_TYPE_VPLS                2
 
@@ -584,9 +584,9 @@ struct ldpd_conf {
        int                      flags;
        time_t                   config_change_time;
        struct ldp_entity_stats  stats;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(ldpd_conf)
+DECLARE_QOBJ_TYPE(ldpd_conf);
 #define        F_LDPD_NO_FIB_UPDATE    0x0001
 #define        F_LDPD_DS_CISCO_INTEROP 0x0002
 #define        F_LDPD_ENABLED          0x0004
index d4016c28508adddd0ce54d8b54da2659526e0ac6..629ef4e70878b3e401392304cf31eb5d6fb6eddc 100644 (file)
--- a/lib/if.c
+++ b/lib/if.c
@@ -53,7 +53,7 @@ static int if_cmp_index_func(const struct interface *ifp1,
 RB_GENERATE(if_name_head, interface, name_entry, if_cmp_func);
 RB_GENERATE(if_index_head, interface, index_entry, if_cmp_index_func);
 
-DEFINE_QOBJ_TYPE(interface)
+DEFINE_QOBJ_TYPE(interface);
 
 DEFINE_HOOK(if_add, (struct interface * ifp), (ifp));
 DEFINE_KOOH(if_del, (struct interface * ifp), (ifp));
index 8c86841755991ec7ea53eec7bd8bdc29dff65b75..f425ba8bceaa7e2345dd9c880a548be8cb8bb9bf 100644 (file)
--- a/lib/if.h
+++ b/lib/if.h
@@ -301,14 +301,14 @@ struct interface {
         */
        bool configured;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 
 RB_HEAD(if_name_head, interface);
 RB_PROTOTYPE(if_name_head, interface, name_entry, if_cmp_func)
 RB_HEAD(if_index_head, interface);
 RB_PROTOTYPE(if_index_head, interface, index_entry, if_cmp_index_func)
-DECLARE_QOBJ_TYPE(interface)
+DECLARE_QOBJ_TYPE(interface);
 
 #define IFNAME_RB_INSERT(vrf, ifp)                                                    \
        ({                                                                            \
index 07f65f1825c8ac3bb605b073d2be598d1dccae01..db5c23b1bae4c203cb180dd31aad61aa469deeba 100644 (file)
@@ -28,8 +28,8 @@
 DEFINE_MTYPE_STATIC(LIB, KEY, "Key");
 DEFINE_MTYPE_STATIC(LIB, KEYCHAIN, "Key chain");
 
-DEFINE_QOBJ_TYPE(keychain)
-DEFINE_QOBJ_TYPE(key)
+DEFINE_QOBJ_TYPE(keychain);
+DEFINE_QOBJ_TYPE(key);
 
 /* Master list of key chain. */
 static struct list *keychain_list;
index e5cf39f7c6557a2c7a154b7b5d4ed699db5b4d06..eb6d2f175edd7c9670aa79d451b235705a56916d 100644 (file)
@@ -32,9 +32,9 @@ struct keychain {
 
        struct list *key;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(keychain)
+DECLARE_QOBJ_TYPE(keychain);
 
 struct key_range {
        time_t start;
@@ -51,9 +51,9 @@ struct key {
        struct key_range send;
        struct key_range accept;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(key)
+DECLARE_QOBJ_TYPE(key);
 
 extern void keychain_init(void);
 extern struct keychain *keychain_lookup(const char *);
index bf74cb62cc86a8ae82ba0ecf62caf2e9ddb361c7..4fee9bde3c2cd06c141ba142ce89afd1feebdcf6 100644 (file)
@@ -620,7 +620,7 @@ static void nhgc_delete(struct nexthop_group_cmd *nhgc)
        XFREE(MTYPE_TMP, nhgc);
 }
 
-DEFINE_QOBJ_TYPE(nexthop_group_cmd)
+DEFINE_QOBJ_TYPE(nexthop_group_cmd);
 
 DEFUN_NOSH(nexthop_group, nexthop_group_cmd, "nexthop-group NHGNAME",
           "Enter into the nexthop-group submode\n"
index 5f7bde0defbd1bb470723b8e4d49fe67c435db3b..8e75e5c6ac441f0ed495e8c9818fd58952eeff91 100644 (file)
@@ -97,12 +97,12 @@ struct nexthop_group_cmd {
 
        struct list *nhg_list;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(nhgc_entry_head, nexthp_group_cmd);
 RB_PROTOTYPE(nhgc_entry_head, nexthop_group_cmd, nhgc_entry,
             nexthop_group_cmd_compare)
-DECLARE_QOBJ_TYPE(nexthop_group_cmd)
+DECLARE_QOBJ_TYPE(nexthop_group_cmd);
 
 /*
  * Initialize nexthop_groups.  If you are interested in when
index 400ae0151cc7b5bd13bc6de5579c92c11270db67..6d66dbf80dc858d61527de021ac5771f1d1d8f9a 100644 (file)
@@ -92,7 +92,7 @@ struct qobj_node {
        const struct qobj_nodetype *type;
 };
 
-#define QOBJ_FIELDS struct qobj_node qobj_node;
+#define QOBJ_FIELDS struct qobj_node qobj_node
 
 /* call these at the end of any _create function (QOBJ_REG)
  * and beginning of any _destroy function (QOBJ_UNREG) */
@@ -118,16 +118,19 @@ void *qobj_get_typed(uint64_t id, const struct qobj_nodetype *type);
 
 /* type declarations */
 #define DECLARE_QOBJ_TYPE(structname)                                          \
-       extern const struct qobj_nodetype qobj_t_##structname;
+       extern const struct qobj_nodetype qobj_t_##structname                  \
+       /* end */
 #define DEFINE_QOBJ_TYPE(structname)                                           \
        const struct qobj_nodetype qobj_t_##structname = {                     \
                .node_member_offset =                                          \
-                       (ptrdiff_t)offsetof(struct structname, qobj_node)};
+                       (ptrdiff_t)offsetof(struct structname, qobj_node)}     \
+       /* end */
 #define DEFINE_QOBJ_TYPE_INIT(structname, ...)                                 \
        const struct qobj_nodetype qobj_t_##structname = {                     \
                .node_member_offset =                                          \
                        (ptrdiff_t)offsetof(struct structname, qobj_node),     \
-               __VA_ARGS__};
+               __VA_ARGS__}                                                   \
+       /* end */
 
 /* ID dereference with typecheck.
  * will return NULL if id not found or wrong type. */
index 05f82e34cfafc58d15e5b66bc5e392c375920227..b836b55aad467691e241534a5818b0dced09cbcc 100644 (file)
@@ -42,8 +42,8 @@ DEFINE_MTYPE(LIB, ROUTE_MAP_COMPILED, "Route map compiled");
 DEFINE_MTYPE_STATIC(LIB, ROUTE_MAP_DEP, "Route map dependency");
 DEFINE_MTYPE_STATIC(LIB, ROUTE_MAP_DEP_DATA, "Route map dependency data");
 
-DEFINE_QOBJ_TYPE(route_map_index)
-DEFINE_QOBJ_TYPE(route_map)
+DEFINE_QOBJ_TYPE(route_map_index);
+DEFINE_QOBJ_TYPE(route_map);
 
 #define IPv4_PREFIX_LIST "ip address prefix-list"
 #define IPv6_PREFIX_LIST "ipv6 address prefix-list"
index 2d5d3a1f9042d34dfb2fe982202c074d12b17988..bad3ca6d3d513a5ac3314a159c068e30727bc7f8 100644 (file)
@@ -190,9 +190,9 @@ struct route_map_index {
        /* List of match/sets contexts. */
        TAILQ_HEAD(, routemap_hook_context) rhclist;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(route_map_index)
+DECLARE_QOBJ_TYPE(route_map_index);
 
 /* Route map list structure. */
 struct route_map {
@@ -225,9 +225,9 @@ struct route_map {
        struct route_table *ipv4_prefix_table;
        struct route_table *ipv6_prefix_table;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(route_map)
+DECLARE_QOBJ_TYPE(route_map);
 
 /* Prototypes. */
 extern void route_map_init(void);
index b8364418dbede29a8034b91530916d1c77dcfc76..dff041cbc77a3e5c95e78f8dfd18e204a0ee824d 100644 (file)
--- a/lib/vrf.c
+++ b/lib/vrf.c
@@ -45,7 +45,7 @@
 DEFINE_MTYPE_STATIC(LIB, VRF, "VRF");
 DEFINE_MTYPE_STATIC(LIB, VRF_BITMAP, "VRF bit-map");
 
-DEFINE_QOBJ_TYPE(vrf)
+DEFINE_QOBJ_TYPE(vrf);
 
 static __inline int vrf_id_compare(const struct vrf *, const struct vrf *);
 static __inline int vrf_name_compare(const struct vrf *, const struct vrf *);
index 333d68ce96a154edb2c20e33ce5b7439a95d94a5..6cdb52244dcd9a0992b5847809950b9bcf052f60 100644 (file)
--- a/lib/vrf.h
+++ b/lib/vrf.h
@@ -95,13 +95,13 @@ struct vrf {
        /* Back pointer to namespace context */
        void *ns_ctxt;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 RB_HEAD(vrf_id_head, vrf);
 RB_PROTOTYPE(vrf_id_head, vrf, id_entry, vrf_id_compare)
 RB_HEAD(vrf_name_head, vrf);
 RB_PROTOTYPE(vrf_name_head, vrf, name_entry, vrf_name_compare)
-DECLARE_QOBJ_TYPE(vrf)
+DECLARE_QOBJ_TYPE(vrf);
 
 /* Allow VRF with netns as backend */
 enum vrf_backend_type {
index 83950a4aaa124700108c671d4cb5ba9df173e720..7ef97f1b65310718e0fe5fbfa552ba857c0dea3a 100644 (file)
@@ -46,7 +46,7 @@
 #include "lib/json.h"
 
 DEFINE_MTYPE_STATIC(OSPF6D, CFG_PLIST_NAME, "configured prefix list names");
-DEFINE_QOBJ_TYPE(ospf6_interface)
+DEFINE_QOBJ_TYPE(ospf6_interface);
 DEFINE_HOOK(ospf6_interface_change,
            (struct ospf6_interface * oi, int state, int old_state),
            (oi, state, old_state));
index 343a6d494f000eb84d393cd7320e9b5b0e2b921a..2a5a9ba4a2da1981b03f29fc55c2ede2a49ec7b6 100644 (file)
@@ -134,9 +134,9 @@ struct ospf6_interface {
        uint32_t ls_ack_out;
        uint32_t discarded;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(ospf6_interface)
+DECLARE_QOBJ_TYPE(ospf6_interface);
 
 /* interface state */
 #define OSPF6_INTERFACE_NONE             0
index 3f72ec828e274824e88ee5602c622f01bf859776..fea510da3faeac0c25550baada7e63e86546488c 100644 (file)
@@ -53,7 +53,7 @@
 #include "ospf6d.h"
 #include "lib/json.h"
 
-DEFINE_QOBJ_TYPE(ospf6)
+DEFINE_QOBJ_TYPE(ospf6);
 
 FRR_CFG_DEFAULT_BOOL(OSPF6_LOG_ADJACENCY_CHANGES,
        { .val_bool = true, .match_profile = "datacenter", },
index 75dff86cd70da16bf24e41dbd09729d26800f649..7980659e68d2681b024b86d61853c4161c64cfb8 100644 (file)
@@ -132,9 +132,9 @@ struct ospf6 {
         */
        uint16_t max_multipath;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(ospf6)
+DECLARE_QOBJ_TYPE(ospf6);
 
 #define OSPF6_DISABLED    0x01
 #define OSPF6_STUB_ROUTER 0x02
index 29de702e81526a8124f85c0bdb27479ab70909db..0161f05d71e8e6d8728e0054a394676c138c6bfd 100644 (file)
@@ -49,7 +49,7 @@
 #include "ospfd/ospf_dump.h"
 #include "ospfd/ospf_ldp_sync.h"
 
-DEFINE_QOBJ_TYPE(ospf_interface)
+DEFINE_QOBJ_TYPE(ospf_interface);
 DEFINE_HOOK(ospf_vl_add, (struct ospf_vl_data * vd), (vd));
 DEFINE_HOOK(ospf_vl_delete, (struct ospf_vl_data * vd), (vd));
 DEFINE_HOOK(ospf_if_update, (struct interface * ifp), (ifp));
index bda98004b64e82c72dfe9c6ee3900927878a52af..2f146c06f3d714d8e4bed2021569202b8a93e609 100644 (file)
@@ -252,9 +252,9 @@ struct ospf_interface {
 
        uint32_t full_nbrs;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(ospf_interface)
+DECLARE_QOBJ_TYPE(ospf_interface);
 
 /* Prototypes. */
 extern char *ospf_if_name(struct ospf_interface *);
index 9590a9c73bdf6ab74ce49022b0ecee42673691e7..4005f2f21b57c1a9740e880ea2babe6891637873 100644 (file)
@@ -62,7 +62,7 @@
 #include "ospfd/ospf_gr_helper.h"
 
 
-DEFINE_QOBJ_TYPE(ospf)
+DEFINE_QOBJ_TYPE(ospf);
 
 /* OSPF process wide configuration. */
 static struct ospf_master ospf_master;
index 5148bf555c01643fc03536ce86177ae36d58b8cd..0ac13f92fd585f691e0410eaf757f6b16dca45fd 100644 (file)
@@ -386,9 +386,9 @@ struct ospf {
        bool ti_lfa_enabled;
        enum protection_type ti_lfa_protection_type;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(ospf)
+DECLARE_QOBJ_TYPE(ospf);
 
 enum ospf_ti_lfa_p_q_space_adjacency {
        OSPF_TI_LFA_P_Q_SPACE_ADJACENT,
index c3417a27595ad8379fce2631937edb1ff4ded83f..053b7363a30964ff0b49aaa9f5fa320b90cf2c00 100644 (file)
@@ -51,7 +51,7 @@ RB_GENERATE(pbr_map_entry_head, pbr_map, pbr_map_entry, pbr_map_compare)
 
 struct pbr_map_entry_head pbr_maps = RB_INITIALIZER(&pbr_maps);
 
-DEFINE_QOBJ_TYPE(pbr_map_sequence)
+DEFINE_QOBJ_TYPE(pbr_map_sequence);
 
 static inline int pbr_map_compare(const struct pbr_map *pbrmap1,
                                  const struct pbr_map *pbrmap2)
index ad2db146b7e6309da5aa20b05e3d2af9d9caee7c..caeadb064413837f35f3e1837edfb2450aa6ec07 100644 (file)
@@ -149,10 +149,10 @@ struct pbr_map_sequence {
 #define PBR_MAP_INVALID_VRF              (1 << 5)
        uint64_t reason;
 
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
 
-DECLARE_QOBJ_TYPE(pbr_map_sequence)
+DECLARE_QOBJ_TYPE(pbr_map_sequence);
 
 extern struct pbr_map_entry_head pbr_maps;
 
index c402f43265d054ac7adc0bac004d8e49d2cbe784..5afb3e5926ec083b3bf72c7aa1b9e04af46fe979 100644 (file)
@@ -37,7 +37,7 @@
 
 DEFINE_MTYPE_STATIC(LIB, PW, "Pseudowire");
 
-DEFINE_QOBJ_TYPE(zebra_pw)
+DEFINE_QOBJ_TYPE(zebra_pw);
 
 DEFINE_HOOK(pw_install, (struct zebra_pw * pw), (pw));
 DEFINE_HOOK(pw_uninstall, (struct zebra_pw * pw), (pw));
index 19f0f8181b8f86cd90335f5627aa9f351aa456b8..0da8203802697582e6a6eea538d3be76e476ee20 100644 (file)
@@ -53,9 +53,9 @@ struct zebra_pw {
        struct zserv *client;
        struct rnh *rnh;
        struct thread *install_retry_timer;
-       QOBJ_FIELDS
+       QOBJ_FIELDS;
 };
-DECLARE_QOBJ_TYPE(zebra_pw)
+DECLARE_QOBJ_TYPE(zebra_pw);
 
 RB_HEAD(zebra_pw_head, zebra_pw);
 RB_PROTOTYPE(zebra_pw_head, zebra_pw, pw_entry, zebra_pw_compare);