diff options
author | Chia-chi Yeh <chiachi@android.com> | 2010-03-09 09:41:32 +0800 |
---|---|---|
committer | Chia-chi Yeh <chiachi@android.com> | 2010-03-09 09:44:07 +0800 |
commit | 4165dd21592c958bacc97043d56b1ea914ab94c9 (patch) | |
tree | a0be4daa704d767d32fe77e293479d96a009bbe8 /cmds/keystore/keystore.c | |
parent | c6120193efebf426186b24520d70ec3e4a4aeadf (diff) | |
download | frameworks_base-4165dd21592c958bacc97043d56b1ea914ab94c9.zip frameworks_base-4165dd21592c958bacc97043d56b1ea914ab94c9.tar.gz frameworks_base-4165dd21592c958bacc97043d56b1ea914ab94c9.tar.bz2 |
keystore: add AID_ROOT into the user table.
Change-Id: I4b9cf24d75ca79583d7913bbb2c33745a2316cde
Diffstat (limited to 'cmds/keystore/keystore.c')
-rw-r--r-- | cmds/keystore/keystore.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/cmds/keystore/keystore.c b/cmds/keystore/keystore.c index 4426874..60cc521 100644 --- a/cmds/keystore/keystore.c +++ b/cmds/keystore/keystore.c @@ -46,7 +46,7 @@ * user-defined password. To keep things simple, buffers are always larger than * the maximum space we needed, so boundary checks on buffers are omitted. */ -#define KEY_SIZE 120 +#define KEY_SIZE ((NAME_MAX - 15) / 2) #define VALUE_SIZE 32768 #define PASSWORD_SIZE VALUE_SIZE @@ -442,10 +442,11 @@ static struct user { uid_t euid; uint32_t perms; } users[] = { - {AID_SYSTEM, 0, ~GET}, + {AID_SYSTEM, ~0, ~GET}, {AID_VPN, AID_SYSTEM, GET}, {AID_WIFI, AID_SYSTEM, GET}, - {0, 0, TEST | GET | INSERT | DELETE | EXIST | SAW}, + {AID_ROOT, AID_SYSTEM, GET}, + {~0, ~0, TEST | GET | INSERT | DELETE | EXIST | SAW}, }; static int8_t process(int8_t code) { @@ -453,7 +454,7 @@ static int8_t process(int8_t code) { struct action *action = actions; int i; - while (user->uid && user->uid != uid) { + while (~user->uid && user->uid != uid) { ++user; } while (action->code && action->code != code) { @@ -468,7 +469,7 @@ static int8_t process(int8_t code) { if (action->state && action->state != state) { return state; } - if (user->euid) { + if (~user->euid) { uid = user->euid; } for (i = 0; i < MAX_PARAM && action->lengths[i]; ++i) { |