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

Commit 91404d94 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by android-build-merger
Browse files

Merge \"Only restorecon CE storage after unlocked.\" into nyc-mr1-dev

am: 96f387e8

Change-Id: I3a1c31334d32e7bdff8e05558356d2833fcfb831
parents 2722208d 96f387e8
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -861,9 +861,13 @@ static int do_restorecon_recursive(const std::vector<std::string>& args) {
    int ret = 0;

    for (auto it = std::next(args.begin()); it != args.end(); ++it) {
        if (restorecon_recursive(it->c_str()) < 0)
        /* The contents of CE paths are encrypted on FBE devices until user
         * credentials are presented (filenames inside are mangled), so we need
         * to delay restorecon of those until vold explicitly requests it. */
        if (restorecon_recursive_skipce(it->c_str()) < 0) {
            ret = -errno;
        }
    }
    return ret;
}

+6 −0
Original line number Diff line number Diff line
@@ -362,6 +362,12 @@ int restorecon_recursive(const char* pathname)
    return selinux_android_restorecon(pathname, SELINUX_ANDROID_RESTORECON_RECURSE);
}

int restorecon_recursive_skipce(const char* pathname)
{
    return selinux_android_restorecon(pathname,
            SELINUX_ANDROID_RESTORECON_RECURSE | SELINUX_ANDROID_RESTORECON_SKIPCE);
}

/*
 * Writes hex_len hex characters (1/2 byte) to hex from bytes.
 */
+1 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ void import_kernel_cmdline(bool in_qemu,
int make_dir(const char *path, mode_t mode);
int restorecon(const char *pathname);
int restorecon_recursive(const char *pathname);
int restorecon_recursive_skipce(const char *pathname);
std::string bytes_to_hex(const uint8_t *bytes, size_t bytes_len);
bool is_dir(const char* pathname);
bool expand_props(const std::string& src, std::string* dst);