code: def _bind_posix_socket(socket_name=None):
      
      assert socket_name is None or isinstance(socket_name, six.text_type)
  
      s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
  
      if socket_name:
          s.bind(socket_name)
          return socket_name, s
      else:
          i = 0
          while True:
              try:
                  socket_name = '%s/pymux.sock.%s.%i' % (
                      tempfile.gettempdir(), getpass.getuser(), i)
                  s.bind(socket_name)
                  return socket_name, s
              except (OSError, socket.error):
                  i += 1
  
                  # When 100 times failed, cancel server
                  if i == 100:
                      logger.warning('100 times failed to listen on posix socket. '
                                     'Please clean up old sockets.')
                      raise
docs: Find a socket to listen on and return it.
  
      Returns (socket_name, sock_obj)