2020-09-09 20:02:40 +08:00
|
|
|
#ifndef SAPI_LIBARCHIVE_HELPERS_H
|
|
|
|
#define SAPI_LIBARCHIVE_HELPERS_H
|
|
|
|
|
2020-09-14 22:39:16 +08:00
|
|
|
#include <glog/logging.h>
|
2020-09-16 23:57:31 +08:00
|
|
|
|
|
|
|
#include "libarchive_sapi.sapi.h"
|
2020-09-09 20:02:40 +08:00
|
|
|
#include "sandboxed_api/sandbox2/util.h"
|
2020-09-14 22:39:16 +08:00
|
|
|
#include "sandboxed_api/sandbox2/util/fileops.h"
|
|
|
|
#include "sandboxed_api/sandbox2/util/path.h"
|
2020-09-21 21:30:43 +08:00
|
|
|
#include "sandboxed_api/sandbox2/util/temp_file.h"
|
2020-09-09 20:02:40 +08:00
|
|
|
|
|
|
|
// Used to convert the paths provided as arguments for the program
|
|
|
|
// (the paths used) to an array of absolute paths. This allows the user
|
|
|
|
// to use either relative or absolute paths
|
2020-09-21 21:30:43 +08:00
|
|
|
std::vector<std::string> MakeAbsolutePathsVec(const char *argv[]);
|
2020-09-14 22:39:16 +08:00
|
|
|
|
2020-09-16 23:57:31 +08:00
|
|
|
// Converts only one string to an absolute path by prepending the current
|
|
|
|
// working directory to the relative path
|
2020-09-21 21:30:43 +08:00
|
|
|
std::string MakeAbsolutePathAtCWD(const std::string &path);
|
2020-09-14 22:39:16 +08:00
|
|
|
|
2020-09-16 23:57:31 +08:00
|
|
|
// Calls the archive_error_string and returns the mesage after it was
|
|
|
|
// transferred to the client process. std::string GetErrorString(sapi::v::Ptr
|
|
|
|
// *archive, LibarchiveSandbox &sandbox, LibarchiveApi &api);
|
2020-09-14 22:39:16 +08:00
|
|
|
|
2020-09-16 23:57:31 +08:00
|
|
|
std::string CheckStatusAndGetString(const sapi::StatusOr<char *> &status,
|
|
|
|
LibarchiveSandbox &sandbox);
|
2020-09-14 22:39:16 +08:00
|
|
|
|
2020-09-16 23:57:31 +08:00
|
|
|
// std::string CallFunctionAndGetString(sapi::v::Ptr *archive, LibarchiveSandbox
|
|
|
|
// &sandbox, LibarchiveApi *api, sapi::StatusOr<char *>
|
|
|
|
// (LibarchiveApi::*func)(sapi::v::Ptr *));
|
2020-09-09 20:02:40 +08:00
|
|
|
|
2020-09-21 21:30:43 +08:00
|
|
|
std::string CreateTempDirAtCWD();
|
|
|
|
|
2020-09-09 20:02:40 +08:00
|
|
|
#endif // SAPI_LIBARCHIVE_HELPERS_H
|