def TrustRoot.verify_return_to(realm_str, return_to, _vrfy=nil)
if _vrfy.nil?
_vrfy = self.method('get_allowed_return_urls')
end
if !(_vrfy.is_a?(Proc) or _vrfy.is_a?(Method))
raise ArgumentError, "_vrfy must be a Proc or Method"
end
realm = TrustRoot.parse(realm_str)
if realm.nil?
return false
end
begin
allowable_urls = _vrfy.call(realm.build_discovery_url())
rescue RealmVerificationRedirected => err
Util.log(err.to_s)
return false
end
if return_to_matches(allowable_urls, return_to)
return true
else
Util.log("Failed to validate return_to #{return_to} for " +
"realm #{realm_str}, was not in #{allowable_urls}")
return false
end
end