Primary changes for Bug 369296
This commit is contained in:
parent
5257513578
commit
7aa90dfcaa
@ -95,27 +95,35 @@ namespace sscs.init
|
||||
opt = args [0];
|
||||
}
|
||||
|
||||
if (opt != null && opt.ToLower () == "/install")
|
||||
{
|
||||
stopService();
|
||||
uninstallService();
|
||||
installService();
|
||||
startService();
|
||||
CredMgr.Install();
|
||||
return;
|
||||
}
|
||||
else if (opt != null && opt.ToLower () == "/uninstall")
|
||||
{
|
||||
stopService();
|
||||
uninstallService();
|
||||
CredMgr.Uninstall();
|
||||
return;
|
||||
}
|
||||
foreach (string arg in args)
|
||||
{
|
||||
System.Diagnostics.Trace.WriteLine("arg: " + arg);
|
||||
System.Diagnostics.Debug.WriteLine("arg: " + arg);
|
||||
}
|
||||
|
||||
foreach (string arg in args)
|
||||
{
|
||||
System.Diagnostics.Trace.WriteLine("arg: " + arg);
|
||||
}
|
||||
if (opt != null && opt.ToLower() == "/capturelogin")
|
||||
{
|
||||
CredMgr.Install();
|
||||
return;
|
||||
}
|
||||
else if (opt != null && opt.ToLower() == "/install")
|
||||
{
|
||||
stopService();
|
||||
uninstallService();
|
||||
CredMgr.Uninstall();
|
||||
installService();
|
||||
startService();
|
||||
return;
|
||||
}
|
||||
else if (opt != null && opt.ToLower() == "/uninstall")
|
||||
{
|
||||
stopService();
|
||||
uninstallService();
|
||||
CredMgr.Uninstall();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (opt != null
|
||||
&& (opt.ToLower() == "/standalone" || opt.ToLower() == "/s"))
|
||||
|
@ -1,4 +1,6 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
||||
using sscs.verbs;
|
||||
using sscs.cache;
|
||||
using sscs.common;
|
||||
@ -70,28 +72,45 @@ namespace sscs.verbs
|
||||
WinUserIdentifier callingUser = (WinUserIdentifier)userId;
|
||||
if ((callingUser.GetUIDLow() == 999) && (callingUser.GetUIDHigh() == 0))
|
||||
{
|
||||
CSSSLogger.DbgLog("Caller is system process");
|
||||
CSSSLogger.DbgLog("MergeSecrets: Caller is system process");
|
||||
|
||||
// get the store for the src
|
||||
try
|
||||
{
|
||||
WinUserIdentifier srcUser = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore srcStore = SessionManager.GetUserSecretStore(srcUser);
|
||||
KeyChain kcSrc = null;
|
||||
KeyChain kcDest = null;
|
||||
|
||||
WinUserIdentifier targetUser = new WinUserIdentifier(targetLuidLow, targetLuidHigh);
|
||||
SecretStore targetStore = SessionManager.CreateUserSession(targetUser);
|
||||
|
||||
byte[] baSecrets = LocalStorage.GetSecretsAsXMLStream(srcStore, ConstStrings.SSCS_SESSION_KEY_CHAIN_ID).ToArray();
|
||||
|
||||
if (baSecrets != null)
|
||||
// rename keychainID from SRC LUID to Target LUID.
|
||||
if (srcStore.CheckIfKeyChainExists(luidHigh.ToString() + luidLow.ToString()))
|
||||
{
|
||||
targetStore.MergeXMLSecrets(baSecrets);
|
||||
}
|
||||
kcSrc = srcStore.GetKeyChain(luidHigh.ToString() + luidLow.ToString());
|
||||
kcDest = new KeyChain(targetLuidHigh.ToString() + targetLuidLow.ToString());
|
||||
|
||||
if (iDestroySrcCache > 0)
|
||||
{
|
||||
SessionManager.RemoveUserSession(srcUser, true);
|
||||
if (!srcStore.CheckIfKeyChainExists(targetLuidHigh.ToString() + targetLuidLow.ToString()))
|
||||
{
|
||||
srcStore.AddKeyChain(kcDest);
|
||||
}
|
||||
|
||||
// merge secrets from src to dest keychain
|
||||
IDictionaryEnumerator secIter = (IDictionaryEnumerator)(kcSrc.GetAllSecrets());
|
||||
while (secIter.MoveNext())
|
||||
{
|
||||
Secret secret = (Secret)secIter.Value;
|
||||
kcDest.AddSecret(secret);
|
||||
}
|
||||
|
||||
if (iDestroySrcCache > 0)
|
||||
{
|
||||
SessionManager.RemoveUserSession(srcUser, true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
retCode = IPCRetCodes.SSCS_E_INVALID_INPUT;
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
@ -131,18 +131,23 @@ namespace sscs.verbs
|
||||
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
}
|
||||
#if W32
|
||||
CSSSLogger.DbgLog("LUID ExtID found");
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 12);
|
||||
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
CSSSLogger.DbgLog("ReadBinaryKey: Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
|
@ -130,21 +130,25 @@ namespace sscs.verbs
|
||||
SecretStore ssStore;
|
||||
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
}
|
||||
{
|
||||
#if W32
|
||||
CSSSLogger.DbgLog("LUID ExtID found");
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 12);
|
||||
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
CSSSLogger.DbgLog("ReadKey: Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -134,11 +134,12 @@ namespace sscs.verbs
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen)+((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen)+((int)secretIdLen) + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen)+((int)secretIdLen) + 12);
|
||||
|
||||
CSSSLogger.DbgLog("Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
CSSSLogger.DbgLog("ReadSecret: Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@ -126,24 +126,24 @@ namespace sscs.verbs
|
||||
}
|
||||
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
// WINDOWS LUID
|
||||
// This is how the Login Capture module on windows, running as System, sets the Desktop Credential.
|
||||
// we might be able to change this if/when we abstract the session.
|
||||
// [4 byte extID][4 byte length][4 byte luidLow][4 byte luidHigh]
|
||||
luidLow = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
{
|
||||
#if W32
|
||||
CSSSLogger.DbgLog("LUID ExtID found");
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 12);
|
||||
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
CSSSLogger.DbgLog("ReadSecret: Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -119,27 +119,24 @@ namespace sscs.verbs
|
||||
}
|
||||
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
// WINDOWS LUID
|
||||
// This is how the Login Capture module on windows, running as System, sets the Desktop Credential.
|
||||
// we might be able to change this if/when we abstract the session.
|
||||
// [4 byte extID][4 byte length][4 byte luidLow][4 byte luidHigh]
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen)+((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen)+((int)secretIdLen) + 12);
|
||||
{
|
||||
#if W32
|
||||
CSSSLogger.DbgLog("LUID ExtID found");
|
||||
WinUserIdentifier test = (WinUserIdentifier)userId;
|
||||
// NOTE: ONLY ALLOW THE SWITCH IF THE CALLER IS "SYSTEM"
|
||||
if ((test.GetUIDLow() == 999) && (test.GetUIDHigh() == 0))
|
||||
{
|
||||
|
||||
CSSSLogger.DbgLog("Extension found: " + luidHigh.ToString() + ":" + luidLow.ToString());
|
||||
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
// WINDOWS LUID
|
||||
// System Services, like DLU create fake UIDs, store credentials and then want to read that data.
|
||||
luidLow = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 18 + ((int)keyChainIdLen) + ((int)secretIdLen) + 12);
|
||||
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
CSSSLogger.DbgLog("ReadSecret: Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
// Message Format decipher - End
|
||||
|
@ -132,34 +132,57 @@ namespace sscs.verbs
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
if (extId == 1)
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
#if W32
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
|
||||
// WINDOWS LUID
|
||||
// This is how the Login Capture module on windows, running as System, sets the Desktop Credential.
|
||||
// we might be able to change this if/when we abstract the session.
|
||||
// [4 byte extID][4 byte length][4 byte luidLow][4 byte luidHigh]
|
||||
luidLow = BitConverter.ToInt32(inBuf, 30 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 30 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
try
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 30 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 12);
|
||||
|
||||
if (ConstStrings.MICASA_DESKTOP_PASSWD == secretId)
|
||||
{
|
||||
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
SecretStore ssStore = SessionManager.GetUserSecretStore(tempUserId);
|
||||
if (!ssStore.CheckIfKeyChainExists(keyChainId))
|
||||
{
|
||||
try
|
||||
{
|
||||
KeyChain newKeyChain = new KeyChain(keyChainId);
|
||||
ssStore.AddKeyChain(newKeyChain);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
CSSSLogger.DbgLog("WriteKey: Adding keychain returned error: " + e.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
try
|
||||
{
|
||||
KeyChain keyChain = null;
|
||||
SecretStore ssStore = SessionManager.GetUserSecretStore(tempUserId);
|
||||
|
@ -130,12 +130,13 @@ namespace sscs.verbs
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
if (extId == 1)
|
||||
{
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
|
||||
#if W32
|
||||
if (extId == 1)
|
||||
{
|
||||
CSSSLogger.DbgLog("LUID ExtID found");
|
||||
|
||||
// WINDOWS LUID
|
||||
@ -143,24 +144,48 @@ namespace sscs.verbs
|
||||
// we might be able to change this if/when we abstract the session.
|
||||
// [4 byte extID][4 byte length][4 byte luidLow][4 byte luidHigh]
|
||||
luidLow = BitConverter.ToInt32(inBuf, 26 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 26 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 26 + ((int)keyChainIdLen)+((int)secretIdLen) +((int)keyLen) + (int)valLen + 12);
|
||||
|
||||
CSSSLogger.DbgLog("Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if (secretId.Length < 1 || key.Length < 1 || valStr.Length < 1)
|
||||
if (ConstStrings.MICASA_DESKTOP_PASSWD == secretId)
|
||||
{
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
|
||||
CSSSLogger.DbgLog("Switching LUID to [" + luidHigh.ToString() + "][" + luidLow.ToString() + "]");
|
||||
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
SecretStore ssStore = SessionManager.GetUserSecretStore(tempUserId);
|
||||
if (!ssStore.CheckIfKeyChainExists(keyChainId))
|
||||
{
|
||||
try
|
||||
{
|
||||
KeyChain newKeyChain = new KeyChain(keyChainId);
|
||||
ssStore.AddKeyChain(newKeyChain);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
CSSSLogger.DbgLog("WriteKey: Adding keychain returned error: " + e.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (secretId.Length < 1 || key.Length < 1 || valStr.Length < 1)
|
||||
{
|
||||
CSSSLogger.DbgLog("Error in length");
|
||||
}
|
||||
@ -200,6 +225,7 @@ namespace sscs.verbs
|
||||
if( null != kv )
|
||||
oldPasswd = kv.GetValue();
|
||||
}
|
||||
|
||||
secret.SetKeyValue(key,valStr);
|
||||
|
||||
if((ConstStrings.MICASA_DESKTOP_PASSWD == secretId) &&
|
||||
@ -224,8 +250,7 @@ namespace sscs.verbs
|
||||
|
||||
// Now change all values for linked keys
|
||||
ChangeLinkedKeys(keyChain, secret, key, valStr);
|
||||
ssStore.UpdatePersistentStore();
|
||||
|
||||
ssStore.UpdatePersistentStore();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -120,32 +120,56 @@ namespace sscs.verbs
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
if (extId == 1)
|
||||
//CSSSLogger.ExpLog(e.ToString());
|
||||
}
|
||||
|
||||
#if W32
|
||||
if (extId == 1)
|
||||
{
|
||||
#if W32
|
||||
// WINDOWS LUID
|
||||
// This is how the Login Capture module on windows, running as System, sets the Desktop Credential.
|
||||
// we might be able to change this if/when we abstract the session.
|
||||
// [4 byte extID][4 byte length][4 byte luidLow][4 byte luidHigh]
|
||||
luidLow = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +(int)secretValLen + 8);
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +(int)secretValLen + 12);
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
luidHigh = BitConverter.ToInt32(inBuf, 22 + ((int)keyChainIdLen)+((int)secretIdLen) +(int)secretValLen + 12);
|
||||
|
||||
if (ConstStrings.MICASA_DESKTOP_PASSWD == secretId)
|
||||
{
|
||||
tempUserId = new WinUserIdentifier(luidLow, luidHigh);
|
||||
SecretStore ss = SessionManager.CreateUserSession(tempUserId);
|
||||
try
|
||||
{
|
||||
ss.AddKeyChain(new KeyChain("SSCS_SESSION_KEY_CHAIN_ID\0"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// this code is for ZEN. Here we switch to a keychain who's ID is the LUID of the user logging in.
|
||||
// ZEN processes run as system and pass the LUID in the extension parameter.
|
||||
|
||||
keyChainId = luidHigh.ToString() + luidLow.ToString();
|
||||
SecretStore ssStore = SessionManager.GetUserSecretStore(tempUserId);
|
||||
if (!ssStore.CheckIfKeyChainExists(keyChainId))
|
||||
{
|
||||
try
|
||||
{
|
||||
KeyChain newKeyChain = new KeyChain(keyChainId);
|
||||
ssStore.AddKeyChain(newKeyChain);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
CSSSLogger.DbgLog("WriteSecret: Adding keychain returned error: " + e.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
try
|
||||
try
|
||||
{
|
||||
string passwd = null;
|
||||
KeyChain keyChain = null;
|
||||
|
@ -33,12 +33,6 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_416A19B8FF085499E6842E1DD3A1D80C"
|
||||
"OwnerKey" = "8:_718042C617DB414B91C69D1ACCD99A42"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4CA6C9BB20C542A1B856271245513CC1"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -81,6 +75,18 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_BFB5523F92C62717D5FFB02E609341F7"
|
||||
"OwnerKey" = "8:_384A908A3DE54B359C611011C2A2AA97"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_D00638E8107CF2A284517C9D22B5F2FD"
|
||||
"OwnerKey" = "8:_718042C617DB414B91C69D1ACCD99A42"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_EE232DF9B4BC45A4930DB0E636A09A53"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -94,7 +100,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_416A19B8FF085499E6842E1DD3A1D80C"
|
||||
"OwnerKey" = "8:_D00638E8107CF2A284517C9D22B5F2FD"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
}
|
||||
@ -208,37 +214,6 @@
|
||||
"IsDependency" = "11:FALSE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_416A19B8FF085499E6842E1DD3A1D80C"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.Casa.MiCasa, Version=1.7.0.0, Culture=neutral, PublicKeyToken=35accfbe728f56c2, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_416A19B8FF085499E6842E1DD3A1D80C"
|
||||
{
|
||||
"Name" = "8:Novell.Casa.MiCasa.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Novell.Casa.MiCasa.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_60E3A2D74B8D4F348C473CBA0F171A15"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_4CA6C9BB20C542A1B856271245513CC1"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\include\\casa_status.h"
|
||||
@ -359,6 +334,57 @@
|
||||
"IsDependency" = "11:FALSE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_BFB5523F92C62717D5FFB02E609341F7"
|
||||
{
|
||||
"SourcePath" = "8:micasa.dll"
|
||||
"TargetName" = "8:micasa.dll"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_F3F9192858114846913E6271C812F8FA"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:TRUE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_D00638E8107CF2A284517C9D22B5F2FD"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.Casa.MiCasa, Version=1.7.0.0, Culture=neutral, PublicKeyToken=35accfbe728f56c2, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_D00638E8107CF2A284517C9D22B5F2FD"
|
||||
{
|
||||
"Name" = "8:Novell.Casa.MiCasa.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Novell.Casa.MiCasa.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_60E3A2D74B8D4F348C473CBA0F171A15"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_EE232DF9B4BC45A4930DB0E636A09A53"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\include\\sscs_string.h"
|
||||
|
@ -21,6 +21,18 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_093DBD038821017381C58C1600BB65FF"
|
||||
"OwnerKey" = "8:_69B8715C6C864CE4BA0C8234D344175F"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_093DBD038821017381C58C1600BB65FF"
|
||||
"OwnerKey" = "8:_3FAA064A5C5743BB8AD74340F1E51D54"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_11B0506C6E534CED95D82DA0A8EC9F82"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -39,6 +51,12 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_67362662FCA5430D78E969E0849E5DA3"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_69B8715C6C864CE4BA0C8234D344175F"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -51,12 +69,54 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_9758D1FBAC2381225654B6F8C266D939"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_9758D1FBAC2381225654B6F8C266D939"
|
||||
"OwnerKey" = "8:_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_9758D1FBAC2381225654B6F8C266D939"
|
||||
"OwnerKey" = "8:_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
"OwnerKey" = "8:_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_FCA9C6770F0FB28185373954659263CB"
|
||||
"OwnerKey" = "8:_01C1EAD583CE4AD39778A1F9EC86204D"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -64,6 +124,30 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_67362662FCA5430D78E969E0849E5DA3"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_9758D1FBAC2381225654B6F8C266D939"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_11B0506C6E534CED95D82DA0A8EC9F82"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
@ -129,7 +213,7 @@
|
||||
{
|
||||
"CustomAction"
|
||||
{
|
||||
"{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_476A5F9BC21F44518B6457F5FE0F599F"
|
||||
"{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_013452D619C547C68B71BA6FD2842FD0"
|
||||
{
|
||||
"Name" = "8:Primary output from micasad (Active)"
|
||||
"Condition" = "8:"
|
||||
@ -139,7 +223,21 @@
|
||||
"Arguments" = "8:/install"
|
||||
"EntryPoint" = "8:"
|
||||
"Sequence" = "3:1"
|
||||
"Identifier" = "8:_7DF133C5_6DDB_4D74_B180_8AD6AD730D2B"
|
||||
"Identifier" = "8:_FB65FC12_0EFA_48AF_8FC1_533D5239C93B"
|
||||
"InstallerClass" = "11:FALSE"
|
||||
"CustomActionData" = "8:"
|
||||
}
|
||||
"{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_99C08E208A824461B87B6784F0710A98"
|
||||
{
|
||||
"Name" = "8:Primary output from micasad (Active)"
|
||||
"Condition" = "8:CAPTURECHECKBOX"
|
||||
"Object" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"FileType" = "3:2"
|
||||
"InstallAction" = "3:1"
|
||||
"Arguments" = "8:/capturelogin"
|
||||
"EntryPoint" = "8:"
|
||||
"Sequence" = "3:2"
|
||||
"Identifier" = "8:_59E88BBE_39ED_4920_A453_12AA5451C45A"
|
||||
"InstallerClass" = "11:FALSE"
|
||||
"CustomActionData" = "8:"
|
||||
}
|
||||
@ -166,6 +264,170 @@
|
||||
}
|
||||
"File"
|
||||
{
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_093DBD038821017381C58C1600BB65FF"
|
||||
{
|
||||
"SourcePath" = "8:micasa.dll"
|
||||
"TargetName" = "8:micasa.dll"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_67362662FCA5430D78E969E0849E5DA3"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.CASAPol, Version=1.6.2992.23043, Culture=neutral, processorArchitecture=x86"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_67362662FCA5430D78E969E0849E5DA3"
|
||||
{
|
||||
"Name" = "8:Novell.CASA.CASAPol.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Novell.CASA.CASAPol.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_9758D1FBAC2381225654B6F8C266D939"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.InterProcessComm, Version=1.6.0.23042, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_9758D1FBAC2381225654B6F8C266D939"
|
||||
{
|
||||
"Name" = "8:AppModule.InterProcessComm.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:AppModule.InterProcessComm.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.Common, Version=1.6.2992.23043, Culture=neutral, processorArchitecture=x86"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_9FC7A3EA3E129FBD361CE309C7C43080"
|
||||
{
|
||||
"Name" = "8:Novell.CASA.Common.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Novell.CASA.Common.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.NamedPipes, Version=1.6.0.23042, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_D83EEDA088D84DFF9B8BD181EA25EE66"
|
||||
{
|
||||
"Name" = "8:AppModule.NamedPipes.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:AppModule.NamedPipes.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_FCA9C6770F0FB28185373954659263CB"
|
||||
{
|
||||
"SourcePath" = "8:micasacache.dll"
|
||||
"TargetName" = "8:micasacache.dll"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Vital" = "11:TRUE"
|
||||
"ReadOnly" = "11:FALSE"
|
||||
"Hidden" = "11:FALSE"
|
||||
"System" = "11:FALSE"
|
||||
"Permanent" = "11:FALSE"
|
||||
"SharedLegacy" = "11:FALSE"
|
||||
"PackageAs" = "3:1"
|
||||
"Register" = "3:1"
|
||||
"Exclude" = "11:FALSE"
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
}
|
||||
"FileType"
|
||||
{
|
||||
@ -265,7 +527,7 @@
|
||||
{
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_01C1EAD583CE4AD39778A1F9EC86204D"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\micasadk\\release\\micasa.dll"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\micasadk\\Release\\micasa.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
@ -321,7 +583,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_3FAA064A5C5743BB8AD74340F1E51D54"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\cli\\release\\CASAcli.exe"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\cli\\Release\\CASAcli.exe"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
@ -349,7 +611,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_53A2168DF64E4E9EB3FD5516424E732E"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\micasacache\\release\\micasacache.dll"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\micasacache\\Release\\micasacache.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
@ -377,7 +639,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_69B8715C6C864CE4BA0C8234D344175F"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\jwrapper\\jnsscs\\release\\jmicasa.dll"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\jwrapper\\jnsscs\\Release\\jmicasa.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
@ -405,7 +667,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_90C16B41FE7F435A8640BFDDD7C02619"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\logincapture\\windows\\bin\\release\\lcredmgr.dll"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\logincapture\\windows\\bin\\Release\\lcredmgr.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
|
@ -61,12 +61,6 @@
|
||||
"OwnerKey" = "8:_BF2CE61978054B2DB482792974E390F0"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_98DCC664712A41B993FCD33026D06FFC"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
}
|
||||
"Configurations"
|
||||
{
|
||||
@ -322,7 +316,7 @@
|
||||
"Name" = "8:Microsoft Visual Studio"
|
||||
"ProductName" = "8:CASA"
|
||||
"ProductCode" = "8:{82D754E5-AC82-48BC-B7AF-FAC9DBCBA9BF}"
|
||||
"PackageCode" = "8:{85D90911-4C56-41D0-B3CD-250D6EC25D12}"
|
||||
"PackageCode" = "8:{543D4D2F-3245-43B6-A0C7-3E0EFA146CD3}"
|
||||
"UpgradeCode" = "8:{DFD8B8A0-EA51-4202-831C-7CD2B90A63AE}"
|
||||
"RestartWWWService" = "11:FALSE"
|
||||
"RemovePreviousVersions" = "11:TRUE"
|
||||
@ -650,7 +644,7 @@
|
||||
{
|
||||
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_168355FD285E4059925B44754162B77B"
|
||||
{
|
||||
"Sequence" = "3:300"
|
||||
"Sequence" = "3:400"
|
||||
"DisplayName" = "8:Confirm Installation"
|
||||
"UseDynamicProperties" = "11:TRUE"
|
||||
"IsDependency" = "11:FALSE"
|
||||
@ -671,6 +665,263 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_42A318B9FD8D40EBA982516EB3F6DD93"
|
||||
{
|
||||
"Sequence" = "3:300"
|
||||
"DisplayName" = "8:Checkboxes (A)"
|
||||
"UseDynamicProperties" = "11:TRUE"
|
||||
"IsDependency" = "11:FALSE"
|
||||
"SourcePath" = "8:<VsdDialogDir>\\VsdCustomCheck1Dlg.wid"
|
||||
"Properties"
|
||||
{
|
||||
"BannerBitmap"
|
||||
{
|
||||
"Name" = "8:BannerBitmap"
|
||||
"DisplayName" = "8:#1001"
|
||||
"Description" = "8:#1101"
|
||||
"Type" = "3:8"
|
||||
"ContextData" = "8:Bitmap"
|
||||
"Attributes" = "3:4"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:_93A5D480D91747B086FD13789A12978B"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"BannerText"
|
||||
{
|
||||
"Name" = "8:BannerText"
|
||||
"DisplayName" = "8:#1014"
|
||||
"Description" = "8:#1114"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:Options"
|
||||
"DefaultValue" = "8:#1214"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"BodyText"
|
||||
{
|
||||
"Name" = "8:BodyText"
|
||||
"DisplayName" = "8:#1015"
|
||||
"Description" = "8:#1115"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:By capturing your desktop password, CASA will remember saved passwords after restarts "
|
||||
"DefaultValue" = "8:#1215"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox1Label"
|
||||
{
|
||||
"Name" = "8:Checkbox1Label"
|
||||
"DisplayName" = "8:#1034"
|
||||
"Description" = "8:#1134"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:Capture Desktop Password"
|
||||
"DefaultValue" = "8:#1234"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox1Property"
|
||||
{
|
||||
"Name" = "8:Checkbox1Property"
|
||||
"DisplayName" = "8:#1030"
|
||||
"Description" = "8:#1130"
|
||||
"Type" = "3:14"
|
||||
"ContextData" = "8:Public"
|
||||
"Attributes" = "3:2"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:CAPTURECHECKBOX"
|
||||
"DefaultValue" = "8:CHECKBOXA1"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox1Value"
|
||||
{
|
||||
"Name" = "8:Checkbox1Value"
|
||||
"DisplayName" = "8:#1038"
|
||||
"Description" = "8:#1138"
|
||||
"Type" = "3:2"
|
||||
"ContextData" = "8:Unchecked=;Checked=1"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:"
|
||||
"DefaultValue" = "8:"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox1Visible"
|
||||
{
|
||||
"Name" = "8:Checkbox1Visible"
|
||||
"DisplayName" = "8:#1026"
|
||||
"Description" = "8:#1126"
|
||||
"Type" = "3:5"
|
||||
"ContextData" = "8:1;True=1;False=0"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:0"
|
||||
"Value" = "3:1"
|
||||
"DefaultValue" = "3:1"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox2Label"
|
||||
{
|
||||
"Name" = "8:Checkbox2Label"
|
||||
"DisplayName" = "8:#1035"
|
||||
"Description" = "8:#1135"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:1"
|
||||
"Value" = "8:#1235"
|
||||
"DefaultValue" = "8:#1235"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox2Property"
|
||||
{
|
||||
"Name" = "8:Checkbox2Property"
|
||||
"DisplayName" = "8:#1031"
|
||||
"Description" = "8:#1131"
|
||||
"Type" = "3:14"
|
||||
"ContextData" = "8:Public"
|
||||
"Attributes" = "3:2"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:CHECKBOXA2"
|
||||
"DefaultValue" = "8:CHECKBOXA2"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox2Value"
|
||||
{
|
||||
"Name" = "8:Checkbox2Value"
|
||||
"DisplayName" = "8:#1039"
|
||||
"Description" = "8:#1139"
|
||||
"Type" = "3:2"
|
||||
"ContextData" = "8:Unchecked=;Checked=1"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:"
|
||||
"DefaultValue" = "8:"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox2Visible"
|
||||
{
|
||||
"Name" = "8:Checkbox2Visible"
|
||||
"DisplayName" = "8:#1027"
|
||||
"Description" = "8:#1127"
|
||||
"Type" = "3:5"
|
||||
"ContextData" = "8:1;True=1;False=0"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:0"
|
||||
"Value" = "3:0"
|
||||
"DefaultValue" = "3:1"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox3Label"
|
||||
{
|
||||
"Name" = "8:Checkbox3Label"
|
||||
"DisplayName" = "8:#1036"
|
||||
"Description" = "8:#1136"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:1"
|
||||
"Value" = "8:#1236"
|
||||
"DefaultValue" = "8:#1236"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox3Property"
|
||||
{
|
||||
"Name" = "8:Checkbox3Property"
|
||||
"DisplayName" = "8:#1032"
|
||||
"Description" = "8:#1132"
|
||||
"Type" = "3:14"
|
||||
"ContextData" = "8:Public"
|
||||
"Attributes" = "3:2"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:CHECKBOXA3"
|
||||
"DefaultValue" = "8:CHECKBOXA3"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox3Value"
|
||||
{
|
||||
"Name" = "8:Checkbox3Value"
|
||||
"DisplayName" = "8:#1040"
|
||||
"Description" = "8:#1140"
|
||||
"Type" = "3:2"
|
||||
"ContextData" = "8:Unchecked=;Checked=1"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:"
|
||||
"DefaultValue" = "8:"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox3Visible"
|
||||
{
|
||||
"Name" = "8:Checkbox3Visible"
|
||||
"DisplayName" = "8:#1028"
|
||||
"Description" = "8:#1128"
|
||||
"Type" = "3:5"
|
||||
"ContextData" = "8:1;True=1;False=0"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:0"
|
||||
"Value" = "3:0"
|
||||
"DefaultValue" = "3:1"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox4Label"
|
||||
{
|
||||
"Name" = "8:Checkbox4Label"
|
||||
"DisplayName" = "8:#1037"
|
||||
"Description" = "8:#1137"
|
||||
"Type" = "3:3"
|
||||
"ContextData" = "8:"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:1"
|
||||
"Value" = "8:#1237"
|
||||
"DefaultValue" = "8:#1237"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox4Property"
|
||||
{
|
||||
"Name" = "8:Checkbox4Property"
|
||||
"DisplayName" = "8:#1033"
|
||||
"Description" = "8:#1133"
|
||||
"Type" = "3:14"
|
||||
"ContextData" = "8:Public"
|
||||
"Attributes" = "3:2"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:CHECKBOXA4"
|
||||
"DefaultValue" = "8:CHECKBOXA4"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox4Value"
|
||||
{
|
||||
"Name" = "8:Checkbox4Value"
|
||||
"DisplayName" = "8:#1041"
|
||||
"Description" = "8:#1141"
|
||||
"Type" = "3:2"
|
||||
"ContextData" = "8:Unchecked=;Checked=1"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:2"
|
||||
"Value" = "8:"
|
||||
"DefaultValue" = "8:"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
"Checkbox4Visible"
|
||||
{
|
||||
"Name" = "8:Checkbox4Visible"
|
||||
"DisplayName" = "8:#1029"
|
||||
"Description" = "8:#1129"
|
||||
"Type" = "3:5"
|
||||
"ContextData" = "8:1;True=1;False=0"
|
||||
"Attributes" = "3:0"
|
||||
"Setting" = "3:0"
|
||||
"Value" = "3:0"
|
||||
"DefaultValue" = "3:1"
|
||||
"UsePlugInResources" = "11:TRUE"
|
||||
}
|
||||
}
|
||||
}
|
||||
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_72A96753BD2044C99316BD7497386565"
|
||||
{
|
||||
"Sequence" = "3:200"
|
||||
@ -859,7 +1110,7 @@
|
||||
{
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_98DCC664712A41B993FCD33026D06FFC"
|
||||
{
|
||||
"SourcePath" = "8:..\\CASA-gui-msm\\Debug\\CASA-gui.msm"
|
||||
"SourcePath" = "8:..\\CASA-gui-msm\\Release\\CASA-gui.msm"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_E8900D5F0BD44DC0BB0BEFDF7C43B30C"
|
||||
@ -912,7 +1163,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_BF2CE61978054B2DB482792974E390F0"
|
||||
{
|
||||
"SourcePath" = "8:..\\CASA-msm\\Debug\\CASA-msm.msm"
|
||||
"SourcePath" = "8:..\\CASA-msm\\Release\\CASA-msm.msm"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_E8900D5F0BD44DC0BB0BEFDF7C43B30C"
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user