socket accepts clients using non-block