Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b63d94be authored by Yu Shan's avatar Yu Shan
Browse files

Change user flags to be bit map of flags.

Remove UserFlags enum. Change the flag field in UserInfo to be
bitmap of user flags.

Test: None
Bug: 202520478
Change-Id: Ia1837dde783b92dde830ee1244d38dfb684d546a
parent 4c46fb83
Loading
Loading
Loading
Loading
+0 −44
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE.                          //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
//     the interface (from the latest frozen version), the build system will
//     prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.automotive.vehicle;
@Backing(type="int") @VintfStability
enum UserFlags {
  NONE = 0,
  SYSTEM = 1,
  GUEST = 2,
  EPHEMERAL = 4,
  ADMIN = 8,
  DISABLED = 16,
  PROFILE = 32,
}
+7 −1
Original line number Diff line number Diff line
@@ -35,5 +35,11 @@ package android.hardware.automotive.vehicle;
@VintfStability
parcelable UserInfo {
  int userId = 0;
  android.hardware.automotive.vehicle.UserFlags flags = android.hardware.automotive.vehicle.UserFlags.NONE;
  int flags;
  const int USER_FLAG_SYSTEM = 1;
  const int USER_FLAG_GUEST = 2;
  const int USER_FLAG_EPHEMERAL = 4;
  const int USER_FLAG_ADMIN = 8;
  const int USER_FLAG_DISABLED = 16;
  const int USER_FLAG_PROFILE = 32;
}
+0 −55
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.automotive.vehicle;

/**
 * Flags used to define the characteristics of an Android user.
 */
@VintfStability
@Backing(type="int")
enum UserFlags {
    /**
     * No flags.
     */
    NONE = 0x0,
    /**
     * System user.
     * On automotive, that user is always running, although never on foreground (except during
     * boot or exceptional circumstances).
     */
    SYSTEM = 0x01,
    /**
     * Guest users have restrictions.
     */
    GUEST = 0x02,
    /**
     * Ephemeral users have non-persistent state.
     */
    EPHEMERAL = 0x04,
    /**
     * Admin users have additional privileges such as permission to create other users.
     */
    ADMIN = 0x08,
    /**
     * Disabled users are marked for deletion.
     */
    DISABLED = 0x10,
    /**
     * Profile user is a profile of another user.
     */
    PROFILE = 0x20,
}
+34 −3
Original line number Diff line number Diff line
@@ -16,13 +16,44 @@

package android.hardware.automotive.vehicle;

import android.hardware.automotive.vehicle.UserFlags;

/**
 * Information about a specific Android user.
 */
@VintfStability
parcelable UserInfo {
    /**
     * System user.
     *
     * On automotive, that user is always running, although never on foreground (except during
     * boot or exceptional circumstances).
     */
    const int USER_FLAG_SYSTEM = 0x01;
    /**
     * Guest users have restrictions.
     */
    const int USER_FLAG_GUEST = 0x02;
    /**
     * Ephemeral users have non-persistent state.
     */
    const int USER_FLAG_EPHEMERAL = 0x04;
    /**
     * Admin users have additional privileges such as permission to create other users.
     */
    const int USER_FLAG_ADMIN = 0x08;
    /**
     * Disabled users are marked for deletion.
     */
    const int USER_FLAG_DISABLED = 0x10;
    /**
     * Profile user is a profile of another user.
     */
    const int USER_FLAG_PROFILE = 0x20;
    /*
     * The user ID.
     */
    int userId = 0;
    UserFlags flags = UserFlags.NONE;
    /*
     * Bitmask for the user flags defined above (USER_FLAG_*).
     */
    int flags;
}