public void GetKeyringsListsAllKeyrings()
 {
     Assert.Contains("keyring1", Ring.GetKeyrings());
 }
 public void GetDefaultKeyringNameReturnsLogin()
 {
     Assert.AreEqual("keyring1", Ring.GetDefaultKeyring());
 }
 public void SetDefaultKeyringWithInvalidKeyringRaisesException()
 {
     Ring.SetDefaultKeyring("Keyring That Doesn't Exist");
 }
 public void TestIdListForLoginKeyringIsNonEmpty()
 {
     Assert.IsNotEmpty(Ring.ListItemIDs("login"));
 }
Beispiel #5
0
        static void Main()
        {
            if (!Ring.Available)
            {
                Console.WriteLine("The gnome-keyring-daemon cannot be reached.");
                return;
            }

            string deflt = Ring.GetDefaultKeyring();

            Console.WriteLine("The default keyring is '{0}'", deflt);
            Console.Write("Other rings available: ");

            foreach (string s in Ring.GetKeyrings())
            {
                if (s != deflt)
                {
                    Console.Write("'{0}' ", s);
                }
            }
            Console.WriteLine();

            // This is equivalent to...
            foreach (ItemData s in Ring.FindNetworkPassword("gonzalo", null, null, null, null, null, 0))
            {
                Console.WriteLine("HERE");
                Console.WriteLine(s);
            }

            // ... this other search.
            Hashtable tbl = new Hashtable();

            tbl ["user"] = "******";
            foreach (ItemData s in Ring.Find(ItemType.NetworkPassword, tbl))
            {
                Console.WriteLine(s);
            }

            tbl            = new Hashtable();
            tbl ["user"]   = "******";
            tbl ["domain"] = "MiDomain";
            Console.WriteLine("Creating item");
            int      i  = Ring.CreateItem(null, ItemType.NetworkPassword, "*****@*****.**", tbl, "laclave", true);
            ItemData d2 = Ring.GetItemInfo(deflt, i);

            Ring.SetItemInfo(deflt, d2.ItemID, ItemType.NetworkPassword, "cambioesto@lalala", "otraclave");
            Hashtable atts = Ring.GetItemAttributes(deflt, i);

            foreach (string key in atts.Keys)
            {
                Console.WriteLine("{0}: {1}", key, atts [key]);
            }

            atts ["object"] = "new attributes";
            Ring.SetItemAttributes(deflt, i, atts);
            Console.WriteLine("Press any key to continue...");
            Console.ReadLine();

            Console.WriteLine("Deleting it (ID = {0})", i);
            Ring.DeleteItem(Ring.GetDefaultKeyring(), i);
            Console.WriteLine("Existing IDs...");
            foreach (int nn in Ring.ListItemIDs(deflt))
            {
                Console.WriteLine(nn);
            }

            KeyringInfo info = new KeyringInfo(true, 15);

            Ring.SetKeyringInfo(deflt, info);

            info = Ring.GetKeyringInfo(deflt);
            Console.WriteLine(info);
            ArrayList acl_list = Ring.GetItemACL(deflt, 3);

            foreach (ItemACL acl in acl_list)
            {
                Console.WriteLine(acl);
            }

            ArrayList list2 = new ArrayList(acl_list);

            list2.Add(new ItemACL("test", "/test", AccessRights.Read));
            Ring.SetItemACL(deflt, 3, list2);
            Console.WriteLine("Press any key to continue...");
            Console.ReadLine();
            Ring.SetItemACL(deflt, 3, acl_list);
        }