Bunch of skeleton stuff! You'll probably need to look at boost::asio a bunch