INDY: manipulating data in a socks tunnel

hi!

i am a newbie to the internt direct (indy) component for delphi, and
therefore have a certain problem. i looked in the FAQ and searched in the
documentation for a long time, but i could not find anything... so i would
be very glad if you could help me.

my intention is to create an add-on for the msn messenger service. to
realize the additional features i am thinking of, i have to manipulate the
packets that are excahnged between the msn messenger service and the
microsoft server.

in order to realize this i wanted to write a Socks4 server which i can use
as a "plug" between a local application and an internet server. i used the
"TCP Tunnel" example and after modifying a little it worked fine. so i can
successfully connect the application through my local socks server to the
internet-server.

but now i would like to manipulate the data, that is sent between the two
sides. i searched for an appropriate event (like DataArrival in visual basic
winsock component) on the slave and the master component, but i could not
find anything... do you have any hints on where to look?

thanks a lot in advance,

greetings

rupert h?lzl