mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2025-12-14 06:16:04 +01:00
openlldp: Upgrade to 1.1.0
Drop already upstreamed patches Add fix for clang15 build Drop Wno-error Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
db24f3e273
commit
7a880dcbd9
|
|
@ -1,91 +0,0 @@
|
|||
From 090854e09fe18ebf1ba428864895a690086f78ee Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 19 Aug 2019 11:41:13 -0400
|
||||
Subject: [PATCH 1/9] cmds: fix enum conversion
|
||||
|
||||
Multiple modules use implicit conversion between enum types, but
|
||||
this triggers warnings with some compilers. ex:
|
||||
|
||||
qbg/vdp_cmds.c:110:39: error: implicit conversion from enumeration type
|
||||
'lldp_cmd' to different enumeration type 'cmd_status'
|
||||
[-Werror,-Wenum-conversion]
|
||||
cmd_status good_cmd = vdp_cmdok(cmd, cmd_gettlv);
|
||||
|
||||
Reported-at: https://github.com/intel/openlldp/issues/53
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
lldp_evb22_cmds.c | 2 +-
|
||||
lldp_evb_cmds.c | 2 +-
|
||||
qbg/vdp22_cmds.c | 2 +-
|
||||
qbg/vdp_cmds.c | 2 +-
|
||||
vdptool.c | 2 +-
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/lldp_evb22_cmds.c b/lldp_evb22_cmds.c
|
||||
index cebfeb2..51810bc 100644
|
||||
--- a/lldp_evb22_cmds.c
|
||||
+++ b/lldp_evb22_cmds.c
|
||||
@@ -225,7 +225,7 @@ int evb22_conf_enabletx(char *ifname, enum agent_type type)
|
||||
TLVID(OUI_IEEE_8021Qbg22, LLDP_EVB22_SUBTYPE));
|
||||
}
|
||||
|
||||
-static int evb22_cmdok(struct cmd *cmd, cmd_status expected)
|
||||
+static int evb22_cmdok(struct cmd *cmd, int expected)
|
||||
{
|
||||
if (cmd->cmd != expected)
|
||||
return cmd_invalid;
|
||||
diff --git a/lldp_evb_cmds.c b/lldp_evb_cmds.c
|
||||
index eec4f33..e6af03b 100644
|
||||
--- a/lldp_evb_cmds.c
|
||||
+++ b/lldp_evb_cmds.c
|
||||
@@ -163,7 +163,7 @@ int evb_conf_enabletx(char *ifname, enum agent_type type)
|
||||
return is_tlv_txenabled(ifname, type, TLVID_8021Qbg(LLDP_EVB_SUBTYPE));
|
||||
}
|
||||
|
||||
-static int evb_cmdok(struct cmd *cmd, cmd_status expected)
|
||||
+static int evb_cmdok(struct cmd *cmd, int expected)
|
||||
{
|
||||
if (cmd->cmd != expected)
|
||||
return cmd_invalid;
|
||||
diff --git a/qbg/vdp22_cmds.c b/qbg/vdp22_cmds.c
|
||||
index 479b1b0..2e1bbbd 100644
|
||||
--- a/qbg/vdp22_cmds.c
|
||||
+++ b/qbg/vdp22_cmds.c
|
||||
@@ -296,7 +296,7 @@ int vdp22_sendevent(struct vdpnl_vsi *p)
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int vdp22_cmdok(struct cmd *cmd, cmd_status expected)
|
||||
+static int vdp22_cmdok(struct cmd *cmd, int expected)
|
||||
{
|
||||
if (cmd->cmd != expected)
|
||||
return cmd_invalid;
|
||||
diff --git a/qbg/vdp_cmds.c b/qbg/vdp_cmds.c
|
||||
index 95bcfb1..50f2781 100644
|
||||
--- a/qbg/vdp_cmds.c
|
||||
+++ b/qbg/vdp_cmds.c
|
||||
@@ -85,7 +85,7 @@ static char *print_mode(char *s, size_t length, struct vsi_profile *p)
|
||||
return s;
|
||||
}
|
||||
|
||||
-static int vdp_cmdok(struct cmd *cmd, cmd_status expected)
|
||||
+static int vdp_cmdok(struct cmd *cmd, int expected)
|
||||
{
|
||||
if (cmd->cmd != expected)
|
||||
return cmd_invalid;
|
||||
diff --git a/vdptool.c b/vdptool.c
|
||||
index 9872348..8f36277 100644
|
||||
--- a/vdptool.c
|
||||
+++ b/vdptool.c
|
||||
@@ -141,7 +141,7 @@ static char *print_status(cmd_status status)
|
||||
str = "TLV does not support agent type";
|
||||
break;
|
||||
default:
|
||||
- str = print_vdp_status(status);
|
||||
+ str = print_vdp_status((enum vdp22_cmd_status)status);
|
||||
break;
|
||||
}
|
||||
return str;
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,500 +0,0 @@
|
|||
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 2/9] lldp_head: rename and make extern
|
||||
|
||||
Try to resolve this silly mod issue
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.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)
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
From 702dd20f43d9ca7e0bcb917e8acfec3f1acdcb5c Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:14:50 -0400
|
||||
Subject: [PATCH 3/9] lldp: add packed struct definition
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
include/lldp.h | 6 ++++++
|
||||
lldp/l2_packet.h | 5 ++---
|
||||
2 files changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/lldp.h b/include/lldp.h
|
||||
index fb5ee93..de6a4ad 100644
|
||||
--- a/include/lldp.h
|
||||
+++ b/include/lldp.h
|
||||
@@ -255,5 +255,11 @@ enum {
|
||||
#define LLDP_EVB_DEFAULT_RTE 15
|
||||
#define LLDP_EVB_DEFAULT_MAX_RTE 31
|
||||
|
||||
+#ifndef _MSC_VER
|
||||
+#define STRUCT_PACKED(STRUCT) STRUCT __attribute__((__packed__))
|
||||
+#else
|
||||
+#define STRUCT_PACKED(STRUCT) __pragma(pack(push, 1)) STRUCT __pragma(pack(pop))
|
||||
+#endif
|
||||
+
|
||||
void somethingChangedLocal(const char *ifname, int type);
|
||||
#endif /* _LLDP_H */
|
||||
diff --git a/lldp/l2_packet.h b/lldp/l2_packet.h
|
||||
index 607b8a3..831958c 100644
|
||||
--- a/lldp/l2_packet.h
|
||||
+++ b/lldp/l2_packet.h
|
||||
@@ -58,12 +58,11 @@
|
||||
*/
|
||||
struct l2_packet_data;
|
||||
|
||||
-
|
||||
-struct l2_ethhdr {
|
||||
+STRUCT_PACKED(struct l2_ethhdr {
|
||||
u8 h_dest[ETH_ALEN];
|
||||
u8 h_source[ETH_ALEN];
|
||||
u16 h_proto;
|
||||
-} STRUCT_PACKED;
|
||||
+});
|
||||
|
||||
/**
|
||||
* l2_packet_init - Initialize l2_packet interface
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
From d88aae2230683517b6d5b62cced51da81317a722 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 29 Aug 2022 22:37:14 -0700
|
||||
Subject: [PATCH] clif: Include string.h for mem* function prototypes
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/intel/openlldp/pull/86]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
clif.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/clif.c b/clif.c
|
||||
index cad6f75..0758a7e 100644
|
||||
--- a/clif.c
|
||||
+++ b/clif.c
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
+#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From 8229f4fb700ba4fcb2ec3e9956491bf5ee8c0ae2 Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:17:31 -0400
|
||||
Subject: [PATCH 4/9] lldptool: make extern
|
||||
|
||||
This should only exist per final linked object.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
include/lldptool.h | 2 +-
|
||||
lldptool.c | 1 +
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/lldptool.h b/include/lldptool.h
|
||||
index c919873..a190009 100644
|
||||
--- a/include/lldptool.h
|
||||
+++ b/include/lldptool.h
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
#include "clif.h"
|
||||
|
||||
-struct lldp_head lldp_cli_head;
|
||||
+extern struct lldp_head lldp_cli_head;
|
||||
|
||||
int clif_command(struct clif *clif, char *cmd, int raw);
|
||||
void print_raw_message(char *msg, int print);
|
||||
diff --git a/lldptool.c b/lldptool.c
|
||||
index 664a248..d76cc48 100644
|
||||
--- a/lldptool.c
|
||||
+++ b/lldptool.c
|
||||
@@ -64,6 +64,7 @@
|
||||
#include "lldp_util.h"
|
||||
#include "lldpad_status.h"
|
||||
|
||||
+struct lldp_head lldp_cli_head;
|
||||
struct lldp_head lldp_mod_head;
|
||||
|
||||
static int show_raw;
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
From 9203dec731e53fb72e1c0d62639e6e54378f66cc Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:20:59 -0400
|
||||
Subject: [PATCH 5/9] cisco_oui: match encode handler prototypes
|
||||
|
||||
The EXTERN_FN prototype generated requires size_t be the third parameter.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
vdptool_cisco_oui.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/vdptool_cisco_oui.c b/vdptool_cisco_oui.c
|
||||
index 7003521..3f88c76 100644
|
||||
--- a/vdptool_cisco_oui.c
|
||||
+++ b/vdptool_cisco_oui.c
|
||||
@@ -28,7 +28,7 @@
|
||||
#include "lldp_util.h"
|
||||
#include "vdp_cisco.h"
|
||||
|
||||
-bool cisco_oui_encode_hndlr(char *dst, char *src, int len)
|
||||
+bool cisco_oui_encode_hndlr(char *dst, char *src, size_t len)
|
||||
{
|
||||
char *src_temp = strdup(src);
|
||||
char *key, *data;
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
From 2723219c08726efa08a6bad04ffb775f850a96bc Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:23:28 -0400
|
||||
Subject: [PATCH 6/9] ecp22: make enum a type rather than instance
|
||||
|
||||
The enum defined in the qbg header is setup as a discreet instance
|
||||
rather than a type. Fix this.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
include/qbg_ecp22.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/include/qbg_ecp22.h b/include/qbg_ecp22.h
|
||||
index 567f6df..fe66bb3 100644
|
||||
--- a/include/qbg_ecp22.h
|
||||
+++ b/include/qbg_ecp22.h
|
||||
@@ -49,10 +49,10 @@ enum { /* ECP Transmit states */
|
||||
ECP22_TX_ERROR
|
||||
};
|
||||
|
||||
-enum {
|
||||
+enum ecp22_mode {
|
||||
ECP22_REQUEST = 0,
|
||||
ECP22_ACK
|
||||
-} ecp22_mode;
|
||||
+};
|
||||
|
||||
struct ecp22_hdr { /* ECP22 header */
|
||||
u16 ver_op_sub; /* ECP22 version, operation, subtype */
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
From 275fe9da663193a843de450f03e810daedc06955 Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:25:38 -0400
|
||||
Subject: [PATCH 7/9] lldp_8021qaz: extern config object
|
||||
|
||||
The config object only exists as part of the config translation unit
|
||||
so remove the extra config object in the 8021qaz module.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
lldp_8021qaz.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lldp_8021qaz.c b/lldp_8021qaz.c
|
||||
index a42fd11..673d758 100644
|
||||
--- a/lldp_8021qaz.c
|
||||
+++ b/lldp_8021qaz.c
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
|
||||
struct lldp_head lldp_head;
|
||||
-struct config_t lldpad_cfg;
|
||||
+extern config_t lldpad_cfg;
|
||||
extern bool read_only_8021qaz;
|
||||
|
||||
static int ieee8021qaz_check_pending(struct port *port, struct lldp_agent *);
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,61 +0,0 @@
|
|||
From 61291de03cb6dd1aea2a633eb72951f3fe453e7f Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Mon, 3 Aug 2020 15:33:08 -0400
|
||||
Subject: [PATCH 8/9] stringops: fix some string copy errors
|
||||
|
||||
Reported when using gcc-10.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
dcb_protocol.c | 13 ++++---------
|
||||
lldp/ports.c | 2 +-
|
||||
2 files changed, 5 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/dcb_protocol.c b/dcb_protocol.c
|
||||
index 75ca139..930251b 100644
|
||||
--- a/dcb_protocol.c
|
||||
+++ b/dcb_protocol.c
|
||||
@@ -2257,13 +2257,8 @@ cmd_status get_bwg_descrpt(char *device_name, u8 bwgid, char **name)
|
||||
|
||||
if ((it != NULL) &&
|
||||
(bwgid < it->second->max_pgid_desc)) {
|
||||
- size = (int)strlen(it->second->pgid_desc[bwgid]) +
|
||||
- sizeof(char); /* Localization OK */
|
||||
- *name = (char*)malloc(size);
|
||||
- if (*name != NULL) {
|
||||
- strncpy(*name, it->second->pgid_desc[bwgid],
|
||||
- size); /* Localization OK */
|
||||
- } else {
|
||||
+ *name = strdup(it->second->pgid_desc[bwgid]);
|
||||
+ if (*name == NULL) {
|
||||
goto Error;
|
||||
}
|
||||
} else {
|
||||
@@ -2272,9 +2267,9 @@ cmd_status get_bwg_descrpt(char *device_name, u8 bwgid, char **name)
|
||||
size = (int)strlen(
|
||||
attribs.descript.pgid_desc[bwgid]) +
|
||||
sizeof(char);
|
||||
- *name = (char*)malloc(size);
|
||||
+ *name = (char*)calloc(size, sizeof(char));
|
||||
if (*name != NULL) {
|
||||
- memcpy(*name, attribs.descript.pgid_desc[bwgid], size); /* Localization OK */
|
||||
+ memcpy(*name, attribs.descript.pgid_desc[bwgid], size - 1); /* Localization OK */
|
||||
} else {
|
||||
goto Error;
|
||||
}
|
||||
diff --git a/lldp/ports.c b/lldp/ports.c
|
||||
index 6384f14..9b681f7 100644
|
||||
--- a/lldp/ports.c
|
||||
+++ b/lldp/ports.c
|
||||
@@ -264,7 +264,7 @@ struct port *add_port(int ifindex, const char *ifname)
|
||||
memset(newport, 0, sizeof(*newport));
|
||||
newport->ifindex = ifindex;
|
||||
newport->next = NULL;
|
||||
- strncpy(newport->ifname, ifname, IFNAMSIZ);
|
||||
+ strncpy(newport->ifname, ifname, IFNAMSIZ - 1);
|
||||
|
||||
newport->bond_master = is_bond(ifname);
|
||||
/* Initialize relevant port variables */
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
From 7ae79b0dff53a23fa0a964f77b9e3bb387a293c4 Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Tue, 4 Aug 2020 09:17:50 -0400
|
||||
Subject: [PATCH 9/9] 8021qaz: mark prio map functions static
|
||||
|
||||
Inline is not the correct way to mark a function for inclusion
|
||||
in a single translation unit. Use 'static' to restrict export
|
||||
of these functions.
|
||||
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
---
|
||||
lldp_8021qaz.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lldp_8021qaz.c b/lldp_8021qaz.c
|
||||
index 673d758..16ae167 100644
|
||||
--- a/lldp_8021qaz.c
|
||||
+++ b/lldp_8021qaz.c
|
||||
@@ -397,7 +397,7 @@ static int read_cfg_file(char *ifname, struct lldp_agent *agent,
|
||||
return 0;
|
||||
}
|
||||
|
||||
-inline int get_prio_map(u32 prio_map, int prio)
|
||||
+static int get_prio_map(u32 prio_map, int prio)
|
||||
{
|
||||
if (prio > 7)
|
||||
return 0;
|
||||
@@ -405,7 +405,7 @@ inline int get_prio_map(u32 prio_map, int prio)
|
||||
return (prio_map >> (4 * (7-prio))) & 0xF;
|
||||
}
|
||||
|
||||
-inline void set_prio_map(u32 *prio_map, u8 prio, int tc)
|
||||
+static void set_prio_map(u32 *prio_map, u8 prio, int tc)
|
||||
{
|
||||
u32 mask = ~(0xffffffff & (0xF << (4 * (7-prio))));
|
||||
*prio_map &= mask;
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
|
@ -1,331 +0,0 @@
|
|||
From ed6a8e5a75f56b7034a46294a0bf2a9a7fd14fbc Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Conole <aconole@redhat.com>
|
||||
Date: Fri, 23 Oct 2020 14:40:32 -0400
|
||||
Subject: [PATCH] lldp_head: remove all references
|
||||
|
||||
There were a number of references missed during the module cleanup. This hits the remaining
|
||||
ones.
|
||||
|
||||
Fixes: 07a83c583b9d ("lldp_head: rename and make extern")
|
||||
Signed-off-by: Aaron Conole <aconole@redhat.com>
|
||||
|
||||
Reference to upstream patch:
|
||||
https://github.com/intel/openlldp/commit/ed6a8e5a75f56b7034a46294a0bf2a9a7fd14fbc
|
||||
|
||||
Signed-off-by: Li Wang <li.wang@windriver.com>
|
||||
---
|
||||
ctrl_iface.c | 4 +---
|
||||
lldp_8021qaz.c | 11 +++++------
|
||||
lldp_8023.c | 6 ++----
|
||||
lldp_basman.c | 6 ++----
|
||||
lldp_evb.c | 6 ++----
|
||||
lldp_evb22.c | 6 ++----
|
||||
lldp_mand.c | 10 ++++------
|
||||
lldp_med.c | 6 ++----
|
||||
qbg_utils.c | 3 +--
|
||||
9 files changed, 21 insertions(+), 37 deletions(-)
|
||||
|
||||
diff --git a/ctrl_iface.c b/ctrl_iface.c
|
||||
index 1734f49..666f7c8 100644
|
||||
--- a/ctrl_iface.c
|
||||
+++ b/ctrl_iface.c
|
||||
@@ -53,8 +53,6 @@
|
||||
#include "lldp_util.h"
|
||||
#include "messages.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
struct ctrl_dst {
|
||||
struct ctrl_dst *next;
|
||||
struct sockaddr_un addr;
|
||||
@@ -116,7 +114,7 @@ int clif_iface_module(struct clif_data *clifd,
|
||||
return cmd_invalid;
|
||||
}
|
||||
|
||||
- mod = find_module_by_id(&lldp_head, module_id);
|
||||
+ mod = find_module_by_id(&lldp_mod_head, module_id);
|
||||
if (mod && mod->ops && mod->ops->client_cmd)
|
||||
return (mod->ops->client_cmd)(clifd, from, fromlen,
|
||||
cmd_start, cmd_len, rbuf+strlen(rbuf), rlen);
|
||||
diff --git a/lldp_8021qaz.c b/lldp_8021qaz.c
|
||||
index 16ae167..e747710 100644
|
||||
--- a/lldp_8021qaz.c
|
||||
+++ b/lldp_8021qaz.c
|
||||
@@ -48,7 +48,6 @@
|
||||
#include "lldp_dcbx.h"
|
||||
|
||||
|
||||
-struct lldp_head lldp_head;
|
||||
extern config_t lldpad_cfg;
|
||||
extern bool read_only_8021qaz;
|
||||
|
||||
@@ -84,7 +83,7 @@ static int ieee8021qaz_check_pending(struct port *port,
|
||||
if (!port->portEnabled)
|
||||
return 0;
|
||||
|
||||
- iud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8021QAZ);
|
||||
+ iud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8021QAZ);
|
||||
if (iud) {
|
||||
LIST_FOREACH(tlv, &iud->head, entry) {
|
||||
if (!strncmp(port->ifname, tlv->ifname, IFNAMSIZ)) {
|
||||
@@ -143,7 +142,7 @@ struct ieee8021qaz_tlvs *ieee8021qaz_data(const char *ifname)
|
||||
struct ieee8021qaz_user_data *iud;
|
||||
struct ieee8021qaz_tlvs *tlv = NULL;
|
||||
|
||||
- iud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8021QAZ);
|
||||
+ iud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8021QAZ);
|
||||
if (iud) {
|
||||
LIST_FOREACH(tlv, &iud->head, entry) {
|
||||
if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
|
||||
@@ -629,7 +628,7 @@ void ieee8021qaz_ifup(char *ifname, struct lldp_agent *agent)
|
||||
LIST_INIT(&tlvs->app_head);
|
||||
read_cfg_file(port->ifname, agent, tlvs);
|
||||
|
||||
- iud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8021QAZ);
|
||||
+ iud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8021QAZ);
|
||||
LIST_INSERT_HEAD(&iud->head, tlvs, entry);
|
||||
|
||||
initialized:
|
||||
@@ -2179,7 +2178,7 @@ int ieee8021qaz_tlvs_rxed(const char *ifname)
|
||||
struct ieee8021qaz_user_data *iud;
|
||||
struct ieee8021qaz_tlvs *tlv = NULL;
|
||||
|
||||
- iud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8021QAZ);
|
||||
+ iud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8021QAZ);
|
||||
if (iud) {
|
||||
LIST_FOREACH(tlv, &iud->head, entry) {
|
||||
if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
|
||||
@@ -2198,7 +2197,7 @@ int ieee8021qaz_check_active(const char *ifname)
|
||||
struct ieee8021qaz_user_data *iud;
|
||||
struct ieee8021qaz_tlvs *tlv = NULL;
|
||||
|
||||
- iud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8021QAZ);
|
||||
+ iud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8021QAZ);
|
||||
if (iud) {
|
||||
LIST_FOREACH(tlv, &iud->head, entry) {
|
||||
if (!strncmp(tlv->ifname, ifname, IFNAMSIZ))
|
||||
diff --git a/lldp_8023.c b/lldp_8023.c
|
||||
index 422026e..8a03211 100644
|
||||
--- a/lldp_8023.c
|
||||
+++ b/lldp_8023.c
|
||||
@@ -39,8 +39,6 @@
|
||||
#include "lldp_8023_clif.h"
|
||||
#include "lldp_8023_cmds.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
struct tlv_info_8023_maccfg {
|
||||
u8 oui[3];
|
||||
u8 sub;
|
||||
@@ -84,7 +82,7 @@ static struct ieee8023_data *ieee8023_data(const char *ifname, enum agent_type t
|
||||
struct ieee8023_user_data *ud;
|
||||
struct ieee8023_data *bd = NULL;
|
||||
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8023);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8023);
|
||||
if (ud) {
|
||||
LIST_FOREACH(bd, &ud->head, entry) {
|
||||
if (!strncmp(ifname, bd->ifname, IFNAMSIZ) &&
|
||||
@@ -456,7 +454,7 @@ void ieee8023_ifup(char *ifname, struct lldp_agent *agent)
|
||||
goto out_err;
|
||||
}
|
||||
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_8023);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_8023);
|
||||
LIST_INSERT_HEAD(&ud->head, bd, entry);
|
||||
LLDPAD_INFO("%s:port %s added\n", __func__, ifname);
|
||||
return;
|
||||
diff --git a/lldp_basman.c b/lldp_basman.c
|
||||
index a4f69c1..614e2a2 100644
|
||||
--- a/lldp_basman.c
|
||||
+++ b/lldp_basman.c
|
||||
@@ -75,8 +75,6 @@ struct tlv_info_manaddr {
|
||||
struct tlv_info_maoid o;
|
||||
} __attribute__ ((__packed__));
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
static const struct lldp_mod_ops basman_ops = {
|
||||
.lldp_mod_register = basman_register,
|
||||
.lldp_mod_unregister = basman_unregister,
|
||||
@@ -91,7 +89,7 @@ static struct basman_data *basman_data(const char *ifname, enum agent_type type)
|
||||
struct basman_user_data *bud;
|
||||
struct basman_data *bd = NULL;
|
||||
|
||||
- bud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_BASIC);
|
||||
+ bud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_BASIC);
|
||||
if (bud) {
|
||||
LIST_FOREACH(bd, &bud->head, entry) {
|
||||
if (!strncmp(ifname, bd->ifname, IFNAMSIZ) &&
|
||||
@@ -688,7 +686,7 @@ void basman_ifup(char *ifname, struct lldp_agent *agent)
|
||||
goto out_err;
|
||||
}
|
||||
|
||||
- bud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_BASIC);
|
||||
+ bud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_BASIC);
|
||||
LIST_INSERT_HEAD(&bud->head, bd, entry);
|
||||
LLDPAD_DBG("%s:port %s added\n", __func__, ifname);
|
||||
return;
|
||||
diff --git a/lldp_evb.c b/lldp_evb.c
|
||||
index dcdcc7e..a8f3965 100644
|
||||
--- a/lldp_evb.c
|
||||
+++ b/lldp_evb.c
|
||||
@@ -36,14 +36,12 @@
|
||||
#include "messages.h"
|
||||
#include "config.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
struct evb_data *evb_data(char *ifname, enum agent_type type)
|
||||
{
|
||||
struct evb_user_data *ud;
|
||||
struct evb_data *ed = NULL;
|
||||
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_EVB);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_EVB);
|
||||
if (ud) {
|
||||
LIST_FOREACH(ed, &ud->head, entry) {
|
||||
if (!strncmp(ifname, ed->ifname, IFNAMSIZ) &&
|
||||
@@ -347,7 +345,7 @@ static void evb_ifup(char *ifname, struct lldp_agent *agent)
|
||||
|
||||
evb_init_tlv(ed, agent);
|
||||
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_EVB);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_EVB);
|
||||
LIST_INSERT_HEAD(&ud->head, ed, entry);
|
||||
LLDPAD_DBG("%s:%s agent %d added\n", __func__, ifname, agent->type);
|
||||
}
|
||||
diff --git a/lldp_evb22.c b/lldp_evb22.c
|
||||
index 76ba883..6e92d9d 100644
|
||||
--- a/lldp_evb22.c
|
||||
+++ b/lldp_evb22.c
|
||||
@@ -37,14 +37,12 @@
|
||||
#include "messages.h"
|
||||
#include "config.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
struct evb22_data *evb22_data(char *ifname, enum agent_type type)
|
||||
{
|
||||
struct evb22_user_data *ud;
|
||||
struct evb22_data *ed = NULL;
|
||||
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_EVB22);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_EVB22);
|
||||
if (ud) {
|
||||
LIST_FOREACH(ed, &ud->head, entry) {
|
||||
if (!strncmp(ifname, ed->ifname, IFNAMSIZ) &&
|
||||
@@ -453,7 +451,7 @@ static void evb22_ifup(char *ifname, struct lldp_agent *agent)
|
||||
STRNCPY_TERMINATED(ed->ifname, ifname, IFNAMSIZ);
|
||||
ed->agenttype = agent->type;
|
||||
evb22_init_tlv(ed, agent);
|
||||
- ud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_EVB22);
|
||||
+ ud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_EVB22);
|
||||
LIST_INSERT_HEAD(&ud->head, ed, entry);
|
||||
LLDPAD_DBG("%s:%s agent %d added\n", __func__, ifname, agent->type);
|
||||
}
|
||||
diff --git a/lldp_mand.c b/lldp_mand.c
|
||||
index 0db63cb..b857a88 100644
|
||||
--- a/lldp_mand.c
|
||||
+++ b/lldp_mand.c
|
||||
@@ -42,8 +42,6 @@
|
||||
#include "lldp/l2_packet.h"
|
||||
#include "lldp_tlv.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
static const struct lldp_mod_ops mand_ops = {
|
||||
.lldp_mod_register = mand_register,
|
||||
.lldp_mod_unregister = mand_unregister,
|
||||
@@ -59,7 +57,7 @@ struct mand_data *mand_data(const char *ifname, enum agent_type type)
|
||||
struct mand_user_data *mud;
|
||||
struct mand_data *md = NULL;
|
||||
|
||||
- mud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_MAND);
|
||||
+ mud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_MAND);
|
||||
if (mud) {
|
||||
LIST_FOREACH(md, &mud->head, entry) {
|
||||
if (!strncmp(ifname, md->ifname, IFNAMSIZ) &&
|
||||
@@ -608,7 +606,7 @@ void mand_ifup(char *ifname, struct lldp_agent *agent)
|
||||
STRNCPY_TERMINATED(md->ifname, ifname, IFNAMSIZ);
|
||||
md->agenttype = agent->type;
|
||||
|
||||
- mud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_MAND);
|
||||
+ mud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_MAND);
|
||||
LIST_INSERT_HEAD(&mud->head, md, entry);
|
||||
}
|
||||
|
||||
@@ -636,7 +634,7 @@ struct lldp_module *mand_register(void)
|
||||
LLDPAD_ERR("failed to malloc LLDP Mandatory module data\n");
|
||||
goto out_err;
|
||||
}
|
||||
- mud = malloc(sizeof(struct mand_user_data));
|
||||
+ mud = malloc(sizeof(struct mand_user_data));
|
||||
if (!mud) {
|
||||
free(mod);
|
||||
LLDPAD_ERR("failed to malloc LLDP Mandatory module user data\n");
|
||||
@@ -644,8 +642,8 @@ struct lldp_module *mand_register(void)
|
||||
}
|
||||
LIST_INIT(&mud->head);
|
||||
mod->id = LLDP_MOD_MAND;
|
||||
+ mod->data = mud;
|
||||
mod->ops = &mand_ops;
|
||||
- mod->data = mud;
|
||||
LLDPAD_INFO("%s:done\n", __func__);
|
||||
return mod;
|
||||
out_err:
|
||||
diff --git a/lldp_med.c b/lldp_med.c
|
||||
index f6c373e..7b6996e 100644
|
||||
--- a/lldp_med.c
|
||||
+++ b/lldp_med.c
|
||||
@@ -40,8 +40,6 @@
|
||||
#include "lldp_mand_clif.h"
|
||||
#include "lldp_med_cmds.h"
|
||||
|
||||
-extern struct lldp_head lldp_head;
|
||||
-
|
||||
struct tlv_info_medcaps {
|
||||
u8 oui[OUI_SIZE];
|
||||
u8 subtype;
|
||||
@@ -95,7 +93,7 @@ static struct med_data *med_data(const char *ifname, enum agent_type type)
|
||||
struct med_user_data *mud;
|
||||
struct med_data *md = NULL;
|
||||
|
||||
- mud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_MED);
|
||||
+ mud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_MED);
|
||||
if (mud) {
|
||||
LIST_FOREACH(md, &mud->head, entry) {
|
||||
if (!strncmp(ifname, md->ifname, IFNAMSIZ) &&
|
||||
@@ -914,7 +912,7 @@ void med_ifup(char *ifname, struct lldp_agent *agent)
|
||||
free(md);
|
||||
goto out_err;
|
||||
}
|
||||
- mud = find_module_user_data_by_id(&lldp_head, LLDP_MOD_MED);
|
||||
+ mud = find_module_user_data_by_id(&lldp_mod_head, LLDP_MOD_MED);
|
||||
LIST_INSERT_HEAD(&mud->head, md, entry);
|
||||
LLDPAD_INFO("%s:port %s added\n", __func__, ifname);
|
||||
return;
|
||||
diff --git a/qbg_utils.c b/qbg_utils.c
|
||||
index 9daeade..0d40c5b 100644
|
||||
--- a/qbg_utils.c
|
||||
+++ b/qbg_utils.c
|
||||
@@ -36,7 +36,6 @@
|
||||
#include "qbg_utils.h"
|
||||
|
||||
extern int loglvl; /* Global lldpad log level */
|
||||
-extern struct lldp_head lldp_head;
|
||||
|
||||
/*
|
||||
* hexdump_frame - print raw evb/ecp/vdp frame
|
||||
@@ -73,7 +72,7 @@ void hexdump_frame(const char *ifname, char *txt, const unsigned char *buf,
|
||||
*/
|
||||
int modules_notify(int id, int sender_id, char *ifname, void *data)
|
||||
{
|
||||
- struct lldp_module *mp = find_module_by_id(&lldp_head, id);
|
||||
+ struct lldp_module *mp = find_module_by_id(&lldp_mod_head, id);
|
||||
int rc = 0;
|
||||
|
||||
if (mp && mp->ops->lldp_mod_notify)
|
||||
--
|
||||
2.18.1
|
||||
|
||||
|
|
@ -12,27 +12,15 @@ inherit ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}
|
|||
|
||||
DEPENDS = "libnl libconfig readline"
|
||||
|
||||
SRCREV = "b71bfb87fefb31c4b1a6a7ae351791c90966c3a8"
|
||||
SRCREV = "85e55837a81d710e5baa7da47f7ed0d205c8ede5"
|
||||
PV .= "+git${SRCPV}"
|
||||
SRC_URI = "git://github.com/intel/openlldp.git;protocol=https;branch=master \
|
||||
SRC_URI = "git://github.com/intel/openlldp.git;protocol=https;branch=branch-1.1 \
|
||||
file://0001-Fix-musl-libc-build-issue.patch \
|
||||
file://0001-autotools-Add-include-path-to-generated-version.h.patch \
|
||||
file://0001-autotools-Add-option-to-disable-installation-of-syst.patch \
|
||||
file://0001-cmds-fix-enum-conversion.patch \
|
||||
file://0002-lldp_head-rename-and-make-extern.patch \
|
||||
file://0003-lldp-add-packed-struct-definition.patch \
|
||||
file://0004-lldptool-make-extern.patch \
|
||||
file://0005-cisco_oui-match-encode-handler-prototypes.patch \
|
||||
file://0006-ecp22-make-enum-a-type-rather-than-instance.patch \
|
||||
file://0007-lldp_8021qaz-extern-config-object.patch \
|
||||
file://0008-stringops-fix-some-string-copy-errors.patch \
|
||||
file://0009-8021qaz-mark-prio-map-functions-static.patch \
|
||||
file://lldp_head-remove-all-references.patch \
|
||||
file://0004-clif-Include-string.h-for-mem-function-prototypes.patch \
|
||||
"
|
||||
|
||||
# Makefile.am adds -Werror to AM_CFLAGS. There are warnings so disable it.
|
||||
TARGET_CFLAGS += "-Wno-error"
|
||||
|
||||
# Enable install of systemd conf files.
|
||||
EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_system_unitdir}', '', d)}"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user