Unexpected behavior after altering inetsw[] switch table
Shaun Colley
shaun at rsc.cx
Sun Jun 11 12:29:10 UTC 2006
Hi Max & group,
> As you can see in netinet/in_proto.c, tcp does not use pr_output, but
> calls
> tcp_output() directly where needed. Depending on what you want to achive
> it
> might be enough to hack up tcp_usr_send() and replace tcp_usrreqs.pru_send
> instead. Replaceing tcp_output() is not easily possible. You could start
> with telling us what you *really* want to do so we can point you to a
> workable option.
Right, I'll start by telling you what I'm actually trying to achieve.
Everytime an IP datagram with a TCP header is sent, I want to mangle (i.e.
modify) part of the TCP packet and it's payload with 'random' data.
Although this may sound a bit pointless, I want to do this to implement a
form of dumb fuzzing, which is a form of stress testing used a lot in
computer security. Does that make a bit of sense?
So I was attempting to modify the pr_output hook for TCP (which I now know
isn't possible) and replace it with a ptr to my own hacked tcp_output
routine.
Can you see a way to do what I'm trying to achieve?
Cheers,
shaun
More information about the freebsd-net
mailing list