// /*************************************************************************** // Aaru Data Preservation Suite // ---------------------------------------------------------------------------- // // Filename : Constants.cs // Author(s) : Natalia Portillo // // Component : Disk image plugins. // // --[ Description ] ---------------------------------------------------------- // // Contains constants for Connectix and Microsoft Virtual PC disk images. // // --[ License ] -------------------------------------------------------------- // // This library is free software; you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation; either version 2.1 of the // License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, see . // // ---------------------------------------------------------------------------- // Copyright © 2011-2021 Natalia Portillo // ****************************************************************************/ using System.Diagnostics.CodeAnalysis; namespace Aaru.DiscImages { [SuppressMessage("ReSharper", "UnusedMember.Local")] public sealed partial class Vhd { /// File magic number, "conectix" const ulong IMAGE_COOKIE = 0x636F6E6563746978; /// Dynamic disk header magic, "cxsparse" const ulong DYNAMIC_COOKIE = 0x6378737061727365; /// Disk image is candidate for deletion on shutdown const uint FEATURES_TEMPORARY = 0x00000001; /// Unknown, set from Virtual PC for Mac 7 onwards const uint FEATURES_RESERVED = 0x00000002; /// Unknown const uint FEATURES_UNKNOWN = 0x00000100; /// Only known version const uint VERSION1 = 0x00010000; /// Created by Virtual PC, "vpc " const uint CREATOR_VIRTUAL_PC = 0x76706320; /// Created by Virtual Server, "vs " const uint CREATOR_VIRTUAL_SERVER = 0x76732020; /// Created by QEMU, "qemu" const uint CREATOR_QEMU = 0x71656D75; /// Created by VirtualBox, "vbox" const uint CREATOR_VIRTUAL_BOX = 0x76626F78; /// Created by DiscImageChef, "dic " const uint CREATOR_DISCIMAGECHEF = 0x64696320; /// Created by Aaru, "aaru" const uint CREATOR_AARU = 0x61617275; /// Disk image created by Virtual Server 2004 const uint VERSION_VIRTUAL_SERVER2004 = 0x00010000; /// Disk image created by Virtual PC 2004 const uint VERSION_VIRTUAL_PC2004 = 0x00050000; /// Disk image created by Virtual PC 2007 const uint VERSION_VIRTUAL_PC2007 = 0x00050003; /// Disk image created by Virtual PC for Mac 5, 6 or 7 const uint VERSION_VIRTUAL_PC_MAC = 0x00040000; /// Disk image created in Windows, "Wi2k" const uint CREATOR_WINDOWS = 0x5769326B; /// Disk image created in Macintosh, "Mac " const uint CREATOR_MACINTOSH = 0x4D616320; /// Seen in Virtual PC for Mac for dynamic and fixed images const uint CREATOR_MACINTOSH_OLD = 0x00000000; /// Disk image type is none, useless? const uint TYPE_NONE = 0; /// Deprecated disk image type const uint TYPE_DEPRECATED1 = 1; /// Fixed disk image type const uint TYPE_FIXED = 2; /// Dynamic disk image type const uint TYPE_DYNAMIC = 3; /// Differencing disk image type const uint TYPE_DIFFERENCING = 4; /// Deprecated disk image type const uint TYPE_DEPRECATED2 = 5; /// Deprecated disk image type const uint TYPE_DEPRECATED3 = 6; /// Means platform locator is unused const uint PLATFORM_CODE_UNUSED = 0x00000000; /// Stores a relative path string for Windows, unknown locale used, deprecated, "Wi2r" const uint PLATFORM_CODE_WINDOWS_RELATIVE = 0x57693272; /// Stores an absolute path string for Windows, unknown locale used, deprecated, "Wi2k" const uint PLATFORM_CODE_WINDOWS_ABSOLUTE = 0x5769326B; /// Stores a relative path string for Windows in UTF-16, "W2ru" const uint PLATFORM_CODE_WINDOWS_RELATIVE_U = 0x57327275; /// Stores an absolute path string for Windows in UTF-16, "W2ku" const uint PLATFORM_CODE_WINDOWS_ABSOLUTE_U = 0x57326B75; /// Stores a Mac OS alias as a blob, "Mac " const uint PLATFORM_CODE_MACINTOSH_ALIAS = 0x4D616320; /// Stores a Mac OS X URI (RFC-2396) absolute path in UTF-8, "MacX" const uint PLATFORM_CODE_MACINTOSH_URI = 0x4D616358; } }