rust-lang / futures-rs

Zero-cost asynchronous programming in Rust
https://rust-lang.github.io/futures-rs/
Apache License 2.0
5.38k stars 624 forks source link

futures-rs cannot handle SetLink message type #2744

Closed liangwen12year closed 1 year ago

liangwen12year commented 1 year ago

I constructed two types of netlink message as follows:

Type one is NewLink which creates the bond interface with bond settings set, in this scenario, the bond kernel settings are changed as expected:

NetlinkMessage { header: NetlinkHeader { length: 0, message_type: 0, flags: 1541, sequence_number: 0, port_number: 0 }, payload: InnerMessage(NewLink(LinkMessage { header: LinkHeader { interface_family: 0, index: 0, link_layer_type: 0, flags: 1, change_mask: 1 }, nlas: [IfName("my-bond"), Info([Kind(Bond), Data(Bond([Mode(1), MiiMon(100), UpDelay(100), DownDelay(100), MinLinks(2), ArpIpTarget([6.6.7.7, 8.8.9.10]), NsIp6Target([fd01::1, fd02::2])]))])] })) }

Type two is SetLink which sets the bond port settings, in this scenario, the bond port kernel settings are not changed as expected:

NetlinkMessage { header: NetlinkHeader { length: 0, message_type: 0, flags: 1541, sequence_number: 0, port_number: 0 }, payload: InnerMessage(SetLink(LinkMessage { header: LinkHeader { interface_family: 0, index: 4, link_layer_type: 0, flags: 1, change_mask: 1 }, nlas: [IfName("eno4"), Info([SlaveKind(Bond), SlaveData(BondPort([Prio(32)]))])] })) }

As you can see, the structure of the NetlinkMessage is pretty similar, the only difference is the SetLink and NewLink, therefore I wonder if futures-rs cannot handle SetLink message type ?

taiki-e commented 1 year ago

This repository does not provide any functionality related to netlink. I think you are submitting an issue to the wrong repository.