nick black
2011-10-06 18:37:32 UTC
Hey there. I'm developing an application which makes use of PACKET_TX_R=
ING
(http://dank.qemfd.net/dankwiki/index.php/Omphalos), one mmap'd RX and =
TX
socket per interface. When I transmit on wireless/ethernet devices, the
packets flow out fine, and I get responses.
When I transmit on loopback, I can see the packets using tcpdump -i lo,=
=20
send() returns 0, and the frame is set back to TP_STATUS_AVAILABLE.
Checksums are properly set and the packets appear well-formed in Wiresh=
ark.
I can't seem to read the packets, however; neither the intended DNS ser=
ver
(verified via dnsmasq -d and strace) nor my own socat udp-listen proces=
s
seem to get the packets.
Is PACKET_TX_RING expected to work on loopback?
Thanks!
--=20
nick black <***@nvidia.com>
"A main cause of the Roman Empire's fall was that=E2=80=93lacking zero=E2=
=80=93they had
no way to indicate successful termination of their C programs."
ING
(http://dank.qemfd.net/dankwiki/index.php/Omphalos), one mmap'd RX and =
TX
socket per interface. When I transmit on wireless/ethernet devices, the
packets flow out fine, and I get responses.
When I transmit on loopback, I can see the packets using tcpdump -i lo,=
=20
send() returns 0, and the frame is set back to TP_STATUS_AVAILABLE.
Checksums are properly set and the packets appear well-formed in Wiresh=
ark.
I can't seem to read the packets, however; neither the intended DNS ser=
ver
(verified via dnsmasq -d and strace) nor my own socat udp-listen proces=
s
seem to get the packets.
Is PACKET_TX_RING expected to work on loopback?
Thanks!
--=20
nick black <***@nvidia.com>
"A main cause of the Roman Empire's fall was that=E2=80=93lacking zero=E2=
=80=93they had
no way to indicate successful termination of their C programs."