/*********************************************************************** * * Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved. * * 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; version 2.1 * of the License. * * 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 * Library 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, Novell, Inc. * * To contact Novell about this file by physical or electronic mail, * you may find current contact information at www.novell.com. * ***********************************************************************/ using System; namespace Novell.CASA.MiCasa.Common { /// /// Summary description for LinkInfo. /// /// [Serializable] public class LinkedKeyInfo { //private string m_sDestStoreID = null; //private string m_sDestKeychainID = null; private string m_sDestSecretID = null; private string m_sDestKeyID = null; public LinkedKeyInfo(string sDestSecretID, string sDestKey) { if (sDestSecretID != null) { if (sDestSecretID.StartsWith("SS_CredSet")) sDestSecretID = "SS_CredSet:" + Utils.EscapeReservedChars(sDestSecretID.Substring(11)) + '\0'; else sDestSecretID = "SS_CredSet:" + Utils.EscapeReservedChars(sDestSecretID) + '\0'; } m_sDestSecretID = sDestSecretID; m_sDestKeyID = sDestKey; } public LinkedKeyInfo(string sDestSecretID, string sDestKey, bool bAlreadyEscaped) { if (!bAlreadyEscaped) { if (sDestSecretID != null) { if (sDestSecretID.StartsWith("SS_CredSet")) sDestSecretID = "SS_CredSet:" + Utils.EscapeReservedChars(sDestSecretID.Substring(11)) + '\0'; else sDestSecretID = "SS_CredSet:" + Utils.EscapeReservedChars(sDestSecretID) + '\0'; } } m_sDestSecretID = sDestSecretID; m_sDestKeyID = sDestKey; } public string GetLinkID() { return m_sDestSecretID + ":" + m_sDestKeyID; } public string GetLinkedSecretID() { return m_sDestSecretID; } public string GetLinkedSecretID(bool bUnescape) { if (bUnescape) { if (m_sDestSecretID.StartsWith("SS_CredSet")) return ("SS_CredSet:" + Utils.UnescapeString(m_sDestSecretID.Substring(11))); else return Utils.UnescapeString(m_sDestSecretID); } return m_sDestSecretID; } public string GetLinkedKeyID() { return m_sDestKeyID; } } }