Open nomyfan opened 3 years ago
Thanks so much for your work on this!
4 questions I have:
interface
flag? Is it because the any
interface doesn't exist on Windows?port
flag on Windows? (does WinPcap not support using another port?)capture-stream
doesn't work on Windows? From some very brief Googling it looks like Tokio has some sort of Windows support, but I don't know a lot about this.dnspeep
and then send a packet that doesn't get a DNS response (like with dig @127.0.0.1 example.com
), do you see that packet printed out with <no response>
?. My guess is that it won't because it's not using pcap's stream feature and so tokio's event loop will be blocked.any
is not support on Windows. Moreover, in some scenarios we may only care the packets from the specific interface. With interface
flag, we can do this.interface
with port
working together(DONE with 4307ca2).capture-stream
feature will enable PacketStream
that has the dependency chain PacketStream -> SelectableFd -> RawFd
while RawFd
aka std::os::unix::io::RawFd
isn't enabled on Windows. You can explorer it in stream.rs<no response>
, See the figure below.Resolve #15
abandoned?
There's one thing needs to pay attention to(in Cargo.toml). Since we only enable pcap's capture-stream feature on unix, we need to update the
publish.yml
file to pass down the--features
arguments forcargo build
.I have not set up the CI for Windows build yet !!!