+++ /dev/null
-From 07a83c583b9d508c7040dc6254a6a7113b2ce55f Mon Sep 17 00:00:00 2001
-From: Aaron Conole <aconole@redhat.com>
-Date: Mon, 3 Aug 2020 15:05:42 -0400
-Subject: [PATCH] lldp_head: rename and make extern
-
-Try to resolve this silly mod issue
-
-Signed-off-by: Aaron Conole <aconole@redhat.com>
-[Retrieved from:
-https://github.com/intel/openlldp/pull/55/commits/07a83c583b9d508c7040dc6254a6a7113b2ce55f]
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- config.c | 4 ++--
- event_iface.c | 4 ++--
- include/lldp_mod.h | 2 +-
- lldp/agent.c | 2 +-
- lldp/rx.c | 4 ++--
- lldp/tx.c | 4 ++--
- lldp_dcbx.c | 8 ++++----
- lldp_mand_cmds.c | 8 ++++----
- lldpad.c | 12 +++++++-----
- lldptool.c | 14 ++++++++------
- lldptool_cmds.c | 2 +-
- qbg/ecp22.c | 8 ++++----
- qbg/vdp.c | 4 ++--
- qbg/vdp22.c | 6 +++---
- qbg/vdp22_cmds.c | 2 +-
- vdptool.c | 16 +++++++++-------
- 16 files changed, 53 insertions(+), 47 deletions(-)
-
-diff --git a/config.c b/config.c
-index be458fd..bc3fbae 100644
---- a/config.c
-+++ b/config.c
-@@ -185,7 +185,7 @@ void scan_port(UNUSED void *eloop_data, UNUSED void *user_ctx)
- LIST_FOREACH(agent, &port->agent_head, entry) {
- LLDPAD_DBG("%s: calling ifdown for agent %p.\n",
- __func__, agent);
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- ops = np->ops;
- if (ops->lldp_mod_ifdown)
- ops->lldp_mod_ifdown(ifname, agent);
-@@ -394,7 +394,7 @@ void init_ports(void)
- LIST_FOREACH(agent, &port->agent_head, entry) {
- LLDPAD_DBG("%s: calling ifup for agent %p.\n",
- __func__, agent);
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (np->ops->lldp_mod_ifup)
- np->ops->lldp_mod_ifup(p->if_name, agent);
- }
-diff --git a/event_iface.c b/event_iface.c
-index 43a95c7..1be2963 100644
---- a/event_iface.c
-+++ b/event_iface.c
-@@ -216,7 +216,7 @@ int oper_add_device(char *device_name)
- LIST_FOREACH(agent, &port->agent_head, entry) {
- LLDPAD_DBG("%s: calling ifup for agent %p.\n",
- __func__, agent);
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (np->ops->lldp_mod_ifup)
- np->ops->lldp_mod_ifup(device_name, agent);
- }
-@@ -283,7 +283,7 @@ static void event_if_decode_nlmsg(int route_type, void *data, int len)
- LIST_FOREACH(agent, &port->agent_head, entry) {
- LLDPAD_DBG("%s: calling ifdown for agent %p.\n",
- __func__, agent);
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- ops = np->ops;
- if (ops->lldp_mod_ifdown)
- ops->lldp_mod_ifdown(device_name,
-diff --git a/include/lldp_mod.h b/include/lldp_mod.h
-index 49a50e4..9733595 100644
---- a/include/lldp_mod.h
-+++ b/include/lldp_mod.h
-@@ -96,7 +96,7 @@ struct lldp_module {
- };
-
- LIST_HEAD(lldp_head, lldp_module);
--struct lldp_head lldp_head;
-+extern struct lldp_head lldp_mod_head;
-
- static inline struct lldp_module *find_module_by_id(struct lldp_head *head, int id)
- {
-diff --git a/lldp/agent.c b/lldp/agent.c
-index 333929a..aa4a8d1 100644
---- a/lldp/agent.c
-+++ b/lldp/agent.c
-@@ -163,7 +163,7 @@ static void timer(UNUSED void *eloop_data, UNUSED void *user_ctx)
- run_rx_sm(port, agent);
- update_rx_timers(agent);
-
-- LIST_FOREACH(n, &lldp_head, lldp) {
-+ LIST_FOREACH(n, &lldp_mod_head, lldp) {
- if (n->ops && n->ops->timer)
- n->ops->timer(port, agent);
- }
-diff --git a/lldp/rx.c b/lldp/rx.c
-index 12d07bc..43aeeba 100644
---- a/lldp/rx.c
-+++ b/lldp/rx.c
-@@ -359,7 +359,7 @@ void rxProcessFrame(struct port *port, struct lldp_agent *agent)
- }
-
- /* rx per lldp module */
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops || !np->ops->lldp_mod_rchange)
- continue;
-
-@@ -402,7 +402,7 @@ u8 mibDeleteObjects(struct port *port, struct lldp_agent *agent)
- {
- struct lldp_module *np;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops || !np->ops->lldp_mod_mibdelete)
- continue;
- np->ops->lldp_mod_mibdelete(port, agent);
-diff --git a/lldp/tx.c b/lldp/tx.c
-index c3a5c62..0746e34 100644
---- a/lldp/tx.c
-+++ b/lldp/tx.c
-@@ -71,7 +71,7 @@ bool mibConstrInfoLLDPDU(struct port *port, struct lldp_agent *agent)
- fb_offset += sizeof(struct l2_ethhdr);
-
- /* Generic TLV Pack */
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops || !np->ops->lldp_mod_gettlv)
- continue;
-
-@@ -206,7 +206,7 @@ bool mibConstrShutdownLLDPDU(struct port *port, struct lldp_agent *agent)
- memcpy(agent->tx.frameout, (void *)ð, sizeof(struct l2_ethhdr));
- fb_offset += sizeof(struct l2_ethhdr);
-
-- np = find_module_by_id(&lldp_head, LLDP_MOD_MAND);
-+ np = find_module_by_id(&lldp_mod_head, LLDP_MOD_MAND);
- if (!np)
- goto error;
- if (!np->ops || !np->ops->lldp_mod_gettlv)
-diff --git a/lldp_dcbx.c b/lldp_dcbx.c
-index 7e53c0f..809086f 100644
---- a/lldp_dcbx.c
-+++ b/lldp_dcbx.c
-@@ -129,7 +129,7 @@ struct dcbx_tlvs *dcbx_data(const char *ifname)
- struct dcbd_user_data *dud;
- struct dcbx_tlvs *tlv = NULL;
-
-- dud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_DCBX);
-+ dud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_DCBX);
- if (dud) {
- LIST_FOREACH(tlv, &dud->head, entry) {
- if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
-@@ -148,7 +148,7 @@ int dcbx_tlvs_rxed(const char *ifname, struct lldp_agent *agent)
- if (agent->type != NEAREST_BRIDGE)
- return 0;
-
-- dud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_DCBX);
-+ dud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_DCBX);
- if (dud) {
- LIST_FOREACH(tlv, &dud->head, entry) {
- if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
-@@ -172,7 +172,7 @@ int dcbx_check_active(const char *ifname)
- struct dcbd_user_data *dud;
- struct dcbx_tlvs *tlv = NULL;
-
-- dud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_DCBX);
-+ dud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_DCBX);
- if (dud) {
- LIST_FOREACH(tlv, &dud->head, entry) {
- if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
-@@ -507,7 +507,7 @@ void dcbx_ifup(char *ifname, struct lldp_agent *agent)
- ifindex = get_ifidx(ifname);
- port = port_find_by_ifindex(ifindex);
-
-- dud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_DCBX);
-+ dud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_DCBX);
- tlvs = dcbx_data(ifname);
-
- if (!port)
-diff --git a/lldp_mand_cmds.c b/lldp_mand_cmds.c
-index 8a88177..1c43bf4 100644
---- a/lldp_mand_cmds.c
-+++ b/lldp_mand_cmds.c
-@@ -466,7 +466,7 @@ int handle_get_args(struct cmd *cmd, UNUSED char *arg, char *argvalue,
- nbuf = obuf;
- nbuf_len = obuf_len;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops->get_arg_handler)
- continue;
- if (!(ah = np->ops->get_arg_handler()))
-@@ -496,7 +496,7 @@ int handle_get_arg(struct cmd *cmd, char *arg, char *argvalue,
- struct arg_handlers *ah;
- int rval, status = cmd_not_applicable;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops->get_arg_handler)
- continue;
- if (!(ah = np->ops->get_arg_handler()))
-@@ -593,7 +593,7 @@ int handle_test_arg(struct cmd *cmd, char *arg, char *argvalue,
- struct arg_handlers *ah;
- int rval, status = cmd_not_applicable;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops->get_arg_handler)
- continue;
- if (!(ah = np->ops->get_arg_handler()))
-@@ -626,7 +626,7 @@ int handle_set_arg(struct cmd *cmd, char *arg, char *argvalue,
- struct arg_handlers *ah;
- int rval, status = cmd_not_applicable;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (!np->ops->get_arg_handler)
- continue;
- if (!(ah = np->ops->get_arg_handler()))
-diff --git a/lldpad.c b/lldpad.c
-index 01fb588..65e92c7 100644
---- a/lldpad.c
-+++ b/lldpad.c
-@@ -80,6 +80,8 @@ struct lldp_module *(*register_tlv_table[])(void) = {
- NULL,
- };
-
-+struct lldp_head lldp_mod_head;
-+
- char *cfg_file_name = NULL;
- bool daemonize = 0;
- int loglvl = LOG_WARNING;
-@@ -98,7 +100,7 @@ static void init_modules(void)
- struct lldp_module *premod = NULL;
- int i = 0;
-
-- LIST_INIT(&lldp_head);
-+ LIST_INIT(&lldp_mod_head);
- for (i = 0; register_tlv_table[i]; i++) {
- module = register_tlv_table[i]();
- if (!module)
-@@ -106,7 +108,7 @@ static void init_modules(void)
- if (premod)
- LIST_INSERT_AFTER(premod, module, lldp);
- else
-- LIST_INSERT_HEAD(&lldp_head, module, lldp);
-+ LIST_INSERT_HEAD(&lldp_mod_head, module, lldp);
- premod = module;
- }
- }
-@@ -115,9 +117,9 @@ void deinit_modules(void)
- {
- struct lldp_module *module;
-
-- while (lldp_head.lh_first != NULL) {
-- module = lldp_head.lh_first;
-- LIST_REMOVE(lldp_head.lh_first, lldp);
-+ while (lldp_mod_head.lh_first != NULL) {
-+ module = lldp_mod_head.lh_first;
-+ LIST_REMOVE(lldp_mod_head.lh_first, lldp);
- module->ops->lldp_mod_unregister(module);
- }
- }
-diff --git a/lldptool.c b/lldptool.c
-index 2b14f61..664a248 100644
---- a/lldptool.c
-+++ b/lldptool.c
-@@ -64,6 +64,8 @@
- #include "lldp_util.h"
- #include "lldpad_status.h"
-
-+struct lldp_head lldp_mod_head;
-+
- static int show_raw;
-
- static const char *cli_version =
-@@ -199,7 +201,7 @@ static void init_modules(void)
- if (premod)
- LIST_INSERT_AFTER(premod, module, lldp);
- else
-- LIST_INSERT_HEAD(&lldp_head, module, lldp);
-+ LIST_INSERT_HEAD(&lldp_mod_head, module, lldp);
- premod = module;
- }
- }
-@@ -208,9 +210,9 @@ void deinit_modules(void)
- {
- struct lldp_module *module;
-
-- while (lldp_head.lh_first != NULL) {
-- module = lldp_head.lh_first;
-- LIST_REMOVE(lldp_head.lh_first, lldp);
-+ while (lldp_mod_head.lh_first != NULL) {
-+ module = lldp_mod_head.lh_first;
-+ LIST_REMOVE(lldp_mod_head.lh_first, lldp);
- module->ops->lldp_mod_unregister(module);
- }
- }
-@@ -346,7 +348,7 @@ cli_cmd_help(UNUSED struct clif *clif, UNUSED int argc, UNUSED char *argv[],
- printf("%s\n%s\n%s", commands_usage, commands_options, commands_help);
-
- printf("\nTLV identifiers:\n");
-- LIST_FOREACH(np, &lldp_head, lldp)
-+ LIST_FOREACH(np, &lldp_mod_head, lldp)
- if (np->ops->print_help)
- np->ops->print_help();
- return 0;
-@@ -406,7 +408,7 @@ u32 lookup_tlvid(char *tlvid_str)
- struct lldp_module *np;
- u32 tlvid = INVALID_TLVID;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (np->ops->lookup_tlv_name) {
- tlvid = np->ops->lookup_tlv_name(tlvid_str);
- if (tlvid != INVALID_TLVID)
-diff --git a/lldptool_cmds.c b/lldptool_cmds.c
-index daef8c8..70b7b0d 100644
---- a/lldptool_cmds.c
-+++ b/lldptool_cmds.c
-@@ -464,7 +464,7 @@ static void print_tlvs(struct cmd *cmd, char *ibuf)
- offset += 8;
-
- printed = 0;
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (np->ops->print_tlv(tlvid, tlv_len, ibuf+offset)) {
- printed = 1;
- break;
-diff --git a/qbg/ecp22.c b/qbg/ecp22.c
-index 6561d14..825392b 100644
---- a/qbg/ecp22.c
-+++ b/qbg/ecp22.c
-@@ -774,7 +774,7 @@ void ecp22_start(char *ifname)
- struct ecp22 *ecp;
-
- LLDPAD_DBG("%s:%s start ecp\n", __func__, ifname);
-- eud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_ECP22);
-+ eud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_ECP22);
- if (!eud) {
- LLDPAD_DBG("%s:%s no ECP module\n", __func__, ifname);
- return;
-@@ -837,7 +837,7 @@ void ecp22_stop(char *ifname)
- struct ecp22 *ecp;
-
- LLDPAD_DBG("%s:%s stop ecp\n", __func__, ifname);
-- eud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_ECP22);
-+ eud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_ECP22);
- ecp = find_ecpdata(ifname, eud);
- if (ecp)
- ecp22_remove(ecp);
-@@ -852,7 +852,7 @@ static int ecp22_data_from_evb(char *ifname, struct evb22_to_ecp22 *ptr)
- struct ecp22_user_data *eud;
- struct ecp22 *ecp;
-
-- eud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_ECP22);
-+ eud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_ECP22);
- ecp = find_ecpdata(ifname, eud);
- if (ecp) {
- ecp->max_rte = ptr->max_rte;
-@@ -930,7 +930,7 @@ static int ecp22_req2send(char *ifname, unsigned short subtype,
-
- LLDPAD_DBG("%s:%s subtype:%d\n", __func__, ifname, subtype);
-
-- eud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_ECP22);
-+ eud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_ECP22);
- ecp = find_ecpdata(ifname, eud);
- if (!ecp) {
- rc = -ENODEV;
-diff --git a/qbg/vdp.c b/qbg/vdp.c
-index d131560..c26bbd6 100644
---- a/qbg/vdp.c
-+++ b/qbg/vdp.c
-@@ -188,7 +188,7 @@ struct vdp_data *vdp_data(char *ifname)
- struct vdp_user_data *ud;
- struct vdp_data *vd = NULL;
-
-- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_VDP02);
-+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_VDP02);
- if (ud) {
- LIST_FOREACH(vd, &ud->head, entry) {
- if (!strncmp(ifname, vd->ifname, IFNAMSIZ))
-@@ -1624,7 +1624,7 @@ void vdp_ifup(char *ifname, struct lldp_agent *agent)
-
- LIST_INIT(&vd->profile_head);
-
-- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_VDP02);
-+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_VDP02);
- LIST_INSERT_HEAD(&ud->head, vd, entry);
-
- out_start_again:
-diff --git a/qbg/vdp22.c b/qbg/vdp22.c
-index cf02310..81ea3a8 100644
---- a/qbg/vdp22.c
-+++ b/qbg/vdp22.c
-@@ -694,7 +694,7 @@ static struct vdp22 *vdp22_findif(const char *ifname,
- struct vdp22 *vdp = 0;
-
- if (!ud) {
-- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_VDP22);
-+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_VDP22);
- if (!ud)
- LLDPAD_DBG("%s:%s no VDP22 module\n", __func__,
- ifname);
-@@ -794,7 +794,7 @@ void vdp22_stop(char *ifname)
- struct vsi22 *vsi;
-
- LLDPAD_DBG("%s:%s stop vdp\n", __func__, ifname);
-- vud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_VDP22);
-+ vud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_VDP22);
- if (!vud) {
- LLDPAD_ERR("%s:%s no VDP22 module\n", __func__, ifname);
- return;
-@@ -874,7 +874,7 @@ void vdp22_start(const char *ifname, int role)
- struct vsi22 *vsi;
-
- LLDPAD_DBG("%s:%s start vdp\n", __func__, ifname);
-- vud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_VDP22);
-+ vud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_VDP22);
- if (!vud) {
- LLDPAD_ERR("%s:%s no VDP22 module\n", __func__, ifname);
- return;
-diff --git a/qbg/vdp22_cmds.c b/qbg/vdp22_cmds.c
-index 2e1bbbd..a8025ee 100644
---- a/qbg/vdp22_cmds.c
-+++ b/qbg/vdp22_cmds.c
-@@ -57,7 +57,7 @@ static struct lldp_module *get_my_module(int thisid)
- {
- struct lldp_module *np = NULL;
-
-- LIST_FOREACH(np, &lldp_head, lldp)
-+ LIST_FOREACH(np, &lldp_mod_head, lldp)
- if (thisid == np->id)
- break;
- return np;
-diff --git a/vdptool.c b/vdptool.c
-index 8f36277..f1d946c 100644
---- a/vdptool.c
-+++ b/vdptool.c
-@@ -61,6 +61,8 @@
- #define OUI_ENCODE_HNDLR(name) name##_oui_encode_hndlr
- #define OUI_PRNT_DECODE_HNDLR(name) name##_oui_print_decode_hndlr
-
-+struct lldp_head lldp_mod_head;
-+
- #define EXTERN_OUI_FN(name) \
- extern bool name##_oui_encode_hndlr(char *, char *, size_t); \
- extern void name##_oui_print_decode_hndlr(char *)
-@@ -796,13 +798,13 @@ static void init_modules(void)
- struct lldp_module *premod = NULL;
- int i = 0;
-
-- LIST_INIT(&lldp_head);
-+ LIST_INIT(&lldp_mod_head);
- for (i = 0; register_tlv_table[i]; i++) {
- module = register_tlv_table[i]();
- if (premod)
- LIST_INSERT_AFTER(premod, module, lldp);
- else
-- LIST_INSERT_HEAD(&lldp_head, module, lldp);
-+ LIST_INSERT_HEAD(&lldp_mod_head, module, lldp);
- premod = module;
- }
- }
-@@ -811,9 +813,9 @@ void deinit_modules(void)
- {
- struct lldp_module *module;
-
-- while (lldp_head.lh_first != NULL) {
-- module = lldp_head.lh_first;
-- LIST_REMOVE(lldp_head.lh_first, lldp);
-+ while (lldp_mod_head.lh_first != NULL) {
-+ module = lldp_mod_head.lh_first;
-+ LIST_REMOVE(lldp_mod_head.lh_first, lldp);
- module->ops->lldp_mod_unregister(module);
- }
- }
-@@ -953,7 +955,7 @@ cli_cmd_help(UNUSED struct clif *clif, UNUSED int argc, UNUSED char *argv[],
- printf("%s\n%s\n%s", commands_usage, commands_options, commands_help);
-
- printf("\nTLV identifiers:\n");
-- LIST_FOREACH(np, &lldp_head, lldp)
-+ LIST_FOREACH(np, &lldp_mod_head, lldp)
- if (np->ops->print_help)
- np->ops->print_help();
- return 0;
-@@ -1006,7 +1008,7 @@ u32 lookup_tlvid(char *tlvid_str)
- struct lldp_module *np;
- u32 tlvid = INVALID_TLVID;
-
-- LIST_FOREACH(np, &lldp_head, lldp) {
-+ LIST_FOREACH(np, &lldp_mod_head, lldp) {
- if (np->ops->lookup_tlv_name) {
- tlvid = np->ops->lookup_tlv_name(tlvid_str);
- if (tlvid != INVALID_TLVID)