1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 // 5 // Sync protocol datatype extension for password data. 6 7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change 8 // any fields in this file. 9 10 syntax = "proto2"; 11 12 option optimize_for = LITE_RUNTIME; 13 option retain_unknown_fields = true; 14 15 package sync_pb; 16 17 import "encryption.proto"; 18 19 // These are the properties that get serialized into the |encrypted| field of 20 // PasswordSpecifics. They correspond to fields in autofill::PasswordForm. See 21 // components/autofill/core/common/password_form.h for more details. 22 message PasswordSpecificsData { 23 optional int32 scheme = 1; 24 optional string signon_realm = 2; 25 optional string origin = 3; 26 optional string action = 4; 27 optional string username_element = 5; 28 optional string username_value = 6; 29 optional string password_element = 7; 30 optional string password_value = 8; 31 optional bool ssl_valid = 9; 32 optional bool preferred = 10; 33 optional int64 date_created = 11; 34 optional bool blacklisted = 12; 35 optional int32 type = 13; 36 optional int32 times_used = 14; 37 } 38 39 // Properties of password sync objects. 40 message PasswordSpecifics { 41 // The actual password data. Contains an encrypted PasswordSpecificsData 42 // message. 43 optional EncryptedData encrypted = 1; 44 // An unsynced field for use internally on the client. This field should 45 // never be set in any network-based communications. 46 optional PasswordSpecificsData client_only_encrypted_data = 2; 47 } 48 49