hey, I've been trying to change certain network packet mangling software
such that it would not need a kernel module, and it seems to me that,
unfortunately there's no way to make packet socket "steal" packets it
deliveres to the user mode.
The behaviour I see is it gives userland a copy and give the native
network stack a copy.
unless I missed something, perhaps there could be an ioctl/setsockopt
which would turn this behaviour into "pass packet to user mode or drop
altogether" that would never result in network stack getting a packet
directly.
I realise same functionality can be achieved through netfilter QUEUE
command, but that doesn't seem as nice.
cheers, dima
|