using System; namespace ModernKeePassLib.Native { internal static class NativeLib { public static ulong MonoVersion { get { throw new NotImplementedException(); } } public static bool IsUnix() { return true; } public static string EncodeDataToArgs(string data) { throw new NotImplementedException(); } public static string DecodeArgsToData(string strArgs) { throw new NotImplementedException(); } internal static int GetPlatformID() { return Environment.CurrentManagedThreadId; } } internal static class NativeMethods { public static bool SupportsStrCmpNaturally => false; internal const int GCRY_CIPHER_AES256 = 9; internal const int GCRY_CIPHER_MODE_ECB = 1; public static int StrCmpNaturally (string s1, string s2) { throw new NotImplementedException(); } internal static void gcry_check_version(IntPtr zero) { throw new NotImplementedException(); } public static void gcry_cipher_open(ref IntPtr intPtr, object gcryCipherAes256, object gcryCipherModeEcb, int i) { throw new NotImplementedException(); } internal static int gcry_cipher_setkey(IntPtr h, IntPtr pSeed32, IntPtr n32) { throw new NotImplementedException(); } internal static void gcry_cipher_close(IntPtr h) { throw new NotImplementedException(); } internal static int gcry_cipher_encrypt(IntPtr h, IntPtr pData32, IntPtr n32, IntPtr zero1, IntPtr zero2) { throw new NotImplementedException(); } public static string GetUserRuntimeDir() { throw new NotImplementedException(); } } public enum DataProtectionScope { CurrentUser, LocalMachine } internal enum MemoryProtectionScope { CrossProcess, SameLogon, SameProcess } internal static class ProtectedMemory { public static byte[] Protect(byte[] userData, MemoryProtectionScope scope) { throw new NotImplementedException(); } public static byte[] Unprotect(byte[] userData, MemoryProtectionScope scope) { throw new NotImplementedException(); } } }