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

Commit 8c1642ad authored by Brian Carlstrom's avatar Brian Carlstrom Committed by Gerrit Code Review
Browse files

Merge "Remove obsolete prunedexcache"

parents f6e1611a 5f727f86
Loading
Loading
Loading
Loading
+0 −47
Original line number Diff line number Diff line
@@ -1531,50 +1531,3 @@ int restorecon_data(const char* pkgName, const char* seinfo, uid_t uid)
    return ret;
}
static int prune_dex_exclusion_predicate(const char *file_name, const int is_dir)
{
    // Exclude all directories. The top level command will be
    // given a list of ISA specific directories that are assumed
    // to be flat.
    if (is_dir) {
      return 1;
    }


    // Don't exclude regular files that start with the list
    // of prefixes.
    static const char data_app_prefix[] = "data@app@";
    static const char data_priv_app_prefix[] = "data@priv-app@";
    if (!strncmp(file_name, data_app_prefix, sizeof(data_app_prefix) - 1) ||
        !strncmp(file_name, data_priv_app_prefix, sizeof(data_priv_app_prefix) - 1)) {
      return 0;
    }

    // Exclude all regular files that don't start with the prefix "data@app@" or
    // "data@priv-app@".
    return 1;
}

int prune_dex_cache(const char* subdir) {
    // "." is handled as a special case, and refers to
    // DALVIK_CACHE_PREFIX (usually /data/dalvik-cache).
    const bool is_dalvik_cache_root = !strcmp(subdir, ".");

    // Don't allow the path to contain "." or ".." except for the
    // special case above. This is much stricter than we need to be,
    // but there's no good reason to support them.
    if (strchr(subdir, '.' ) != NULL && !is_dalvik_cache_root) {
        return -1;
    }

    if (!is_dalvik_cache_root) {
        char full_path[PKG_PATH_MAX];
        snprintf(full_path, sizeof(full_path), "%s%s", DALVIK_CACHE_PREFIX, subdir);
        return delete_dir_contents(full_path, 0, &prune_dex_exclusion_predicate);
    }


    // When subdir == ".", clean the contents of the top level
    // dalvik-cache directory.
    return delete_dir_contents(DALVIK_CACHE_PREFIX, 0, &prune_dex_exclusion_predicate);
}
+0 −7
Original line number Diff line number Diff line
@@ -140,12 +140,6 @@ static int do_restorecon_data(char **arg, char reply[REPLY_MAX] __attribute__((u
                             /* pkgName, seinfo, uid*/
}

static int do_prune_dex_cache(char **arg __attribute__((unused)),
                              char reply[REPLY_MAX] __attribute__((unused)))
{
    return prune_dex_cache(arg[0] /* subdirectory name */);
}

static int do_patchoat(char **arg, char reply[REPLY_MAX]) {
    /* apk_path, uid, is_public, pkgname, instruction_set, vm_safe_mode, should_relocate */
    return dexopt(arg[0], atoi(arg[1]), atoi(arg[2]), arg[3], arg[4], 0, 1);
@@ -177,7 +171,6 @@ struct cmdinfo cmds[] = {
    { "rmuser",               1, do_rm_user },
    { "idmap",                3, do_idmap },
    { "restorecondata",       3, do_restorecon_data },
    { "prunedexcache",        1, do_prune_dex_cache },
    { "patchoat",             5, do_patchoat },
};

+0 −1
Original line number Diff line number Diff line
@@ -220,4 +220,3 @@ int movefiles();
int linklib(const char* target, const char* source, int userId);
int idmap(const char *target_path, const char *overlay_path, uid_t uid);
int restorecon_data();
int prune_dex_cache(const char* subdir);