blob: 56fcb57d565ef81f7f4bdf31cf494c87d33c29ef [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module ash.quick_start.mojom;
struct BootstrapConfigurations {
// Cryptauth Device ID can be empty even with a valid BootstrapConfigurations.
string cryptauth_device_id;
};
enum WifiSecurityType {
kPSK = 0,
kWEP = 1,
kEAP = 2,
kOpen = 3,
kOWE = 4,
kSAE = 5,
};
// These values are directly taken from Android, and reported back.
enum UserVerificationResult {
kUserVerified = 0,
kUserNotVerified = 1,
kLSKFNotSet = 2,
};
struct UserVerificationResponse {
UserVerificationResult result;
bool is_first_user_verification;
};
struct UserVerificationRequested {
bool is_awaiting_user_verification;
};
enum QuickStartDecoderError {
kEmptyMessage = 0,
kUnableToReadAsJSON = 1,
kMessageDoesNotMatchSchema = 2,
};
struct WifiCredentials {
string ssid;
WifiSecurityType security_type;
bool is_hidden;
string? password;
};
struct GetAssertionResponse {
enum GetAssertionStatus {
kSuccess = 0,
kCtapResponseError = 1,
kCborDecoderError = 2,
kMessagePayloadParseError = 3,
kUnknownError = 4,
};
GetAssertionStatus status;
uint8 ctap_device_response_code;
int64 cbor_decoder_error;
string email;
string credential_id;
// The following fields are passed directly to GAIA with
// no further processing in Chromium. The raw byte values
// will be opaque and will not be parsed within the
// browser process.
array<uint8> auth_data;
array<uint8> signature;
};