Index: chrome/browser/sync/protocol/sync.proto |
diff --git a/chrome/browser/sync/protocol/sync.proto b/chrome/browser/sync/protocol/sync.proto |
index ae118ce60de42330947759dc65cfe1335839db41..cb4be4fd09d7ec5b6c203a2cec981c74051f03be 100644 |
--- a/chrome/browser/sync/protocol/sync.proto |
+++ b/chrome/browser/sync/protocol/sync.proto |
@@ -627,13 +627,34 @@ message ClientToServerResponse { |
// out-of-date client parses a value it doesn't |
// recognize. |
} |
+ |
+ message Error { |
+ optional ErrorType error_type = 1 [default = UNKNOWN]; |
+ optional string error_description = 2; |
+ optional string url = 3; |
+ enum Action { |
+ UPGRADE_CLIENT = 0; // Upgrade the client to latest version. |
+ CLEAR_USER_DATA_AND_RESYNC = 1; // Clear user data from dashboard and |
+ // setup sync again. |
+ ENABLE_SYNC_ON_ACCOUNT = 2; // The administrator needs to enable sync |
+ // on the account. |
+ STOP_AND_RESTART_SYNC = 3; // Stop sync and set up sync again. |
+ DISABLE_SYNC_ON_CLIENT = 4; // Wipe the client of all sync data and |
+ // stop syncing. |
+ UNKNOWN_ACTION = 5; // This is the default. |
+ } |
+ optional Action action = 4 [default = UNKNOWN_ACTION]; |
+ } |
+ |
+ optional Error error = 13; |
+ |
// Up until protocol_version 24, the default was SUCCESS which made it |
// impossible to add new enum values since older clients would parse any |
// out-of-range value as SUCCESS. Starting with 25, unless explicitly set, |
// the error_code will be UNKNOWN so that clients know when they're |
// out-of-date. Note also that when using protocol_version < 25, |
// TRANSIENT_ERROR is not supported. Instead, the server sends back a HTTP |
- // 400 error code. |
+ // 400 error code. This is deprecated now. |
optional ErrorType error_code = 4 [default = UNKNOWN]; |
optional string error_message = 5; |