Skip to content
API Documentation
BastionGuard™
encryption_support.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "disk_reader.hpp"
4#include "models.hpp"
5
6#include <string>
7#include <vector>
8
10 std::string container_type;
11 std::string source_path;
12 uint64_t source_offset {0};
13 std::string mapped_path;
14 std::string loop_path;
15 std::string mapper_name;
16 std::string helper_mount_dir;
17 std::string helper_loop_path;
18 bool uses_dislocker {false};
19
20 void cleanup(std::vector<std::string>& logs);
21};
22
24public:
25 static std::vector<ScanResult> detect_encrypted_volumes(DiskReader& reader,
26 const std::vector<ScanResult>& seed_results,
27 std::vector<std::string>& logs);
28
29 static bool export_encrypted_metadata(DiskReader& reader,
30 const ScanResult& result,
31 const std::string& output_dir,
32 std::vector<std::string>& logs,
33 std::string& error);
34
35 static bool try_unlock_volume(const std::string& source_path,
36 const ScanResult& result,
37 UnlockSession& session,
38 std::vector<std::string>& logs,
39 std::string& error);
40};
static std::vector< ScanResult > detect_encrypted_volumes(DiskReader &reader, const std::vector< ScanResult > &seed_results, std::vector< std::string > &logs)
static bool try_unlock_volume(const std::string &source_path, const ScanResult &result, UnlockSession &session, std::vector< std::string > &logs, std::string &error)
static bool export_encrypted_metadata(DiskReader &reader, const ScanResult &result, const std::string &output_dir, std::vector< std::string > &logs, std::string &error)
std::string source_path
void cleanup(std::vector< std::string > &logs)
std::string mapped_path
std::string helper_loop_path
std::string container_type
std::string helper_mount_dir
std::string mapper_name