blob: 08735e018cd075a47af3425a9e9762232a9e7955 [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SERVICES_QUARANTINE_COMMON_H_
#define COMPONENTS_SERVICES_QUARANTINE_COMMON_H_
#include "url/gurl.h"
namespace quarantine {
// Return a sanitized URL to use as a source or referrer for the purpose of
// annotating the source of a downloaded file.
//
// For privacy reasons, it's best to not URLs as-is when annotating or
// informing third parties about the source of a download. Hence this function
// is used to strip out any unnecessary or excessive parts from the URL.
//
// See https://crbug.com/917842 for justification for the types of sanitization
// performed here. In particular, stripping fragments, query, and path from URLs
// was discussed and rejected due to that information being pertinent to
// evaluating whether the downloaded file is safe.
GURL SanitizeUrlForQuarantine(const GURL& source_url);
} // namespace quarantine
#endif // COMPONENTS_SERVICES_QUARANTINE_COMMON_H_