From: Taehee Yoo ap420073@gmail.com
[ Upstream commit 627f16931bf3cb20d50274d9341380ac2c3035fd ]
When AMT gateway starts sending a new request message, it should regenerate the nonce variable.
Fixes: cbc21dc1cfe9 ("amt: add data plane of amt interface") Signed-off-by: Taehee Yoo ap420073@gmail.com Signed-off-by: Paolo Abeni pabeni@redhat.com Signed-off-by: Sasha Levin sashal@kernel.org --- drivers/net/amt.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/net/amt.c b/drivers/net/amt.c index ff859d4a4b50..2fe56640e493 100644 --- a/drivers/net/amt.c +++ b/drivers/net/amt.c @@ -963,9 +963,13 @@ static void amt_event_send_request(struct amt_dev *amt) amt->remote_ip = 0; amt_update_gw_status(amt, AMT_STATUS_INIT, false); amt->req_cnt = 0; + amt->nonce = 0; goto out; }
+ if (!amt->req_cnt) + get_random_bytes(&amt->nonce, sizeof(__be32)); + amt_send_request(amt, false); amt_send_request(amt, true); amt_update_gw_status(amt, AMT_STATUS_SENT_REQUEST, true);