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

Commit 5f727f86 authored by Alex Light's avatar Alex Light
Browse files

Remove obsolete prunedexcache

Bug: 16875245

Change-Id: I06e14c405aa4af295795982c1d236be3cb00e893
parent f6e1611a
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);