Skip to content

Commit

Permalink
net/ncsi: Fix the payload copying for the request coming from Netlink
Browse files Browse the repository at this point in the history
The request coming from Netlink should use the OEM generic handler.

The standard command handler expects payload in bytes/words/dwords
but the actual payload is stored in data if the request is coming from Netlink.

Signed-off-by: Justin Lee <[email protected]>
Reviewed-by: Vijay Khemka <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
[email protected] authored and davem330 committed Aug 23, 2019
1 parent 4df0d83 commit f6edbf2
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions net/ncsi/ncsi-cmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -309,14 +309,21 @@ static struct ncsi_request *ncsi_alloc_command(struct ncsi_cmd_arg *nca)

int ncsi_xmit_cmd(struct ncsi_cmd_arg *nca)
{
struct ncsi_cmd_handler *nch = NULL;
struct ncsi_request *nr;
unsigned char type;
struct ethhdr *eh;
struct ncsi_cmd_handler *nch = NULL;
int i, ret;

/* Use OEM generic handler for Netlink request */
if (nca->req_flags == NCSI_REQ_FLAG_NETLINK_DRIVEN)
type = NCSI_PKT_CMD_OEM;
else
type = nca->type;

/* Search for the handler */
for (i = 0; i < ARRAY_SIZE(ncsi_cmd_handlers); i++) {
if (ncsi_cmd_handlers[i].type == nca->type) {
if (ncsi_cmd_handlers[i].type == type) {
if (ncsi_cmd_handlers[i].handler)
nch = &ncsi_cmd_handlers[i];
else
Expand Down

0 comments on commit f6edbf2

Please sign in to comment.