more socket refinements