| Index: components/gcm_driver/instance_id/instance_id.h | 
| diff --git a/components/gcm_driver/instance_id/instance_id.h b/components/gcm_driver/instance_id/instance_id.h | 
| index ccf16b7bda650def96ca177b762e5a54c178311b..1e6c120d202fe3a082149ce9753c7d662ea86647 100644 | 
| --- a/components/gcm_driver/instance_id/instance_id.h | 
| +++ b/components/gcm_driver/instance_id/instance_id.h | 
| @@ -51,17 +51,18 @@ class InstanceID { | 
|  | 
| // Asynchronous callbacks. Must not synchronously delete |this| (using | 
| // InstanceIDDriver::RemoveInstanceID). | 
| -  typedef base::Callback<void(const std::string& app_id, | 
| -                              bool update_id)> TokenRefreshCallback; | 
| -  typedef base::Callback<void(const std::string& id)> GetIDCallback; | 
| -  typedef base::Callback<void(const base::Time& creation_time)> | 
| -      GetCreationTimeCallback; | 
| -  typedef base::Callback<void(const std::string& token, | 
| -                              Result result)> GetTokenCallback; | 
| -  typedef base::Callback<void(const std::string&, const std::string&)> | 
| -      GetEncryptionInfoCallback; | 
| -  typedef base::Callback<void(Result result)> DeleteTokenCallback; | 
| -  typedef base::Callback<void(Result result)> DeleteIDCallback; | 
| +  using TokenRefreshCallback = | 
| +      base::Callback<void(const std::string& app_id, bool update_id)>; | 
| +  using GetIDCallback = base::Callback<void(const std::string& id)>; | 
| +  using GetCreationTimeCallback = | 
| +      base::Callback<void(const base::Time& creation_time)>; | 
| +  using GetTokenCallback = | 
| +      base::Callback<void(const std::string& token, Result result)>; | 
| +  using ValidateTokenCallback = base::Callback<void(bool is_valid)>; | 
| +  using GetEncryptionInfoCallback = | 
| +      base::Callback<void(const std::string&, const std::string&)>; | 
| +  using DeleteTokenCallback = base::Callback<void(Result result)>; | 
| +  using DeleteIDCallback = base::Callback<void(Result result)>; | 
|  | 
| static const int kInstanceIDByteLength = 8; | 
|  | 
| @@ -100,6 +101,13 @@ class InstanceID { | 
| const std::map<std::string, std::string>& options, | 
| const GetTokenCallback& callback) = 0; | 
|  | 
| +  // Checks that the provided |token| matches the stored token for (|app_id()|, | 
| +  // |authorized_entity|, |scope|). | 
| +  virtual void ValidateToken(const std::string& authorized_entity, | 
| +                             const std::string& scope, | 
| +                             const std::string& token, | 
| +                             const ValidateTokenCallback& callback) = 0; | 
| + | 
| // Get the public encryption key and authentication secret associated with a | 
| // GCM-scoped token. If encryption info is not yet associated, it will be | 
| // created. | 
|  |