1adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh/*
2adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * Copyright (C) 2009 The Android Open Source Project
3adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh *
4adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * Licensed under the Apache License, Version 2.0 (the "License");
5adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * you may not use this file except in compliance with the License.
6adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * You may obtain a copy of the License at
7adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh *
8adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh *      http://www.apache.org/licenses/LICENSE-2.0
9adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh *
10adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * Unless required by applicable law or agreed to in writing, software
11adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * distributed under the License is distributed on an "AS IS" BASIS,
12adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * See the License for the specific language governing permissions and
14adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh * limitations under the License.
15adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh */
16adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh
17adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh#ifndef __KEYSTORE_H__
18adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh#define __KEYSTORE_H__
19adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh
205cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom// note state values overlap with ResponseCode for the purposes of the state() API
215cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstromenum State {
225cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    STATE_NO_ERROR      = 1,
235cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    STATE_LOCKED        = 2,
245cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    STATE_UNINITIALIZED = 3,
255cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom};
265cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom
275cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstromenum ResponseCode {
285cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    NO_ERROR          =  STATE_NO_ERROR, // 1
295cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    LOCKED            =  STATE_LOCKED, // 2
305cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    UNINITIALIZED     =  STATE_UNINITIALIZED, // 3
31adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    SYSTEM_ERROR      =  4,
32adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    PROTOCOL_ERROR    =  5,
33adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    PERMISSION_DENIED =  6,
34adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    KEY_NOT_FOUND     =  7,
35adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    VALUE_CORRUPTED   =  8,
36adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh    UNDEFINED_ACTION  =  9,
375cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    WRONG_PASSWORD_0  = 10,
385cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    WRONG_PASSWORD_1  = 11,
395cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    WRONG_PASSWORD_2  = 12,
405cfee3fabb3482c6a6df1c8b6f21e843cf214527Brian Carlstrom    WRONG_PASSWORD_3  = 13, // MAX_RETRY = 4
41adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh};
42adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh
43adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07Chia-chi Yeh#endif
44