| Index: google_apis/gcm/engine/checkin_request.cc
|
| diff --git a/google_apis/gcm/engine/checkin_request.cc b/google_apis/gcm/engine/checkin_request.cc
|
| index ad13923d72ece93221bd561bf5f1f6e92c6d766f..452e28466efe03bad218ae0e25df68e415350e95 100644
|
| --- a/google_apis/gcm/engine/checkin_request.cc
|
| +++ b/google_apis/gcm/engine/checkin_request.cc
|
| @@ -11,6 +11,7 @@
|
| #include "google_apis/gcm/monitoring/gcm_stats_recorder.h"
|
| #include "google_apis/gcm/protocol/checkin.pb.h"
|
| #include "net/base/load_flags.h"
|
| +#include "net/traffic_annotation/network_traffic_annotation.h"
|
| #include "net/url_request/url_fetcher.h"
|
| #include "net/url_request/url_request_status.h"
|
|
|
| @@ -144,9 +145,40 @@ void CheckinRequest::Start() {
|
|
|
| std::string upload_data;
|
| CHECK(request.SerializeToString(&upload_data));
|
| -
|
| - url_fetcher_ =
|
| - net::URLFetcher::Create(checkin_url_, net::URLFetcher::POST, this);
|
| + net::NetworkTrafficAnnotationTag traffic_annotation =
|
| + net::DefineNetworkTrafficAnnotation("gcm_checkin", R"(
|
| + semantics {
|
| + sender: "GCM Driver"
|
| + description:
|
| + "Chromium interacts with Google Cloud Messaging to receive push "
|
| + "messages for various browser features, as well as on behalf of "
|
| + "websites and extensions. The check-in periodically verifies the "
|
| + "client's validity with Google servers, and receive updates to "
|
| + "configuration regarding interacting with Google services."
|
| + trigger:
|
| + "Immediately after a feature creates the first Google Cloud "
|
| + "Messaging registration. By default, Chromium will check in with "
|
| + "Google Cloud Messaging every two days. Google can adjust this "
|
| + "interval when it deems necessary."
|
| + data:
|
| + "The profile-bound Android ID and associated secret and account "
|
| + "tokens. A structure containing the Chromium version, channel, and "
|
| + "platform of the host operating system."
|
| + destination: GOOGLE_OWNED_SERVICE
|
| + }
|
| + policy {
|
| + cookies_allowed: false
|
| + setting:
|
| + "Support for interacting with Google Cloud Messaging is enabled by "
|
| + "default, and there is no configuration option to completely "
|
| + "disable it. Websites wishing to receive push messages must "
|
| + "acquire express permission from the user for the 'Notification' "
|
| + "permission."
|
| + policy_exception_justification:
|
| + "Not implemented, considered not useful."
|
| + })");
|
| + url_fetcher_ = net::URLFetcher::Create(checkin_url_, net::URLFetcher::POST,
|
| + this, traffic_annotation);
|
| url_fetcher_->SetRequestContext(request_context_getter_);
|
| url_fetcher_->SetUploadData(kRequestContentType, upload_data);
|
| url_fetcher_->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES |
|
|
|