I was thinking about how zonealarm works so I was looking into how to find out when a program wants to open a socket, does anyone know anything about this? I found the getsockopt api call, if I understand it properly this should check to see if a socket is open, but that would be too late as data would have already been sent, any ideas?