Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Jun 2006 05:29:01 -0700 (PDT)
From:      "Shaun Colley" <shaun@rsc.cx>
To:        "Max Laier" <max@love2party.net>
Cc:        freebsd-net@freebsd.org, Shaun Colley <shaun@rsc.cx>
Subject:   Re: Unexpected behavior after altering inetsw[] switch table
Message-ID:  <52332.81.107.58.115.1150028941.squirrel@webmail.rsc.cx>
In-Reply-To: <200606111308.28468.max@love2party.net>
References:  <52706.81.107.58.115.1149986191.squirrel@webmail.rsc.cx> <200606111308.28468.max@love2party.net>

next in thread | previous in thread | raw e-mail | index | archive | help
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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52332.81.107.58.115.1150028941.squirrel>