summaryrefslogtreecommitdiff
path: root/vbmeta_tools/vbmake.cc
diff options
context:
space:
mode:
Diffstat (limited to 'vbmeta_tools/vbmake.cc')
-rw-r--r--vbmeta_tools/vbmake.cc96
1 files changed, 0 insertions, 96 deletions
diff --git a/vbmeta_tools/vbmake.cc b/vbmeta_tools/vbmake.cc
deleted file mode 100644
index 571b2ad2..00000000
--- a/vbmeta_tools/vbmake.cc
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2019 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.
- */
-
-#include <getopt.h>
-#include <sysexits.h>
-
-#include <libvbmeta/libvbmeta.h>
-
-using android::fs_mgr::WriteToSuperVBMetaFile;
-
-/* Prints program usage to |where|. */
-static int usage(int /* argc */, char* argv[]) {
- fprintf(stderr,
- "%s - command-line tool for creating Super VBMeta Image.\n"
- "\n"
- "Usage:\n"
- " %s [options]\n"
- "\n"
- "Required options:\n"
- " -o,--output=FILE Output file.\n"
- "\n"
- "Optional:\n"
- " -i,--image=VBMETA_NAME=FILE include the given vbmeta file as\n"
- " initial data for the super vbmeta.\n",
- argv[0], argv[0]);
- return EX_USAGE;
-}
-
-int main(int argc, char* argv[]) {
- struct option options[] = {
- { "help", no_argument, nullptr, 'h' },
- { "image", required_argument, nullptr, 'i' },
- { "output", required_argument, nullptr, 'o' },
- { nullptr, 0, nullptr, 0 },
- };
-
- std::string output_path;
- std::map<std::string, std::string> images;
-
- int rv;
- while ((rv = getopt_long_only(argc, argv, "i:o:", options, NULL)) != -1) {
- switch (rv) {
- case 'h':
- return usage(argc, argv);
- case 'i':
- {
- char* separator = strchr(optarg, '=');
- if (!separator || separator == optarg || !strlen(separator + 1)) {
- fprintf(stderr, "Expected VBMETA_NAME=FILE.\n");
- return EX_USAGE;
- }
- *separator = '\0';
-
- std::string vbmeta_name(optarg);
- std::string file(separator + 1);
- images[vbmeta_name] = file;
- break;
- }
- case 'o':
- output_path = optarg;
- break;
- default:
- break;
- }
- }
-
- // Check for empty arguments so we can print a more helpful message rather
- // than error on each individual missing argument.
- if (optind == 1) {
- return usage(argc, argv);
- }
-
- if (output_path.empty()) {
- fprintf(stderr, "--output must specify a valid path.\n");
- return EX_USAGE;
- }
-
- if (!WriteToSuperVBMetaFile(output_path.c_str(), images)) {
- return EX_CANTCREAT;
- }
-
- return EX_OK;
-}