Untangling socket code