Switch to new D-Bus interface
Now that the eStoraged interface is in phosphor-dbus-interfaces, we can
remove the yaml files from this repo and switch to the new interface in
phosphor-dbus-interfaces. Note that the new interface is slightly
different. Some functions have different arguments, and the
eStoraged-specific errors were removed.
Also, the new interface allows for the caller to specify the filesystem
type, but for now, only ext4 is supported.
Tested:
$ /usr/bin/eStoraged -b /dev/mmcblk0 &
$ busctl call xyz.openbmc_project.eStoraged.mmcblk0 \
/xyz/openbmc_project/storage/mmcblk0 \
xyz.openbmc_project.Inventory.Item.Volume FormatLuks ays 3 1 2 3 \
xyz.openbmc_project.Inventory.Item.Volume.FilesystemType.ext4
$ busctl call xyz.openbmc_project.eStoraged.mmcblk0 \
/xyz/openbmc_project/storage/mmcblk0 \
xyz.openbmc_project.Inventory.Item.Volume Lock
$ busctl call xyz.openbmc_project.eStoraged.mmcblk0 \
/xyz/openbmc_project/storage/mmcblk0 \
xyz.openbmc_project.Inventory.Item.Volume Unlock ay 3 1 2 3
$ busctl call xyz.openbmc_project.eStoraged.mmcblk0 \
/xyz/openbmc_project/storage/mmcblk0 \
xyz.openbmc_project.Inventory.Item.Volume Erase s \
xyz.openbmc_project.Inventory.Item.Volume.EraseMethod.VerifyGeometry
Signed-off-by: John Wedig <johnwedig@google.com>
Change-Id: I5477b313ac5342409e2cf53ca70259c17da6269c
diff --git a/include/estoraged.hpp b/include/estoraged.hpp
index 3a18416..d77c7f9 100644
--- a/include/estoraged.hpp
+++ b/include/estoraged.hpp
@@ -8,7 +8,7 @@
#include <sdbusplus/bus.hpp>
#include <sdbusplus/exception.hpp>
#include <sdbusplus/server/object.hpp>
-#include <xyz/openbmc_project/eStoraged/server.hpp>
+#include <xyz/openbmc_project/Inventory/Item/Volume/server.hpp>
#include <filesystem>
#include <memory>
@@ -19,7 +19,7 @@
namespace estoraged
{
using eStoragedInherit = sdbusplus::server::object_t<
- sdbusplus::xyz::openbmc_project::server::eStoraged>;
+ sdbusplus::xyz::openbmc_project::Inventory::Item::server::Volume>;
using estoraged::Cryptsetup;
using estoraged::Filesystem;
@@ -55,21 +55,20 @@
/** @brief Format the LUKS encrypted device and create empty filesystem.
*
* @param[in] password - password to set for the LUKS device.
+ * @param[in] type - filesystem type, e.g. ext4
*/
- void format(std::vector<uint8_t> password) override;
+ void formatLuks(std::vector<uint8_t> password,
+ FilesystemType type) override;
/** @brief Erase the contents of the storage device.
*
- * @param[in] password - password for the LUKS device.
* @param[in] eraseType - type of erase operation.
*/
- void erase(std::vector<uint8_t> password, EraseMethod eraseType) override;
+ void erase(EraseMethod eraseType) override;
/** @brief Unmount filesystem and lock the LUKS device.
- *
- * @param[in] password - password for the LUKS device.
*/
- void lock(std::vector<uint8_t> password) override;
+ void lock() override;
/** @brief Unlock device and mount the filesystem.
*
diff --git a/meson.build b/meson.build
index 1a61027..7282cf3 100644
--- a/meson.build
+++ b/meson.build
@@ -13,5 +13,4 @@
eStoraged_dbus_headers = include_directories('.')
subdir('include')
-subdir('xyz/openbmc_project/eStoraged')
subdir('src')
diff --git a/src/erase/erase.cpp b/src/erase/erase.cpp
index 3b6ce17..5de96d6 100644
--- a/src/erase/erase.cpp
+++ b/src/erase/erase.cpp
@@ -6,9 +6,9 @@
#include <stdplus/fd/create.hpp>
#include <stdplus/fd/managed.hpp>
#include <stdplus/handle/managed.hpp>
-#include <xyz/openbmc_project/eStoraged/error.hpp>
+#include <xyz/openbmc_project/Common/error.hpp>
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EraseError;
+using sdbusplus::xyz::openbmc_project::Common::Error::InternalFailure;
using stdplus::fd::ManagedFd;
uint64_t Erase::findSizeOfBlockDevice()
@@ -27,7 +27,7 @@
lg2::error("erase unable to open blockdev", "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.DriveEraseFailure"),
"REDFISH_MESSAGE_ARGS", std::to_string(fd.get()));
- throw EraseError();
+ throw InternalFailure();
}
return bytes;
}
diff --git a/src/erase/meson.build b/src/erase/meson.build
index 3c90ab9..6aaf3a3 100644
--- a/src/erase/meson.build
+++ b/src/erase/meson.build
@@ -4,7 +4,10 @@
'erase.cpp',
include_directories : eStoraged_headers,
implicit_include_directories: false,
- dependencies: [eStoraged_dbus, dependency('stdplus'),],
+ dependencies: [
+ dependency('phosphor-dbus-interfaces'),
+ dependency('stdplus'),
+ ],
)
libeStoragedErase_dep = declare_dependency(
diff --git a/src/erase/verifyDriveGeometry.cpp b/src/erase/verifyDriveGeometry.cpp
index 2996912..ea6c76f 100644
--- a/src/erase/verifyDriveGeometry.cpp
+++ b/src/erase/verifyDriveGeometry.cpp
@@ -3,11 +3,11 @@
#include "estoraged_conf.hpp"
#include <phosphor-logging/lg2.hpp>
-#include <xyz/openbmc_project/eStoraged/error.hpp>
+#include <xyz/openbmc_project/Common/error.hpp>
#include <string>
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EraseError;
+using sdbusplus::xyz::openbmc_project::Common::Error::InternalFailure;
void VerifyDriveGeometry::geometryOkay(uint64_t bytes)
{
@@ -18,7 +18,7 @@
"REDFISH_MESSAGE_ARGS",
std::to_string(bytes) + ">" +
std::to_string(ERASE_MAX_GEOMETRY));
- throw EraseError();
+ throw InternalFailure();
}
else if (bytes < ERASE_MIN_GEOMETRY)
{
@@ -27,7 +27,7 @@
std::string("OpenBMC.0.1.DriveEraseFailure"),
"REDFISH_MESSAGE_ARGS",
std::to_string(bytes) + "<" + std::to_string(ERASE_MIN_GEOMETRY));
- throw EraseError();
+ throw InternalFailure();
}
else
{
diff --git a/src/estoraged.cpp b/src/estoraged.cpp
index 18e4248..91a7f12 100644
--- a/src/estoraged.cpp
+++ b/src/estoraged.cpp
@@ -9,32 +9,38 @@
#include <stdlib.h>
#include <phosphor-logging/lg2.hpp>
-#include <xyz/openbmc_project/eStoraged/error.hpp>
+#include <xyz/openbmc_project/Common/error.hpp>
#include <filesystem>
#include <iostream>
#include <string_view>
#include <vector>
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EraseError;
-
namespace estoraged
{
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EncryptionError;
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::FilesystemError;
+using sdbusplus::xyz::openbmc_project::Common::Error::InternalFailure;
+using sdbusplus::xyz::openbmc_project::Common::Error::ResourceNotFound;
+using sdbusplus::xyz::openbmc_project::Common::Error::UnsupportedRequest;
-void eStoraged::format(std::vector<uint8_t> password)
+void eStoraged::formatLuks(std::vector<uint8_t> password, FilesystemType type)
{
std::string msg = "OpenBMC.0.1.DriveFormat";
lg2::info("Starting format", "REDFISH_MESSAGE_ID", msg);
+ if (type != FilesystemType::ext4)
+ {
+ lg2::error("Only ext4 filesystems are supported currently",
+ "REDFISH_MESSAGE_ID", std::string("OpenBMC.0.1.FormatFail"));
+ throw UnsupportedRequest();
+ }
+
CryptHandle cryptHandle(devPath.c_str());
if (cryptHandle.get() == nullptr)
{
lg2::error("Failed to initialize crypt device", "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.FormatFail"));
- throw EncryptionError();
+ throw ResourceNotFound();
}
formatLuksDev(cryptHandle.get(), password);
@@ -44,7 +50,7 @@
mountFilesystem();
}
-void eStoraged::erase(std::vector<uint8_t>, EraseMethod inEraseMethod)
+void eStoraged::erase(EraseMethod inEraseMethod)
{
std::cerr << "Erasing encrypted eMMC" << std::endl;
lg2::info("Starting erase", "REDFISH_MESSAGE_ID",
@@ -89,7 +95,7 @@
}
}
-void eStoraged::lock(std::vector<uint8_t>)
+void eStoraged::lock()
{
std::string msg = "OpenBMC.0.1.DriveLock";
lg2::info("Starting lock", "REDFISH_MESSAGE_ID", msg);
@@ -108,7 +114,7 @@
{
lg2::error("Failed to initialize crypt device", "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.UnlockFail"));
- throw EncryptionError();
+ throw ResourceNotFound();
}
activateLuksDev(cryptHandle.get(), password);
@@ -145,7 +151,7 @@
{
lg2::error("Failed to create volume key", "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.FormatLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
/* Format the LUKS encrypted device. */
int retval =
@@ -157,7 +163,7 @@
lg2::error("Failed to format encrypted device: {RETVAL}", "RETVAL",
retval, "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.FormatLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
/* Device is now encrypted. */
@@ -172,7 +178,7 @@
{
lg2::error("Failed to set encryption password", "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.FormatLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
lg2::info("Encrypted device {DEV} successfully formatted", "DEV", devPath,
@@ -192,7 +198,7 @@
lg2::error("Failed to load LUKS header: {RETVAL}", "RETVAL", retval,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.ActivateLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
retval = cryptIface->cryptActivateByPassphrase(
@@ -204,7 +210,7 @@
lg2::error("Failed to activate LUKS dev: {RETVAL}", "RETVAL", retval,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.ActivateLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
/* Device is now unlocked. */
@@ -224,7 +230,7 @@
lg2::error("Failed to create filesystem: {RETVAL}", "RETVAL", retval,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.CreateFilesystemFail"));
- throw FilesystemError();
+ throw InternalFailure();
}
lg2::info("Successfully created filesystem for /dev/mapper/{CONTAINER}",
"CONTAINER", containerName, "REDFISH_MESSAGE_ID",
@@ -240,7 +246,7 @@
lg2::error("Failed to create mount point: {DIR}", "DIR", mountPoint,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.MountFilesystemFail"));
- throw FilesystemError();
+ throw InternalFailure();
}
/* Run the command to mount the filesystem. */
@@ -260,7 +266,7 @@
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.MountFilesystemFail"));
}
- throw FilesystemError();
+ throw InternalFailure();
}
lg2::info("Successfully mounted filesystem at {DIR}", "DIR", mountPoint,
@@ -276,7 +282,7 @@
lg2::error("Failed to unmount filesystem: {RETVAL}", "RETVAL", retval,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.UnmountFilesystemFail"));
- throw FilesystemError();
+ throw InternalFailure();
}
/* Remove the mount point. */
@@ -286,7 +292,7 @@
lg2::error("Failed to remove mount point {DIR}", "DIR", mountPoint,
"REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.UnmountFilesystemFail"));
- throw FilesystemError();
+ throw InternalFailure();
}
lg2::info("Successfully unmounted filesystem at {DIR}", "DIR", mountPoint,
@@ -306,7 +312,7 @@
lg2::error("Failed to deactivate crypt device: {RETVAL}", "RETVAL",
retval, "REDFISH_MESSAGE_ID",
std::string("OpenBMC.0.1.DeactivateLuksDevFail"));
- throw EncryptionError();
+ throw InternalFailure();
}
/* Device is now locked. */
diff --git a/src/meson.build b/src/meson.build
index 1390536..a85b3bc 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -7,10 +7,10 @@
fallback: ['phosphor-logging',
'phosphor_logging_dep'],
),
- eStoraged_dbus,
dependency('openssl'),
dependency('libcryptsetup'),
dependency('stdplus'),
+ dependency('phosphor-dbus-interfaces'),
]
libeStoraged_lib = static_library(
diff --git a/src/test/erase/verifyGeometry_test.cpp b/src/test/erase/verifyGeometry_test.cpp
index 1731e75..de4d3fa 100644
--- a/src/test/erase/verifyGeometry_test.cpp
+++ b/src/test/erase/verifyGeometry_test.cpp
@@ -1,23 +1,26 @@
#include "estoraged_conf.hpp"
#include "verifyDriveGeometry.hpp"
-#include <xyz/openbmc_project/eStoraged/error.hpp>
+#include <xyz/openbmc_project/Common/error.hpp>
#include <gmock/gmock-matchers.h>
#include <gmock/gmock.h>
#include <gtest/gtest.h>
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EraseError;
+
+using sdbusplus::xyz::openbmc_project::Common::Error::InternalFailure;
TEST(VerifyGeometry, TooBigFail)
{
VerifyDriveGeometry maxVerify("");
- EXPECT_THROW(maxVerify.geometryOkay(ERASE_MAX_GEOMETRY + 1), EraseError);
+ EXPECT_THROW(maxVerify.geometryOkay(ERASE_MAX_GEOMETRY + 1),
+ InternalFailure);
}
TEST(VerifyGeometry, TooSmallFail)
{
VerifyDriveGeometry minVerify("");
- EXPECT_THROW(minVerify.geometryOkay(ERASE_MIN_GEOMETRY - 1), EraseError);
+ EXPECT_THROW(minVerify.geometryOkay(ERASE_MIN_GEOMETRY - 1),
+ InternalFailure);
}
TEST(VerifyGeometry, pass)
diff --git a/src/test/estoraged_test.cpp b/src/test/estoraged_test.cpp
index f293ffc..6b93a88 100644
--- a/src/test/estoraged_test.cpp
+++ b/src/test/estoraged_test.cpp
@@ -7,7 +7,7 @@
#include <sdbusplus/bus.hpp>
#include <sdbusplus/test/sdbus_mock.hpp>
-#include <xyz/openbmc_project/eStoraged/error.hpp>
+#include <xyz/openbmc_project/Common/error.hpp>
#include <exception>
#include <filesystem>
@@ -72,8 +72,9 @@
(struct crypt_device * cd, const char* name), (override));
};
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::EncryptionError;
-using sdbusplus::xyz::openbmc_project::eStoraged::Error::FilesystemError;
+using sdbusplus::xyz::openbmc_project::Common::Error::InternalFailure;
+using sdbusplus::xyz::openbmc_project::Common::Error::ResourceNotFound;
+using sdbusplus::xyz::openbmc_project::Inventory::Item::server::Volume;
using std::filesystem::path;
using ::testing::_;
using ::testing::ContainsRegex;
@@ -96,7 +97,8 @@
std::ofstream testFile;
std::unique_ptr<estoraged::eStoraged> esObject;
static constexpr auto TEST_PATH = "/test/openbmc_project/storage/test_dev";
- static constexpr auto ESTORAGED_INTERFACE = "xyz.openbmc_project.eStoraged";
+ static constexpr auto ESTORAGED_INTERFACE =
+ "xyz.openbmc_project.Inventory.Item.Volume";
sdbusplus::bus::bus bus;
std::string passwordString;
std::vector<uint8_t> password;
@@ -188,10 +190,10 @@
EXPECT_CALL(*mockCryptIface, cryptDeactivate(_, _)).Times(1);
/* Format the encrypted device. */
- esObject->format(password);
+ esObject->formatLuks(password, Volume::FilesystemType::ext4);
EXPECT_FALSE(esObject->isLocked());
- esObject->lock(password);
+ esObject->lock();
EXPECT_TRUE(esObject->isLocked());
}
@@ -201,7 +203,8 @@
/* Delete the test file. */
EXPECT_EQ(0, unlink(testFileName));
- EXPECT_THROW(esObject->format(password), EncryptionError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ ResourceNotFound);
EXPECT_FALSE(esObject->isLocked());
/* Create the test file again, so that the TearDown function works. */
@@ -216,7 +219,8 @@
EXPECT_CALL(*mockCryptIface, cryptFormat(_, _, _, _, _, _, _, _))
.WillOnce(Return(-1));
- EXPECT_THROW(esObject->format(password), EncryptionError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -233,7 +237,8 @@
EXPECT_CALL(*mockCryptIface, cryptKeyslotAddByVolumeKey(_, _, _, _, _, _))
.WillOnce(Return(-1));
- EXPECT_THROW(esObject->format(password), EncryptionError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_TRUE(esObject->isLocked());
}
@@ -252,7 +257,8 @@
EXPECT_CALL(*mockCryptIface, cryptLoad(_, _, _)).WillOnce(Return(-1));
- EXPECT_THROW(esObject->format(password), EncryptionError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_TRUE(esObject->isLocked());
}
@@ -274,7 +280,8 @@
EXPECT_CALL(*mockCryptIface, cryptActivateByPassphrase(_, _, _, _, _, _))
.WillOnce(Return(-1));
- EXPECT_THROW(esObject->format(password), EncryptionError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_TRUE(esObject->isLocked());
}
@@ -298,7 +305,8 @@
EXPECT_CALL(*mockFsIface, runMkfs(testLuksDevName)).WillOnce(Return(-1));
- EXPECT_THROW(esObject->format(password), FilesystemError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -325,7 +333,8 @@
EXPECT_CALL(*mockFsIface, createDirectory(path(esObject->getMountPoint())))
.WillOnce(Return(false));
- EXPECT_THROW(esObject->format(password), FilesystemError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -360,7 +369,8 @@
EXPECT_CALL(*mockFsIface, removeDirectory(path(esObject->getMountPoint())))
.WillOnce(Return(true));
- EXPECT_THROW(esObject->format(password), FilesystemError);
+ EXPECT_THROW(esObject->formatLuks(password, Volume::FilesystemType::ext4),
+ InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -395,10 +405,10 @@
EXPECT_CALL(*mockFsIface, doUnmount(StrEq(esObject->getMountPoint())))
.WillOnce(Return(-1));
- esObject->format(password);
+ esObject->formatLuks(password, Volume::FilesystemType::ext4);
EXPECT_FALSE(esObject->isLocked());
- EXPECT_THROW(esObject->lock(password), FilesystemError);
+ EXPECT_THROW(esObject->lock(), InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -436,11 +446,11 @@
EXPECT_CALL(*mockFsIface, removeDirectory(path(esObject->getMountPoint())))
.WillOnce(Return(false));
- esObject->format(password);
+ esObject->formatLuks(password, Volume::FilesystemType::ext4);
EXPECT_FALSE(esObject->isLocked());
/* This will fail to remove the mount point. */
- EXPECT_THROW(esObject->lock(password), FilesystemError);
+ EXPECT_THROW(esObject->lock(), InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
@@ -481,10 +491,10 @@
EXPECT_CALL(*mockCryptIface, cryptDeactivate(_, _)).WillOnce(Return(-1));
/* Format the encrypted device. */
- esObject->format(password);
+ esObject->formatLuks(password, Volume::FilesystemType::ext4);
EXPECT_FALSE(esObject->isLocked());
- EXPECT_THROW(esObject->lock(password), EncryptionError);
+ EXPECT_THROW(esObject->lock(), InternalFailure);
EXPECT_FALSE(esObject->isLocked());
}
diff --git a/xyz/openbmc_project/eStoraged.errors.yaml b/xyz/openbmc_project/eStoraged.errors.yaml
deleted file mode 100644
index d3d3603..0000000
--- a/xyz/openbmc_project/eStoraged.errors.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-- name: EncryptionError
- description: One of the cryptsetup APIs returned an error.
-- name: EraseError
- description: Failed to erase the device.
-- name: FilesystemError
- description: Failed to create or remove the filesystem.
diff --git a/xyz/openbmc_project/eStoraged.interface.yaml b/xyz/openbmc_project/eStoraged.interface.yaml
deleted file mode 100644
index 29bb85c..0000000
--- a/xyz/openbmc_project/eStoraged.interface.yaml
+++ /dev/null
@@ -1,110 +0,0 @@
-description: >
- D-bus interface to manage an encrypted storage device.
-
-methods:
- - name: Format
- description: >
- Format the encrypted device and create an ext4 filesystem.
- parameters:
- - name: Password
- type: array[byte]
- description: >
- Array of bytes to use as the LUKS password.
- errors:
- - self.Error.EncryptionError
- - self.Error.FilesystemError
-
- - name: Erase
- description: >
- Erase the contents of the device.
- parameters:
- - name: Password
- type: array[byte]
- description: >
- Array of bytes to use as the LUKS password.
- - name: EraseType
- type: enum[self.EraseMethod]
- description: >
- Describes what type of erase is done.
- errors:
- - self.Error.EncryptionError
- - self.Error.EraseError
- - self.Error.FilesystemError
-
- - name: Lock
- description: >
- Unmount the filesystem, lock the device, and remove sensitive data
- (e.g. volume key) from memory.
- parameters:
- - name: Password
- type: array[byte]
- description: >
- Array of bytes to use as the LUKS password.
- errors:
- - self.Error.EncryptionError
- - self.Error.FilesystemError
-
- - name: Unlock
- description: >
- Activate the device and mount the filesystem.
- parameters:
- - name: Password
- type: array[byte]
- description: >
- Array of bytes to use as the LUKS password.
- errors:
- - self.Error.EncryptionError
- - self.Error.FilesystemError
-
- - name: ChangePassword
- description: >
- Change the password that unlocks the storage device.
- parameters:
- - name: OldPassword
- type: array[byte]
- description: >
- Array of bytes for the old LUKS password.
- - name: NewPassword
- type: array[byte]
- description: >
- Array of bytes to use as the LUKS password.
- errors:
- - self.Error.EncryptionError
-
-properties:
- - name: Locked
- type: boolean
- default: false
- description: >
- Indicates whether the device is locked.
-
-enumerations:
- - name: EraseMethod
- description: >
- Indicates which erase method/step is being requested.
- values:
- - name: CryptoErase
- description: >
- Destroys the encryption key slots, preventing decyrption.
- - name: VerifyGeometry
- description: >
- Confirms a set percent of the disk is accessible.
- - name: LogicalOverWrite
- description: >
- Overwrites the disk with a reproducible incompressible pattern.
- - name: LogicalVerify
- description: >
- Verifies a reproducible pattern has been written to the disk.
- - name: VendorSanitize
- description: >
- Uses the sanitization provided by the device firmware.
- - name: ZeroOverWrite
- description: >
- Writes zeros over the whole disk.
- - name: ZeroVerify
- description: >
- Verifies the the entire disk has been zeroed.
- - name: SecuredLocked
- description: >
- Locks the disk to prevent data being written to it.
-
diff --git a/xyz/openbmc_project/eStoraged/meson.build b/xyz/openbmc_project/eStoraged/meson.build
deleted file mode 100644
index d143487..0000000
--- a/xyz/openbmc_project/eStoraged/meson.build
+++ /dev/null
@@ -1,74 +0,0 @@
-sdbuspp_prog = find_program('sdbus++')
-
-domain = 'xyz.openbmc_project.eStoraged'
-if_yaml_file = files('../eStoraged.interface.yaml')
-
-if_cpp = custom_target(
- 'server.cpp',
- output: 'server.cpp',
- input: if_yaml_file,
- capture: true,
- command: [sdbuspp_prog, '-r', eStoraged_root, 'interface', 'server-cpp', domain])
-
-if_hpp = custom_target(
- 'server.hpp',
- output: 'server.hpp',
- input: if_yaml_file,
- capture: true,
- command: [sdbuspp_prog, '-r', eStoraged_root, 'interface', 'server-header', domain],
- install: true,
- install_dir: get_option('includedir') / 'xyz/openbmc_project/eStoraged')
-
-error_yaml_file = files('../eStoraged.errors.yaml')
-
-error_cpp = custom_target(
- 'error.cpp',
- output: 'error.cpp',
- input: error_yaml_file,
- capture: true,
- command: [sdbuspp_prog, '-r', eStoraged_root, 'error', 'exception-cpp', domain])
-
-error_hpp = custom_target(
- 'error.hpp',
- output: 'error.hpp',
- input: error_yaml_file,
- capture: true,
- command: [sdbuspp_prog, '-r', eStoraged_root, 'error', 'exception-header', domain],
- install: true,
- install_dir: get_option('includedir') / 'xyz/openbmc_project/eStoraged')
-
-eStoraged_dbus_deps = [
- dependency('sdbusplus'),
-]
-
-eStoraged_dbus_lib = library(
- 'eStoraged-dbus',
- if_cpp,
- if_hpp,
- error_cpp,
- error_hpp,
- implicit_include_directories: false,
- include_directories: eStoraged_dbus_headers,
- version: meson.project_version(),
- dependencies: eStoraged_dbus_deps,
- install: true)
-
-eStoraged_dbus = declare_dependency(
- dependencies: eStoraged_dbus_deps,
- sources: [if_hpp, error_hpp],
- include_directories: eStoraged_dbus_headers,
- link_with: eStoraged_dbus_lib)
-
-eStoraged_dbus_reqs = []
-foreach dep : eStoraged_dbus_deps
- if dep.type_name() == 'pkgconfig'
- eStoraged_dbus_reqs += dep
- endif
-endforeach
-
-import('pkgconfig').generate(
- name: 'eStoraged-dbus',
- description: 'eStoraged DBus Bindings',
- version: meson.project_version(),
- libraries: eStoraged_dbus,
- requires: eStoraged_dbus_reqs)