Thanks for the reply WS. I was not aware this is just a part of a Windows API. For the sake of portability, I will try to stay away from this these special variable types whenever I can.

It's kind of interesting how sockaddr_in is defined as SOCKADDR_IN... it doesn't seem to make life any easier, though, to be fair, all uppercase letters tell me (as a Java programmer) that it's a variable defined somewhere else.

In any case, your reply along with White Eskimo's tutorial on preprocessors (http://www.antionline.com/showthread...hreadid=249061) sheds plenty of light on this.

Thank you once again,

-ik