So, I'm developing on a Linux machine but my stuff is going to be run on both Windows and Linux. I need to write cross compatible networking code so a Windows can communicate with Linux. I've been looking at sockets and it seems that it's all *nix exclusive and that I need to use winsock for Windows. All I need to do is open a few ports, transfer plaintext (TCP), transfer files (TCP) and transfer live binary (Maybe UDP). Is there a way to write net stuffs that works on both?