all the rest of the generic tcp socket goop