Add libavfutil
The library has common utilities for various components in AVF.
Bug: 295168844
Test: atest libavfutil.test
Change-Id: If24309f480d0704c6bcba9c193a4caf578ee9d51
diff --git a/microdroid_manager/Android.bp b/microdroid_manager/Android.bp
index d854d54..f23c442 100644
--- a/microdroid_manager/Android.bp
+++ b/microdroid_manager/Android.bp
@@ -15,6 +15,7 @@
"android.system.virtualization.payload-rust",
"libandroid_logger",
"libanyhow",
+ "libavfutil",
"libapexutil_rust",
"libapkverify",
"libbinder_rs",
diff --git a/microdroid_manager/src/vm_payload_service.rs b/microdroid_manager/src/vm_payload_service.rs
index b44b0db..7cc0826 100644
--- a/microdroid_manager/src/vm_payload_service.rs
+++ b/microdroid_manager/src/vm_payload_service.rs
@@ -19,26 +19,13 @@
BnVmPayloadService, IVmPayloadService, VM_PAYLOAD_SERVICE_SOCKET_NAME};
use android_system_virtualmachineservice::aidl::android::system::virtualmachineservice::IVirtualMachineService::IVirtualMachineService;
use anyhow::{anyhow, Context, Result};
+use avfutil::LogResult;
use binder::{Interface, BinderFeatures, ExceptionCode, Strong, IntoBinderResult};
use diced_open_dice::{DiceArtifacts, OwnedDiceArtifacts};
-use log::{error, info};
+use log::info;
use rpcbinder::RpcServer;
use std::os::unix::io::OwnedFd;
-/// Convenient trait for logging an error while returning it
-trait LogResult<T, E> {
- fn with_log(self) -> std::result::Result<T, E>;
-}
-
-impl<T, E: std::fmt::Debug> LogResult<T, E> for std::result::Result<T, E> {
- fn with_log(self) -> std::result::Result<T, E> {
- self.map_err(|e| {
- error!("{e:?}");
- e
- })
- }
-}
-
/// Implementation of `IVmPayloadService`.
struct VmPayloadService {
allow_restricted_apis: bool,