Skip to content
This repository was archived by the owner on Oct 26, 2022. It is now read-only.

Commit 9dccf92

Browse files
Luap99cathay4t
authored andcommitted
rtnetlink: LinkDelRequest set correct flags
NLM_F_EXCL and NLM_F_CREATE are not valid flags for the delete request. On kernel v5.19 there was a new delete flag NLM_F_BULK added which has the same value as NLM_F_EXCL. This causes the kernel to respond with EOPNOTSUPP when trying to remove an interface. Fixes #273 Signed-off-by: Paul Holzinger <[email protected]>
1 parent 99b5765 commit 9dccf92

File tree

1 file changed

+2
-10
lines changed

1 file changed

+2
-10
lines changed

rtnetlink/src/link/del.rs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,7 @@
33
use futures::stream::StreamExt;
44

55
use crate::{
6-
packet::{
7-
LinkMessage,
8-
NetlinkMessage,
9-
RtnlMessage,
10-
NLM_F_ACK,
11-
NLM_F_CREATE,
12-
NLM_F_EXCL,
13-
NLM_F_REQUEST,
14-
},
6+
packet::{LinkMessage, NetlinkMessage, RtnlMessage, NLM_F_ACK, NLM_F_REQUEST},
157
try_nl,
168
Error,
179
Handle,
@@ -36,7 +28,7 @@ impl LinkDelRequest {
3628
message,
3729
} = self;
3830
let mut req = NetlinkMessage::from(RtnlMessage::DelLink(message));
39-
req.header.flags = NLM_F_REQUEST | NLM_F_ACK | NLM_F_EXCL | NLM_F_CREATE;
31+
req.header.flags = NLM_F_REQUEST | NLM_F_ACK;
4032

4133
let mut response = handle.request(req)?;
4234
while let Some(message) = response.next().await {

0 commit comments

Comments
 (0)