blob: 359772198574a75265059085082011239d534e8d [file] [log] [blame]
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "net/log/net_log_capture_mode.h"
#include <string>
#include "net/base/url_util.h"
#include "url/gurl.h"
namespace net {
bool NetLogCaptureIncludesSensitive(NetLogCaptureMode capture_mode) {
return capture_mode >= NetLogCaptureMode::kIncludeSensitive;
}
bool NetLogCaptureIncludesSocketBytes(NetLogCaptureMode capture_mode) {
return capture_mode == NetLogCaptureMode::kEverything;
}
std::string SanitizeUrlForNetLog(const GURL& url,
NetLogCaptureMode capture_mode) {
if (!url.is_valid() || (!url.has_username() && !url.has_password()) ||
NetLogCaptureIncludesSensitive(capture_mode)) {
return url.possibly_invalid_spec();
}
return RemoveCredentialsFromUrl(url).spec() + " (credentials redacted)";
}
} // namespace net