some more socket stuff