using System; using System.Text; using System.Collections.Specialized; using System.Runtime.InteropServices; namespace Novell.CASA.DataEngines.KWallet { public class kwallet { //private static int MAX_NAME_LENGTH = 512; private const string CPP_LIB = "kwallets_rw"; /* [DllImport(CPP_LIB)] public static extern void MyTest( EnumSecretList enumSecretList ); */ [DllImport(CPP_LIB)] public static extern void Aggregate( EnumSecretList enumSecretList ); [DllImport(CPP_LIB)] public static extern void FreeList(); /* public static int Try(EnumSecretList enumSecretList) { MyTest(enumSecretList); return 0; } */ public static int AggregateKW(EnumSecretList enumSecretList) { Aggregate(enumSecretList); return 0; } public static int FreeResources() { FreeList(); return 0; } //TBD: All this for future. /* [DllImport(CPP_LIB)] public static extern int ReadSecret ( [MarshalAs(UnmanagedType.LPStr)] String walletName, [MarshalAs(UnmanagedType.LPStr)] String folderName, [MarshalAs(UnmanagedType.LPStr)] String key, [MarshalAs(UnmanagedType.LPStr)] Byte[] secretVal ); [DllImport(CPP_LIB)] public static extern int WriteSecret ( [MarshalAs(UnmanagedType.LPStr)] String walletName, [MarshalAs(UnmanagedType.LPStr)] String folderName, int entryType, [MarshalAs(UnmanagedType.LPStr)] String key, [MarshalAs(UnmanagedType.LPStr)] Byte[] secret ); [DllImport(CPP_LIB)] public static extern void CloseAllWallets(); public static int ReadWallet(String walletName, String folderName, String key, Byte[] secretVal) { // Read a secret from wallet return (ReadSecret(walletName, folderName, key, secretVal)); } public static int WriteWallet(String walletName, String folderName,int entryType, String key, Byte[] secretVal) { // Write secret to wallet return (WriteSecret( walletName, folderName, entryType, key, secretVal)); } public static void DisconnectApplication() { CloseAllWallets(); } */ } }