1890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// Copyright 2014 The Android Open Source Project 2890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// 3890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// This software is licensed under the terms of the GNU General Public 4890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// License version 2, as published by the Free Software Foundation, and 5890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// may be copied, distributed, and modified under those terms. 6890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// 7890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// This program is distributed in the hope that it will be useful, 8890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// but WITHOUT ANY WARRANTY; without even the implied warranty of 9890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// GNU General Public License for more details. 11890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 12890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner#ifndef ANDROID_FILESYSTEMS_EXT4_UTILS_H 13890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner#define ANDROID_FILESYSTEMS_EXT4_UTILS_H 14890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 15890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner#include "android/utils/compiler.h" 16890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 17890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner#include <stdbool.h> 18dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner#include <inttypes.h> 19890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 20890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' TurnerANDROID_BEGIN_HEADER 21890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 22dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner// Create a new empty EXT4 partition image file at |filePath| 23dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner// of |size| bytes. |mountPoint| is the name of the corresponding 24dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner// mount point, e.g. 'cache' for the cache partition. 25dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner// Returns 0 on success, or -errno on failure. 26dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turnerint android_createEmptyExt4Image(const char *filePath, 27dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner uint64_t size, 28dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner const char *mountpoint); 29dddfa6426c2a3385aea685a200a7a4df1932b207David 'Digit' Turner 30890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner// Returns true iff the file at |filePath| is an actual EXT4 partition image. 31890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turnerbool android_pathIsExt4PartitionImage(const char* filePath); 32890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 33890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 34890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' TurnerANDROID_END_HEADER 35890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner 36890f46464b0a35cbee882a5d62bd86a49879cabcDavid 'Digit' Turner#endif // ANDROID_FILESYSTEMS_EXT4_UTILS_H 37