summaryrefslogtreecommitdiff
path: root/cabinet/magic.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cabinet/magic.cpp')
-rw-r--r--cabinet/magic.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/cabinet/magic.cpp b/cabinet/magic.cpp
index b5c1aaa..08b3046 100644
--- a/cabinet/magic.cpp
+++ b/cabinet/magic.cpp
@@ -63,6 +63,16 @@ namespace cab
return result;
}
+ auto magic::process(int file_descriptor) -> std::expected<std::string, std::string>
+ {
+ auto result = ::magic_descriptor(m_cookie, file_descriptor);
+ if (!result)
+ {
+ return std::unexpected{std::string{::magic_error(m_cookie)}};
+ }
+ return result;
+ }
+
auto swap(magic & lhs, magic & rhs) noexcept -> void
{
auto temp = std::move(lhs);