#include "components/services/quarantine/common.h"
#include "url/origin.h"
#include "url/url_canon.h"
namespace quarantine {
GURL SanitizeUrlForQuarantine(const GURL& source_url) {
if (!source_url.is_valid() || source_url.SchemeIs("data")) {
return GURL();
}
if (source_url.SchemeIsBlob() || source_url.SchemeIsFileSystem()) {
return url::Origin::Create(source_url).GetURL();
}
if (!source_url.SchemeIsHTTPOrHTTPS() && !source_url.SchemeIsWSOrWSS()) {
return source_url;
}
GURL::Replacements replacements;
replacements.ClearUsername();
replacements.ClearPassword();
return source_url.ReplaceComponents(replacements);
}
}