Ejemplo n.º 1
0
 public override string GetCellData(string columnName, KeePassLib.PwEntry entry)
 {
     switch (columnName) {
     case sshKeyStatusColumnName:
       var agentModeAgent = ext.agent as Agent;
       if (agentModeAgent != null && agentModeAgent.IsLocked) {
     return "Agent Locked";
       }
       try {
     var key = entry.GetSshKey();
     if (key == null)
       return "N/A";
     if (ext.agent.GetAllKeys().Get(key.Version, key.GetPublicKeyBlob()) != null)
       return "Loaded";
       } catch (PpkFormatterException) {
     return "Error";
       } catch (Exception ex) {
     Debug.Fail(ex.Message);
     return "*Error";
       }
       return "Not Loaded";
       }
       Debug.Fail(string.Format("Unknown column name: {0}", columnName));
       return string.Empty;
 }
Ejemplo n.º 2
0
 public override void PerformCellAction(string columnName, KeePassLib.PwEntry entry)
 {
     switch (columnName) {
     case sshKeyStatusColumnName:
       try {
     var key = entry.GetSshKey();
     if (key == null)
       break;
     var agentKey = ext.agent.GetAllKeys().Get(key.Version, key.GetPublicKeyBlob());
     if (agentKey == null)
       ext.AddEntry(entry, null);
     else
       ext.agent.RemoveKey(agentKey);
       } catch (Exception ex) {
     Debug.Fail(ex.Message);
       }
       break;
     default:
       Debug.Fail(string.Format("Unsupported column: {0}", columnName));
       break;
       }
 }