verify_discovered_services (OpenID::Consumer::IdResHandler)

    # File lib/openid/consumer/idres.rb, line 431
          def verify_discovered_services(claimed_id, services, to_match_endpoints)
            # Search the services resulting from discovery to find one
            # that matches the information from the assertion
            failure_messages = []
            for endpoint in services
              for to_match_endpoint in to_match_endpoints
                begin
                  verify_discovery_single(endpoint, to_match_endpoint)
                rescue ProtocolError => why
                  failure_messages << why.message
                else
                  # It matches, so discover verification has
                  # succeeded. Return this endpoint.
                  @endpoint = endpoint
                  return
                end
              end
            end

            Util.log("Discovery verification failure for #{claimed_id}")
            failure_messages.each do |failure_message|
              Util.log(" * Endpoint mismatch: " + failure_message)
            end

            # XXX: is DiscoveryFailure in Python OpenID
            raise ProtocolError, ("No matching endpoint found after "\
                                  "discovering #{claimed_id}")
          end