diff --git a/Interfaces/IArchive.cs b/Interfaces/IArchive.cs
index 9bfb61b..ebbb719 100644
--- a/Interfaces/IArchive.cs
+++ b/Interfaces/IArchive.cs
@@ -34,6 +34,7 @@
using System;
using System.Collections.Generic;
using System.IO;
+using Aaru.CommonTypes.Enums;
// ReSharper disable UnusedMember.Global
@@ -92,15 +93,15 @@ namespace Aaru.CommonTypes.Interfaces
/// Opens the specified path with this archive instance
/// Path.
- void Open(string path);
+ ErrorNumber Open(string path);
/// Opens the specified stream with this archive instance
/// Stream.
- void Open(Stream stream);
+ ErrorNumber Open(Stream stream);
/// Opens the specified buffer with this archive instance
/// Buffer.
- void Open(byte[] buffer);
+ ErrorNumber Open(byte[] buffer);
///
/// Returns true if the archive has a file/stream/buffer currently opened and no
@@ -181,7 +182,7 @@ namespace Aaru.CommonTypes.Interfaces
/// The entry in the archive for which to retrieve the XAttr.
/// Extended attribute, alternate data stream or fork name.
/// Buffer with the XAttr data.
- byte[] GetXattr(int entryNumber, string xattr);
+ ErrorNumber GetXattr(int entryNumber, string xattr, out byte[] buffer);
/// Gets information about an entry in the archive.
/// Note that some of the data might be incomplete or not available at all, depending on the type of archive.