Windows only change. Created and Add Novell.Casa.MiCasa.dll to the GAC.
This commit is contained in:
parent
3a44ee8211
commit
b19f7245bd
@ -390,7 +390,7 @@ typedef struct _sscs_ext_t
|
||||
uint32_t ssFlags, // IN
|
||||
SSCS_SECRET_ID_T * appSecretID, // IN
|
||||
SSCS_SECRET_ID_T * sharedSecretID, // Optional IN
|
||||
uint32_t * credentialType, // IN/OUT
|
||||
uint32_t * credentialType, // IN/OUT
|
||||
void * credential, // OUT
|
||||
SSCS_EXT_T * ext // Reserved
|
||||
);
|
||||
@ -401,7 +401,7 @@ typedef struct _sscs_ext_t
|
||||
uint32_t ssFlags, // IN
|
||||
SSCS_SECRET_ID_T * appSecretID, // IN
|
||||
SSCS_SECRET_ID_T * sharedSecretID, // Optional IN
|
||||
uint32_t credentialType, // IN
|
||||
uint32_t credentialType, // IN
|
||||
void * credential, // IN
|
||||
SSCS_EXT_T * ext // Reserved
|
||||
);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -21,49 +21,19 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_01EA198D017B971B145A17145CE2C5F6"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_01EA198D017B971B145A17145CE2C5F6"
|
||||
"OwnerKey" = "8:_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_093DBD038821017381C58C1600BB65FF"
|
||||
"OwnerKey" = "8:_69B8715C6C864CE4BA0C8234D344175F"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmKey" = "8:_11B0506C6E534CED95D82DA0A8EC9F82"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
"OwnerKey" = "8:_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
"OwnerKey" = "8:_01EA198D017B971B145A17145CE2C5F6"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_538816C3FDB46EF4059CBA054855C473"
|
||||
"MsmKey" = "8:_4017F0313C0605FD76ED03402317EA35"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
@ -75,12 +45,30 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
"OwnerKey" = "8:_4017F0313C0605FD76ED03402317EA35"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_69B8715C6C864CE4BA0C8234D344175F"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_6C056EF6608CB813240B81AB2C290472"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_90C16B41FE7F435A8640BFDDD7C02619"
|
||||
"OwnerKey" = "8:_UNDEFINED"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -93,6 +81,24 @@
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_E7B4BD63601426E59942ECD9791C92FE"
|
||||
"OwnerKey" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_E7B4BD63601426E59942ECD9791C92FE"
|
||||
"OwnerKey" = "8:_4017F0313C0605FD76ED03402317EA35"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_E7B4BD63601426E59942ECD9791C92FE"
|
||||
"OwnerKey" = "8:_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_FCA9C6770F0FB28185373954659263CB"
|
||||
"OwnerKey" = "8:_01C1EAD583CE4AD39778A1F9EC86204D"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
@ -106,25 +112,31 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_538816C3FDB46EF4059CBA054855C473"
|
||||
"OwnerKey" = "8:_11B0506C6E534CED95D82DA0A8EC9F82"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
"OwnerKey" = "8:_6C056EF6608CB813240B81AB2C290472"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_01EA198D017B971B145A17145CE2C5F6"
|
||||
"OwnerKey" = "8:_4017F0313C0605FD76ED03402317EA35"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
"OwnerKey" = "8:_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_E7B4BD63601426E59942ECD9791C92FE"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
}
|
||||
@ -226,37 +238,6 @@
|
||||
}
|
||||
"File"
|
||||
{
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_01EA198D017B971B145A17145CE2C5F6"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.NamedPipes, Version=1.6.0.19770, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_01EA198D017B971B145A17145CE2C5F6"
|
||||
{
|
||||
"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}:_093DBD038821017381C58C1600BB65FF"
|
||||
{
|
||||
"SourcePath" = "8:micasa.dll"
|
||||
@ -277,45 +258,14 @@
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_4017F0313C0605FD76ED03402317EA35"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.InterProcessComm, Version=1.6.0.19770, Culture=neutral, processorArchitecture=MSIL"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.Common, Version=1.6.2503.27769, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_132F57540C1E9FCF17E2DF8360F4B09C"
|
||||
{
|
||||
"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}:_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.Common, Version=1.6.2495.19770, Culture=neutral, processorArchitecture=x86"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_35D7FFD9A5F02B162343D1F3922ADB06"
|
||||
"_4017F0313C0605FD76ED03402317EA35"
|
||||
{
|
||||
"Name" = "8:Novell.CASA.Common.dll"
|
||||
"Attributes" = "3:512"
|
||||
@ -339,14 +289,45 @@
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_538816C3FDB46EF4059CBA054855C473"
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.CASAPol, Version=1.6.2495.19770, Culture=neutral, processorArchitecture=x86"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.NamedPipes, Version=1.6.0.27768, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_538816C3FDB46EF4059CBA054855C473"
|
||||
"_657D0EB8D0C363240B7BB4B3F8031609"
|
||||
{
|
||||
"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:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_6C056EF6608CB813240B81AB2C290472"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:Novell.CASA.CASAPol, Version=1.6.2501.25984, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_6C056EF6608CB813240B81AB2C290472"
|
||||
{
|
||||
"Name" = "8:Novell.CASA.CASAPol.dll"
|
||||
"Attributes" = "3:512"
|
||||
@ -370,6 +351,37 @@
|
||||
"IsDependency" = "11:TRUE"
|
||||
"IsolateTo" = "8:"
|
||||
}
|
||||
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_E7B4BD63601426E59942ECD9791C92FE"
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:AppModule.InterProcessComm, Version=1.6.0.25984, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_E7B4BD63601426E59942ECD9791C92FE"
|
||||
{
|
||||
"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:"
|
||||
}
|
||||
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_FCA9C6770F0FB28185373954659263CB"
|
||||
{
|
||||
"SourcePath" = "8:micasacache.dll"
|
||||
@ -396,6 +408,17 @@
|
||||
}
|
||||
"Folder"
|
||||
{
|
||||
"{C7E34266-2C30-44B9-A9A3-4E394ABD6E18}:_1362415FE8D943B49FA4E4380970C97B"
|
||||
{
|
||||
"Name" = "8:#1927"
|
||||
"AlwaysCreate" = "11:FALSE"
|
||||
"Condition" = "8:"
|
||||
"Transitive" = "11:FALSE"
|
||||
"Property" = "8:GAC"
|
||||
"Folders"
|
||||
{
|
||||
}
|
||||
}
|
||||
"{1525181F-901A-416C-8A58-119130FE478E}:_4913CF477F8E455DA2D13A4A6892F4F7"
|
||||
{
|
||||
"Name" = "8:#1914"
|
||||
@ -504,6 +527,34 @@
|
||||
{
|
||||
}
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_11B0506C6E534CED95D82DA0A8EC9F82"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\sharp\\Novell.Casa\\obj\\Debug\\Novell.Casa.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_1362415FE8D943B49FA4E4380970C97B"
|
||||
"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:FALSE"
|
||||
"IsolateTo" = "8:"
|
||||
"ProjectOutputGroupRegister" = "3:1"
|
||||
"OutputConfiguration" = "8:"
|
||||
"OutputGroupCanonicalName" = "8:Built"
|
||||
"OutputProjectGuid" = "8:{7B56383F-6551-4BCD-81BB-A039BBECBD9C}"
|
||||
"ShowKeyOutput" = "11:TRUE"
|
||||
"ExcludeFilters"
|
||||
{
|
||||
}
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_53A2168DF64E4E9EB3FD5516424E732E"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\micasacache\\Debug\\micasacache.dll"
|
||||
@ -562,7 +613,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_90C16B41FE7F435A8640BFDDD7C02619"
|
||||
{
|
||||
"SourcePath" = "8:..\\..\\..\\..\\logincapture\\windows\\bin\\debug\\lcredmgr.dll"
|
||||
"SourcePath" = "8:..\\..\\..\\..\\logincapture\\windows\\bin\\Debug\\lcredmgr.dll"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_24B477312C8840DB8DF8C1E373E7FC6D"
|
||||
|
Binary file not shown.
@ -1,7 +1,5 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||
# Visual Studio 2005
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "CASA", "CASA.vdproj", "{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}"
|
||||
EndProject
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "CASA-dev-msm", "..\CASA-dev-msm\miCASA-Dev-msm.vdproj", "{51235A10-C83F-4B56-B16D-9DD695F9FB93}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cSample", "..\..\..\..\test\c_sample\CSample.vcproj", "{2635AF48-A4B2-42BD-97E2-A9AD9FF79E8C}"
|
||||
@ -15,14 +13,14 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lcredmgr", "..\..\..\..\Log
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Novell.CASA.miCASAWrapper", "..\..\..\..\sharp\NSSCSWrapper\Novell.CASA.miCASAWrapper.csproj", "{E21DD887-22F4-4935-9851-409715F663B0}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{077B53BB-404A-4B2F-BA17-AAE98C5E9C66} = {077B53BB-404A-4B2F-BA17-AAE98C5E9C66}
|
||||
{E98F1F7E-40B6-44C8-AC66-EC867B141FA1} = {E98F1F7E-40B6-44C8-AC66-EC867B141FA1}
|
||||
{077B53BB-404A-4B2F-BA17-AAE98C5E9C66} = {077B53BB-404A-4B2F-BA17-AAE98C5E9C66}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Novell.CASA.Common", "..\..\..\..\micasad\lib\Novell.CASA.Common.csproj", "{57CD94A2-5B4A-40C3-8189-CB760FB78357}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{077B53BB-404A-4B2F-BA17-AAE98C5E9C66} = {077B53BB-404A-4B2F-BA17-AAE98C5E9C66}
|
||||
{E98F1F7E-40B6-44C8-AC66-EC867B141FA1} = {E98F1F7E-40B6-44C8-AC66-EC867B141FA1}
|
||||
{077B53BB-404A-4B2F-BA17-AAE98C5E9C66} = {077B53BB-404A-4B2F-BA17-AAE98C5E9C66}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CASAManager", "..\..\..\..\gui\CASAManager.csproj", "{A1A805D0-B400-4D11-A772-348CE13F1046}"
|
||||
@ -58,6 +56,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jmicasa", "..\..\..\..\jwra
|
||||
{99988A22-4C58-4BF7-A2DB-57761E76FB26} = {99988A22-4C58-4BF7-A2DB-57761E76FB26}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Novell.Casa.MiCasa", "..\..\..\..\sharp\Novell.Casa.MiCasa\Novell.Casa.MiCasa.csproj", "{7B56383F-6551-4BCD-81BB-A039BBECBD9C}"
|
||||
EndProject
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "CASA", "CASA.vdproj", "{288987CA-24A3-443B-A9D4-018CCF47C9C3}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@ -68,18 +70,6 @@ Global
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Any CPU.ActiveCfg = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Any CPU.Build.0 = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Mixed Platforms.ActiveCfg = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Mixed Platforms.Build.0 = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Win32.ActiveCfg = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Debug|Win32.Build.0 = Debug
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Any CPU.ActiveCfg = Release
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Any CPU.Build.0 = Release
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Mixed Platforms.ActiveCfg = Release
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Mixed Platforms.Build.0 = Release
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Win32.ActiveCfg = Release
|
||||
{C9DC01B9-DBA2-4894-9AA4-A747B71CA384}.Release|Win32.Build.0 = Release
|
||||
{51235A10-C83F-4B56-B16D-9DD695F9FB93}.Debug|Any CPU.ActiveCfg = Debug
|
||||
{51235A10-C83F-4B56-B16D-9DD695F9FB93}.Debug|Any CPU.Build.0 = Debug
|
||||
{51235A10-C83F-4B56-B16D-9DD695F9FB93}.Debug|Mixed Platforms.ActiveCfg = Debug
|
||||
@ -266,6 +256,28 @@ Global
|
||||
{D2BD9955-65B4-4E34-B178-52D71444AE63}.Release|Mixed Platforms.Build.0 = Release|Win32
|
||||
{D2BD9955-65B4-4E34-B178-52D71444AE63}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{D2BD9955-65B4-4E34-B178-52D71444AE63}.Release|Win32.Build.0 = Release|Win32
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Debug|Win32.ActiveCfg = Debug|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{7B56383F-6551-4BCD-81BB-A039BBECBD9C}.Release|Win32.ActiveCfg = Release|Any CPU
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Any CPU.ActiveCfg = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Any CPU.Build.0 = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Mixed Platforms.ActiveCfg = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Mixed Platforms.Build.0 = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Win32.ActiveCfg = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Debug|Win32.Build.0 = Debug
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Any CPU.ActiveCfg = Release
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Any CPU.Build.0 = Release
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Mixed Platforms.ActiveCfg = Release
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Mixed Platforms.Build.0 = Release
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Win32.ActiveCfg = Release
|
||||
{288987CA-24A3-443B-A9D4-018CCF47C9C3}.Release|Win32.Build.0 = Release
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
Binary file not shown.
@ -162,7 +162,7 @@
|
||||
"Name" = "8:.NET Framework"
|
||||
"Message" = "8:[VSDNETMSG]"
|
||||
"Version" = "8:2.0.50727"
|
||||
"AllowLaterVersions" = "11:FALSE"
|
||||
"AllowLaterVersions" = "11:TRUE"
|
||||
"InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=9832"
|
||||
"SupportedRuntimes" = "8:1.1.4322;2.0.50727"
|
||||
}
|
||||
@ -333,14 +333,14 @@
|
||||
{
|
||||
"Name" = "8:Microsoft Visual Studio"
|
||||
"ProductName" = "8:CASA"
|
||||
"ProductCode" = "8:{49AB55EE-5DBD-4992-BC39-65AFFB00C125}"
|
||||
"PackageCode" = "8:{B65108A7-B1EC-488A-8A4F-0E2FFF469C13}"
|
||||
"ProductCode" = "8:{EA80E3ED-8B3E-41AA-8140-DB41B224A280}"
|
||||
"PackageCode" = "8:{841F0620-06FE-48EC-A8D0-271C720A5DB7}"
|
||||
"UpgradeCode" = "8:{DFD8B8A0-EA51-4202-831C-7CD2B90A63AE}"
|
||||
"RestartWWWService" = "11:FALSE"
|
||||
"RemovePreviousVersions" = "11:TRUE"
|
||||
"DetectNewerInstalledVersion" = "11:TRUE"
|
||||
"InstallAllUsers" = "11:FALSE"
|
||||
"ProductVersion" = "8:1.7.936"
|
||||
"InstallAllUsers" = "11:TRUE"
|
||||
"ProductVersion" = "8:1.7.956"
|
||||
"Manufacturer" = "8:Novell"
|
||||
"ARPHELPTELEPHONE" = "8:"
|
||||
"ARPHELPLINK" = "8:"
|
||||
@ -871,7 +871,7 @@
|
||||
{
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_98DCC664712A41B993FCD33026D06FFC"
|
||||
{
|
||||
"SourcePath" = "8:..\\CASA-gui-msm\\Release\\CASA-gui.msm"
|
||||
"SourcePath" = "8:..\\CASA-gui-msm\\Debug\\CASA-gui.msm"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_E8900D5F0BD44DC0BB0BEFDF7C43B30C"
|
||||
@ -924,7 +924,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_A6D188F9B5AF430C92D0B9606ADF4C63"
|
||||
{
|
||||
"SourcePath" = "8:..\\CASA-dev-msm\\Release\\miCASA-Dev-msm.msm"
|
||||
"SourcePath" = "8:..\\CASA-dev-msm\\Debug\\miCASA-Dev-msm.msm"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_E8900D5F0BD44DC0BB0BEFDF7C43B30C"
|
||||
@ -1047,7 +1047,7 @@
|
||||
}
|
||||
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_BF2CE61978054B2DB482792974E390F0"
|
||||
{
|
||||
"SourcePath" = "8:..\\CASA-msm\\Release\\CASA-msm.msm"
|
||||
"SourcePath" = "8:..\\CASA-msm\\Debug\\CASA-msm.msm"
|
||||
"TargetName" = "8:"
|
||||
"Tag" = "8:"
|
||||
"Folder" = "8:_E8900D5F0BD44DC0BB0BEFDF7C43B30C"
|
||||
|
@ -122,7 +122,7 @@ distribution (.tar.gz) file, use configure.
|
||||
(run ./configure --help for more options)
|
||||
|
||||
4. Choose your make target, here are a few interesting ones:
|
||||
make - compile and create binaries
|
||||
make - compile and create binaries, and setup files.
|
||||
|
||||
make clean - clean up binaries
|
||||
|
||||
|
52
CASA/sharp/Novell.Casa.MiCasa/BasicCredential.cs
Normal file
52
CASA/sharp/Novell.Casa.MiCasa/BasicCredential.cs
Normal file
@ -0,0 +1,52 @@
|
||||
/***********************************************************************
|
||||
*
|
||||
* 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
|
||||
{
|
||||
/// <summary>
|
||||
/// Summary description for BasicCredential.
|
||||
/// </summary>
|
||||
public class BasicCredential
|
||||
{
|
||||
|
||||
private string m_username = "";
|
||||
private string m_password = "";
|
||||
|
||||
public BasicCredential(string username, string password)
|
||||
{
|
||||
m_username = username;
|
||||
m_password = password;
|
||||
}
|
||||
|
||||
public string GetUsername()
|
||||
{
|
||||
return m_username;
|
||||
}
|
||||
|
||||
public string GetPassword()
|
||||
{
|
||||
return m_password;
|
||||
}
|
||||
}
|
||||
}
|
BIN
CASA/sharp/Novell.Casa.MiCasa/Casa.snk
Normal file
BIN
CASA/sharp/Novell.Casa.MiCasa/Casa.snk
Normal file
Binary file not shown.
141
CASA/sharp/Novell.Casa.MiCasa/MiCasa.cs
Normal file
141
CASA/sharp/Novell.Casa.MiCasa/MiCasa.cs
Normal file
@ -0,0 +1,141 @@
|
||||
/***********************************************************************
|
||||
*
|
||||
* 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;
|
||||
using Novell.Casa;
|
||||
|
||||
namespace Novell.Casa
|
||||
{
|
||||
/// <summary>
|
||||
/// Summary description for miCASA.
|
||||
/// </summary>
|
||||
public class MiCasa
|
||||
{
|
||||
public static uint USERNAME_TYPE_CN_F = 0x00000000;
|
||||
public static uint USERNAME_TYPE_NDS_DN_F = 0x00000001;
|
||||
public static uint USERNAME_TYPE_NDS_FDN_F = 0x00000002;
|
||||
public static uint USERNAME_TYPE_LDAP_DN_F = 0x00000004;
|
||||
public static uint USERNAME_TYPE_EMAIL_F = 0x00000008;
|
||||
public static uint USERNAME_TYPE_OTHER_F = 0x00000010;
|
||||
|
||||
public MiCasa()
|
||||
{
|
||||
//
|
||||
// TODO: Add constructor logic here
|
||||
//
|
||||
}
|
||||
|
||||
|
||||
public static void SetBasicCredential(
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID,
|
||||
string sUsername,
|
||||
string sPassword)
|
||||
{
|
||||
SetCredential(0, sAppSecretID, sSharedSecretID, 0, sUsername, sPassword);
|
||||
}
|
||||
|
||||
public static string GetCredentialUsername(
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
|
||||
{
|
||||
BasicCredential bc = GetBasicCredential(sAppSecretID, sSharedSecretID);
|
||||
if (bc != null)
|
||||
return bc.GetUsername();
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public static string GetCredentialPassword(
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
|
||||
{
|
||||
BasicCredential bc = GetBasicCredential(sAppSecretID, sSharedSecretID);
|
||||
if (bc != null)
|
||||
return bc.GetPassword();
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public static BasicCredential GetBasicCredential(
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
{
|
||||
return GetCredential(0, sAppSecretID, sSharedSecretID, MiCasa.USERNAME_TYPE_CN_F);
|
||||
}
|
||||
|
||||
public static void RemoveBasicCredential(
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
{
|
||||
RemoveCredential(0, sAppSecretID, sSharedSecretID);
|
||||
}
|
||||
|
||||
|
||||
public static void SetCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID,
|
||||
uint unFlag,
|
||||
string sUsername,
|
||||
string sPassword)
|
||||
{
|
||||
NativeCalls.SetCredential(ssFlags, sAppSecretID, sSharedSecretID, unFlag, NativeCalls.SSCS_CRED_TYPE_BASIC_F, sUsername, sPassword);
|
||||
}
|
||||
|
||||
public static BasicCredential GetCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID,
|
||||
uint unFlag)
|
||||
|
||||
{
|
||||
return NativeCalls.GetCredential(ssFlags, sAppSecretID, sSharedSecretID, unFlag, NativeCalls.SSCS_CRED_TYPE_BASIC_F);
|
||||
}
|
||||
|
||||
public static void RemoveCredential(
|
||||
string sAppSecretID)
|
||||
{
|
||||
RemoveCredential(0, sAppSecretID, null);
|
||||
}
|
||||
|
||||
public static void RemoveCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
{
|
||||
NativeCalls.RemoveCredential(ssFlags, sAppSecretID, sSharedSecretID);
|
||||
}
|
||||
|
||||
|
||||
public static bool IsSecretPersistent(
|
||||
uint ssFlags,
|
||||
string secretID)
|
||||
{
|
||||
return NativeCalls.IsSecretPersistent(ssFlags,secretID);
|
||||
}
|
||||
}
|
||||
}
|
520
CASA/sharp/Novell.Casa.MiCasa/MiCasaException.cs
Normal file
520
CASA/sharp/Novell.Casa.MiCasa/MiCasaException.cs
Normal file
@ -0,0 +1,520 @@
|
||||
/***********************************************************************
|
||||
*
|
||||
* 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
|
||||
{
|
||||
/// <summary>
|
||||
/// Summary description for MiCasaException.
|
||||
/// </summary>
|
||||
public class MiCasaException:Exception
|
||||
{
|
||||
|
||||
int m_iException = 0;
|
||||
|
||||
public const int NSSCS_E_OBJECT_NOT_FOUND = -800; //0xFFFFFCE0; /* -800 */
|
||||
|
||||
/**
|
||||
* NICI operations have failed.
|
||||
*/
|
||||
public const int NSSCS_E_NICI_FAILURE = -801;
|
||||
|
||||
/**
|
||||
* Secret ID is not in the User Secret Store.
|
||||
*/
|
||||
public const int NSSCS_E_INVALID_SECRET_ID = -802;
|
||||
|
||||
/**
|
||||
* Some internal operating system services have not been available.
|
||||
*/
|
||||
public const int NSSCS_E_SYSTEM_FAILURE = -803;
|
||||
|
||||
/**
|
||||
* Access to the target SecretStore has been denied.
|
||||
*/
|
||||
public const int NSSCS_E_ACCESS_DENIED = -804;
|
||||
|
||||
/**
|
||||
* Some internal NDS services have not been available.
|
||||
*/
|
||||
public const int NSSCS_E_NDS_INTERNAL_FAILURE = -805;
|
||||
|
||||
/**
|
||||
* Secret has not been initialized with a write.
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_UNINITIALIZED = -806;
|
||||
|
||||
/**
|
||||
* Size of the buffer is not in a nominal range between minimum and maximum.
|
||||
*/
|
||||
public const int NSSCS_E_BUFFER_LEN = -807;
|
||||
|
||||
/**
|
||||
* Client and server components are not of the compatible versions.
|
||||
*/
|
||||
public const int NSSCS_E_INCOMPATIBLE_VERSION = -808;
|
||||
|
||||
/**
|
||||
* SecretStore data on the server has been corrupted.
|
||||
*/
|
||||
public const int NSSCS_E_CORRUPTED_STORE = -809;
|
||||
|
||||
/**
|
||||
* Secret ID already exists in the Secret Store.
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_ID_EXISTS = -810;
|
||||
|
||||
/**
|
||||
* User NDS password has been changed by the administrator.
|
||||
*/
|
||||
public const int NSSCS_E_NDS_PWORD_CHANGED = -811;
|
||||
|
||||
/**
|
||||
* Target NDS User object not found.
|
||||
*/
|
||||
public const int NSSCS_E_INVALID_TARGET_OBJECT = -812;
|
||||
|
||||
/**
|
||||
* Target NDS User object does not have a SecretStore.
|
||||
*/
|
||||
public const int NSSCS_E_STORE_NOT_FOUND = -813;
|
||||
|
||||
/**
|
||||
* SecretStore not on the Network.
|
||||
*/
|
||||
public const int NSSCS_E_SERVICE_NOT_FOUND = -814;
|
||||
|
||||
/**
|
||||
* Length of the Secret ID buffer exceeds the limit.
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_ID_TOO_LONG = -815;
|
||||
|
||||
/**
|
||||
* Length of the Enumeration buffer too int.
|
||||
*/
|
||||
public const int NSSCS_E_ENUM_BUFF_TOO_SHORT = -816;
|
||||
|
||||
/**
|
||||
* User not authenticated.
|
||||
*/
|
||||
public const int NSSCS_E_NOT_AUTHENTICATED = -817;
|
||||
|
||||
/**
|
||||
* Not supported operations.
|
||||
*/
|
||||
public const int NSSCS_E_NOT_SUPPORTED = -818;
|
||||
|
||||
/**
|
||||
* Typed in NDS password not valid.
|
||||
*/
|
||||
public const int NSSCS_E_NDS_PWORD_INVALID = -819;
|
||||
|
||||
/**
|
||||
* Session keys of the client and server NICI are out of sync.
|
||||
*/
|
||||
public const int NSSCS_E_NICI_OUTOF_SYNC = -820;
|
||||
|
||||
/**
|
||||
* Requested service not supported yet.
|
||||
*/
|
||||
public const int NSSCS_E_SERVICE_NOT_SUPPORTED = -821;
|
||||
|
||||
/**
|
||||
* NDS authentication type not supported.
|
||||
*/
|
||||
public const int NSSCS_E_TOKEN_NOT_SUPPORTED = -822;
|
||||
|
||||
/**
|
||||
* Unicode text conversion operation failed.
|
||||
*/
|
||||
public const int NSSCS_E_UNICODE_OP_FAILURE = -823;
|
||||
|
||||
/**
|
||||
* Connection to server is lost.
|
||||
*/
|
||||
public const int NSSCS_E_TRANSPORT_FAILURE = -824;
|
||||
|
||||
/**
|
||||
* Cryptographic operation failed.
|
||||
*/
|
||||
public const int NSSCS_E_CRYPTO_OP_FAILURE = -825;
|
||||
|
||||
/**
|
||||
* Opening a connection to the server failed.
|
||||
*/
|
||||
public const int NSSCS_E_SERVER_CONN_FAILURE = -826;
|
||||
|
||||
/**
|
||||
* Access to server connection failed.
|
||||
*/
|
||||
public const int NSSCS_E_CONN_ACCESS_FAILURE = -827;
|
||||
|
||||
/**
|
||||
* Size of the enumeration buffer exceeds the limit.
|
||||
*/
|
||||
public const int NSSCS_E_ENUM_BUFF_TOO_LONG = -828;
|
||||
|
||||
/**
|
||||
* Size of the Secret buffer exceeds the limit.
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_BUFF_TOO_LONG = -829;
|
||||
|
||||
/**
|
||||
* Length of the Secret ID should be greater than zero.
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_ID_TOO_SHORT = -830;
|
||||
|
||||
/**
|
||||
* Protocol data corrupted on the wire.
|
||||
*/
|
||||
public const int NSSCS_E_CORRUPTED_PACKET_DATA = -831;
|
||||
|
||||
/**
|
||||
* EP password validation failed. Access to the secret denied!
|
||||
*/
|
||||
public const int NSSCS_E_EP_ACCESS_DENIED = -832;
|
||||
|
||||
/**
|
||||
* Schema is not extended to support SecreStore on the target tree.
|
||||
*/
|
||||
public const int NSSCS_E_SCHEMA_NOT_EXTENDED = -833;
|
||||
|
||||
/**
|
||||
* One of the optional service attributes is not instantiated.
|
||||
*/
|
||||
public const int NSSCS_E_ATTR_NOT_FOUND = -834;
|
||||
|
||||
/**
|
||||
* Server has been upgraded and user SecretStore should be updated.
|
||||
*/
|
||||
public const int NSSCS_E_MIGRATION_NEEDED = -835;
|
||||
|
||||
/**
|
||||
* Master password could not be verified to read or unlock the secrets.
|
||||
*/
|
||||
public const int NSSCS_E_MP_PWORD_INVALID = -836;
|
||||
|
||||
/**
|
||||
* Master password has not been set on the SecretStore.
|
||||
*/
|
||||
public const int NSSCS_E_MP_PWORD_NOT_SET = -837;
|
||||
|
||||
/**
|
||||
* Ability to use master password has been disabled.
|
||||
*/
|
||||
public const int NSSCS_E_MP_PWORD_NOT_ALLOWED = -838;
|
||||
|
||||
/**
|
||||
* Not a writeable replica of NDS.
|
||||
*/
|
||||
public const int NSSCS_E_WRONG_REPLICA_TYPE = -839;
|
||||
|
||||
/**
|
||||
* Target attribute is not instantiated in NDS.
|
||||
*
|
||||
* @since 3.0
|
||||
*/
|
||||
public const int NSSCS_E_ATTR_VAL_NOT_FOUND = -840;
|
||||
|
||||
/**
|
||||
* API parameter is not initialized.
|
||||
*
|
||||
* @since 3.0
|
||||
*/
|
||||
public const int NSSCS_E_INVALID_PARAM = -841;
|
||||
|
||||
/**
|
||||
* Connection to SecretStore needs to be over SSL.
|
||||
*
|
||||
* @since 3.0
|
||||
*/
|
||||
public const int NSSCS_E_NEED_SECURE_CHANNEL = -842;
|
||||
|
||||
/**
|
||||
* No server to support the given override configuration is found.
|
||||
*
|
||||
* @since 3.02
|
||||
*/
|
||||
public const int NSSCS_E_CONFIG_NOT_SUPPORTED = -843;
|
||||
|
||||
/**
|
||||
* Attempt to unlock SecretStore failed because the store is not locked.
|
||||
*
|
||||
* @since 3.02
|
||||
*/
|
||||
public const int NSSCS_E_STORE_NOT_LOCKED = -844;
|
||||
|
||||
/**
|
||||
* NDS Replica on the server that holds SecretStore is out of sync with the replica ring.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_TIME_OUT_OF_SYNC = -845;
|
||||
|
||||
/**
|
||||
* Versions of the client dlls don't match.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_VERSION_MISMATCH = -846;
|
||||
|
||||
/**
|
||||
* Buffer supplied for the secret is too short.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_SECRET_BUFF_TOO_SHORT = -847;
|
||||
|
||||
/**
|
||||
* Shared Secret processing and operations failed.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_SH_SECRET_FAILURE = -848;
|
||||
|
||||
/**
|
||||
* Shared Secret parser operations failed.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_PARSER_FAILURE = -849;
|
||||
|
||||
/**
|
||||
* Utf8 string operations failed.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_UTF8_OP_FAILURE = -850;
|
||||
|
||||
/**
|
||||
* Contextless name for LDAP bind does not resolve to a unique DN.
|
||||
*
|
||||
* @since 3.2
|
||||
*/
|
||||
public const int NSSCS_E_CTX_LESS_CN_NOT_UNIQUE = -851;
|
||||
|
||||
/**
|
||||
* Feature not implemented yet.
|
||||
*/
|
||||
public const int NSSCS_E_NOT_IMPLEMENTED = -888;
|
||||
|
||||
/**
|
||||
* Product's BETA life has expired! Official release copy should be purchased.
|
||||
*/
|
||||
public const int NSSCS_E_BETA_EXPIRED = -899;
|
||||
|
||||
|
||||
public MiCasaException()
|
||||
{
|
||||
//
|
||||
// TODO: Add constructor logic here
|
||||
//
|
||||
}
|
||||
|
||||
public MiCasaException(int iException)
|
||||
{
|
||||
m_iException = iException;
|
||||
}
|
||||
|
||||
public string getMessage()
|
||||
{
|
||||
return getMessage(m_iException);
|
||||
}
|
||||
|
||||
public int getErrorCode()
|
||||
{
|
||||
return m_iException;
|
||||
}
|
||||
|
||||
public string getMessage(int iException)
|
||||
{
|
||||
switch (iException)
|
||||
{
|
||||
case NSSCS_E_OBJECT_NOT_FOUND:
|
||||
return "Can't find the target object DN in NDS";
|
||||
|
||||
case NSSCS_E_NICI_FAILURE:
|
||||
return "NICI operations have failed";
|
||||
|
||||
case NSSCS_E_INVALID_SECRET_ID:
|
||||
return "Secret ID is not in the User Secret Store";
|
||||
|
||||
case NSSCS_E_SYSTEM_FAILURE:
|
||||
return "Some internal operating system services have not been available";
|
||||
|
||||
case NSSCS_E_ACCESS_DENIED:
|
||||
return "Access to the target SecretStore has been denied";
|
||||
|
||||
case NSSCS_E_NDS_INTERNAL_FAILURE:
|
||||
return "Some internal NDS services have not been available";
|
||||
|
||||
case NSSCS_E_SECRET_UNINITIALIZED:
|
||||
return "Secret has not been initialized with a write";
|
||||
|
||||
case NSSCS_E_BUFFER_LEN:
|
||||
return "Size of the buffer is not in a nominal range between minimum and maximum";
|
||||
|
||||
case NSSCS_E_INCOMPATIBLE_VERSION:
|
||||
return "Client and server components are not of the compatible versions";
|
||||
|
||||
case NSSCS_E_CORRUPTED_STORE:
|
||||
return "SecretStore data on the server has been corrupted";
|
||||
|
||||
case NSSCS_E_SECRET_ID_EXISTS:
|
||||
return "Secret ID is already in SecretStore";
|
||||
|
||||
case NSSCS_E_NDS_PWORD_CHANGED:
|
||||
return "User NDS password has been changed by the administrator";
|
||||
|
||||
case NSSCS_E_INVALID_TARGET_OBJECT:
|
||||
return "Target NDS User object not found";
|
||||
|
||||
case NSSCS_E_STORE_NOT_FOUND:
|
||||
return "Target NDS User object does not have a SecretStore";
|
||||
|
||||
case NSSCS_E_SERVICE_NOT_FOUND:
|
||||
return "SecretStore not on the Network";
|
||||
|
||||
case NSSCS_E_SECRET_ID_TOO_LONG:
|
||||
return "Length of the Secret ID buffer exceeds the limit";
|
||||
|
||||
case NSSCS_E_ENUM_BUFF_TOO_SHORT:
|
||||
return "Length of the Enumeration buffer too short";
|
||||
|
||||
case NSSCS_E_NOT_AUTHENTICATED:
|
||||
return "User not authenticated";
|
||||
|
||||
case NSSCS_E_NOT_SUPPORTED:
|
||||
return "Not supported operations";
|
||||
|
||||
case NSSCS_E_NDS_PWORD_INVALID:
|
||||
return "Typed in NDS password not valid";
|
||||
|
||||
case NSSCS_E_NICI_OUTOF_SYNC:
|
||||
return "Session keys of the client and server NICI are out of sync";
|
||||
|
||||
case NSSCS_E_SERVICE_NOT_SUPPORTED:
|
||||
return "Requested service not supported yet";
|
||||
|
||||
case NSSCS_E_TOKEN_NOT_SUPPORTED:
|
||||
return "NDS authentication type not supported";
|
||||
|
||||
case NSSCS_E_UNICODE_OP_FAILURE:
|
||||
return "Unicode text conversion operation failed";
|
||||
|
||||
case NSSCS_E_TRANSPORT_FAILURE:
|
||||
return "Connection to server is lost";
|
||||
|
||||
case NSSCS_E_CRYPTO_OP_FAILURE:
|
||||
return "Cryptographic operation failed";
|
||||
|
||||
case NSSCS_E_SERVER_CONN_FAILURE:
|
||||
return "Opening a connection to the server failed";
|
||||
|
||||
case NSSCS_E_CONN_ACCESS_FAILURE:
|
||||
return "Access to server connection failed";
|
||||
|
||||
case NSSCS_E_ENUM_BUFF_TOO_LONG:
|
||||
return "Size of the enumeration buffer exceeds the limit";
|
||||
|
||||
case NSSCS_E_SECRET_BUFF_TOO_LONG:
|
||||
return "Size of the Secret buffer exceeds the limit";
|
||||
|
||||
case NSSCS_E_SECRET_ID_TOO_SHORT:
|
||||
return "Length of the Secret ID should be greater than zero";
|
||||
|
||||
case NSSCS_E_CORRUPTED_PACKET_DATA:
|
||||
return "Protocol data corrupted on the wire";
|
||||
|
||||
case NSSCS_E_EP_ACCESS_DENIED:
|
||||
return "EP password validation failed. Access to the secret denied";
|
||||
|
||||
case NSSCS_E_SCHEMA_NOT_EXTENDED:
|
||||
return "Schema is not extended to support SecreStore on the target tree";
|
||||
|
||||
case NSSCS_E_ATTR_NOT_FOUND:
|
||||
return "One of the optional service attributes is not instantiated";
|
||||
|
||||
case NSSCS_E_MIGRATION_NEEDED:
|
||||
return "Server has been upgraded and user SecretStore should be updated";
|
||||
|
||||
case NSSCS_E_MP_PWORD_INVALID:
|
||||
return "Master password could not be verified to read or unlock the secrets";
|
||||
|
||||
case NSSCS_E_MP_PWORD_NOT_SET:
|
||||
return "Master password has not been set on the SecretStore";
|
||||
|
||||
case NSSCS_E_MP_PWORD_NOT_ALLOWED:
|
||||
return "Ability to use master password has been disabled";
|
||||
|
||||
case NSSCS_E_WRONG_REPLICA_TYPE:
|
||||
return "Not a writeable replica of NDS";
|
||||
|
||||
case NSSCS_E_ATTR_VAL_NOT_FOUND:
|
||||
return "Target attribute is not instantiated in NDS";
|
||||
|
||||
case NSSCS_E_INVALID_PARAM:
|
||||
return "API parameter is not initialized";
|
||||
|
||||
case NSSCS_E_NEED_SECURE_CHANNEL:
|
||||
return "Connection to SecretStore needs to be over SSL";
|
||||
|
||||
case NSSCS_E_CONFIG_NOT_SUPPORTED:
|
||||
return "No server to support the given override configuration is found";
|
||||
|
||||
case NSSCS_E_STORE_NOT_LOCKED:
|
||||
return "Attempt to unlock SecretStore failed because the store is not locked";
|
||||
|
||||
case NSSCS_E_TIME_OUT_OF_SYNC:
|
||||
return "NDS Replica on the server that holds SecretStore is out of sync with the replica ring";
|
||||
|
||||
case NSSCS_E_VERSION_MISMATCH:
|
||||
return "Versions of the client dlls don't match";
|
||||
|
||||
case NSSCS_E_SECRET_BUFF_TOO_SHORT:
|
||||
return "Buffer supplied for the secret is too short";
|
||||
|
||||
case NSSCS_E_SH_SECRET_FAILURE:
|
||||
return "Shared Secret processing and operations failed";
|
||||
|
||||
case NSSCS_E_PARSER_FAILURE:
|
||||
return "Shared Secret parser operations failed";
|
||||
|
||||
case NSSCS_E_UTF8_OP_FAILURE:
|
||||
return "Utf8 string operations failed";
|
||||
|
||||
case NSSCS_E_CTX_LESS_CN_NOT_UNIQUE:
|
||||
return "Contextless name for LDAP bind does not resolve to a unique DN";
|
||||
|
||||
case NSSCS_E_NOT_IMPLEMENTED:
|
||||
return "Feature not implemented yet";
|
||||
|
||||
case NSSCS_E_BETA_EXPIRED:
|
||||
return "Product's BETA life has expired! Official release copy should be purchased";
|
||||
}
|
||||
|
||||
return "";
|
||||
|
||||
}
|
||||
}
|
||||
}
|
474
CASA/sharp/Novell.Casa.MiCasa/NativeCalls.cs
Normal file
474
CASA/sharp/Novell.Casa.MiCasa/NativeCalls.cs
Normal file
@ -0,0 +1,474 @@
|
||||
/***********************************************************************
|
||||
*
|
||||
* 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;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Collections.Specialized;
|
||||
using System.Collections;
|
||||
|
||||
namespace Novell.Casa
|
||||
{
|
||||
/// <summary>
|
||||
/// Summary description for NativeCalls.
|
||||
/// </summary>
|
||||
public class NativeCalls
|
||||
{
|
||||
private static SSCS_KEYCHAIN_ID_T DefaultKeychainID = null;
|
||||
internal static uint SSCS_CRED_TYPE_BASIC_F = 1;
|
||||
internal static uint SSCS_CRED_TYPE_SERVER_F = 4;
|
||||
private static int USERNAME_LEN = 256;
|
||||
private static int PASSWORD_LEN = 128;
|
||||
|
||||
public NativeCalls()
|
||||
{
|
||||
//
|
||||
// TODO: Add constructor logic here
|
||||
//
|
||||
if (DefaultKeychainID == null)
|
||||
{
|
||||
DefaultKeychainID = new SSCS_KEYCHAIN_ID_T();
|
||||
}
|
||||
}
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_PASSWORD_T
|
||||
{
|
||||
public uint pwordType;
|
||||
public uint pwordLen; // * enhanced protection len & pword to set
|
||||
// [MarshalAs(UnmanagedType.LPStr, SizeConst = 128)]
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
|
||||
public string pword; // * should be passed in # of chars
|
||||
} ;
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_KEYCHAIN_ID_T
|
||||
{
|
||||
public int len;
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]
|
||||
public string keychainID;
|
||||
};
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_SH_SECRET_ID_T
|
||||
{
|
||||
public int type; // The shared secret type i.e. SS_App or SS_CredSet
|
||||
public int len; // except that it excludes the header and is not escaped.
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]
|
||||
public string name; // The shared secret name. This is the same as the identifier
|
||||
};
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_SECRET_STORE_ID_T
|
||||
{
|
||||
public int version; // * max id len in bytes
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]
|
||||
public string id; // * should be passed in # of chars
|
||||
};
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_SECRET_ID_T
|
||||
{
|
||||
public int len; // * max id len in bytes
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]
|
||||
public string id; // * should be passed in # of chars
|
||||
};
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_EXT_T
|
||||
{
|
||||
public int extID; // defined to identify the extension
|
||||
public int version; // defined as the version of the specified extension
|
||||
public IntPtr ext; // points to the actual extension
|
||||
} ;
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_CONTEXT_T
|
||||
{
|
||||
public int version;
|
||||
public int flags;
|
||||
public SSCS_SECRET_ID_T ssid;
|
||||
public UInt64 ssHandle;
|
||||
};
|
||||
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
public class SSCS_BASIC_CREDENTIAL_UTF8
|
||||
{
|
||||
public uint unFlags;
|
||||
public uint unLen;
|
||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
|
||||
public byte[] username;
|
||||
public uint pwordLen;
|
||||
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 128)]
|
||||
public byte[] password;
|
||||
}
|
||||
|
||||
// * The following functions will be exposed as exported API:
|
||||
// **************************************************************
|
||||
// * These function calls will utilize the Support Functions for
|
||||
// * populating or extracting data from a Shared Secret.
|
||||
// **************************************************************
|
||||
|
||||
private const string NDK_LIBRARY = "micasa";
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern int miCASAGetCredential
|
||||
(
|
||||
[In] uint ssFlags,
|
||||
[In] SSCS_SECRET_ID_T appSecretID,
|
||||
[In] SSCS_SECRET_ID_T sharedSecretID,
|
||||
[In, Out] ref uint credentialType,
|
||||
[In, Out] IntPtr pCredential,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern int miCASASetCredential
|
||||
(
|
||||
[In] uint ssFlags,
|
||||
[In] SSCS_SECRET_ID_T appSecretID,
|
||||
[In] SSCS_SECRET_ID_T sharedSecretID,
|
||||
[In] uint credentialType,
|
||||
[In] IntPtr credential,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern int miCASARemoveCredential
|
||||
(
|
||||
[In] uint ssFlags,
|
||||
[In] SSCS_SECRET_ID_T appSecretID,
|
||||
[In] SSCS_SECRET_ID_T sharedSecretID,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern int miCASAIsSecretPersistent
|
||||
(
|
||||
[In] uint ssFlags,
|
||||
[In] SSCS_SECRET_ID_T secretID,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern IntPtr miCASAOpenSecretStoreCache
|
||||
(
|
||||
[In, Out] SSCS_SECRET_STORE_ID_T ssid,
|
||||
uint ssFlags,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
|
||||
[DllImport(NDK_LIBRARY)]
|
||||
internal static extern int miCASACloseSecretStoreCache
|
||||
(
|
||||
[In] IntPtr context,
|
||||
[In] uint ssFlags,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
[DllImport(NDK_LIBRARY, CharSet = CharSet.None)]
|
||||
internal static extern int miCASAWriteKey
|
||||
(
|
||||
[In] IntPtr context,
|
||||
[In] uint ssFlags,
|
||||
[In] SSCS_KEYCHAIN_ID_T keyChainID,
|
||||
[In] SSCS_SH_SECRET_ID_T sharedSecretID,
|
||||
[MarshalAs(UnmanagedType.LPStr)]
|
||||
string key,
|
||||
[In] uint keyLenBytes, // in bytes
|
||||
[MarshalAs(UnmanagedType.LPStr)]
|
||||
string val,
|
||||
[In] uint valueLenBytes, // in bytes
|
||||
[In] SSCS_PASSWORD_T password,
|
||||
[In, Out] SSCS_EXT_T ext
|
||||
);
|
||||
|
||||
|
||||
/// <param name="ssFlags"></param>
|
||||
/// <param name="sAppSecretID"></param>
|
||||
/// <param name="sSharedSecretID"></param>
|
||||
/// <param name="unFlag"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
internal static BasicCredential GetCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID,
|
||||
uint unFlag,
|
||||
uint credType)
|
||||
{
|
||||
if (sAppSecretID == null || sAppSecretID.Length == 0)
|
||||
throw new MiCasaException(MiCasaException.NSSCS_E_INVALID_PARAM);
|
||||
|
||||
int rcode;
|
||||
BasicCredential bc = null;
|
||||
|
||||
SSCS_SECRET_ID_T appSecretID = new SSCS_SECRET_ID_T();
|
||||
appSecretID.id = sAppSecretID;
|
||||
appSecretID.len = sAppSecretID.Length + 1;
|
||||
|
||||
SSCS_SECRET_ID_T sharedID = new SSCS_SECRET_ID_T();
|
||||
if (sSharedSecretID != null)
|
||||
{
|
||||
sharedID.len = sSharedSecretID.Length + 1;
|
||||
sharedID.id = sSharedSecretID;
|
||||
|
||||
}
|
||||
|
||||
SSCS_BASIC_CREDENTIAL_UTF8 credential = new SSCS_BASIC_CREDENTIAL_UTF8();
|
||||
credential.unFlags = unFlag;
|
||||
|
||||
// alloc some memory
|
||||
IntPtr pCredential = Marshal.AllocHGlobal(Marshal.SizeOf(credential));
|
||||
Marshal.StructureToPtr(credential, pCredential, false);
|
||||
|
||||
try
|
||||
{
|
||||
rcode = miCASAGetCredential(
|
||||
ssFlags,
|
||||
appSecretID,
|
||||
sharedID,
|
||||
ref credType,
|
||||
pCredential,
|
||||
new SSCS_EXT_T()
|
||||
);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//Console.WriteLine(e.ToString());
|
||||
Marshal.FreeHGlobal(pCredential);
|
||||
throw new MiCasaException(-803);
|
||||
}
|
||||
|
||||
if (rcode == 0)
|
||||
{
|
||||
Marshal.PtrToStructure(pCredential, credential);
|
||||
string sUsername = GetStringFromUTF8(credential.username, (int)credential.unLen - 1);
|
||||
string sPassword = GetStringFromUTF8(credential.password, (int)credential.pwordLen - 1);
|
||||
|
||||
bc = new BasicCredential(sUsername, sPassword);
|
||||
Marshal.FreeHGlobal(pCredential);
|
||||
return bc;
|
||||
}
|
||||
else
|
||||
{
|
||||
Marshal.FreeHGlobal(pCredential);
|
||||
throw new MiCasaException(rcode);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
internal static void SetCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID,
|
||||
uint unFlag,
|
||||
uint uCredType,
|
||||
string sUsername,
|
||||
string sPassword)
|
||||
{
|
||||
|
||||
if (sAppSecretID == null || sUsername == null || sPassword == null
|
||||
|| sAppSecretID.Length == 0 || sUsername.Length == 0 || sPassword.Length == 0)
|
||||
throw new MiCasaException(MiCasaException.NSSCS_E_INVALID_PARAM);
|
||||
|
||||
int rcode;
|
||||
|
||||
SSCS_SECRET_ID_T appSecretID = new SSCS_SECRET_ID_T();
|
||||
appSecretID.id = sAppSecretID;
|
||||
appSecretID.len = sAppSecretID.Length + 1;
|
||||
|
||||
SSCS_SECRET_ID_T sharedID = new SSCS_SECRET_ID_T();
|
||||
if (sSharedSecretID != null)
|
||||
{
|
||||
sharedID.len = sSharedSecretID.Length + 1;
|
||||
sharedID.id = sSharedSecretID;
|
||||
}
|
||||
|
||||
SSCS_BASIC_CREDENTIAL_UTF8 credential = new SSCS_BASIC_CREDENTIAL_UTF8();
|
||||
credential.unFlags = unFlag;
|
||||
|
||||
credential.unLen = GetUTF8ByteCount(sUsername) + 1;
|
||||
credential.username = GetUTF8FromString(sUsername, USERNAME_LEN);
|
||||
|
||||
credential.pwordLen = GetUTF8ByteCount(sPassword) + 1;
|
||||
credential.password = GetUTF8FromString(sPassword, PASSWORD_LEN);
|
||||
|
||||
IntPtr pCredential = Marshal.AllocHGlobal(Marshal.SizeOf(credential));
|
||||
|
||||
Marshal.StructureToPtr(credential, pCredential, true);
|
||||
|
||||
rcode = miCASASetCredential
|
||||
(ssFlags,
|
||||
appSecretID,
|
||||
sharedID,
|
||||
uCredType,
|
||||
pCredential,
|
||||
new SSCS_EXT_T()
|
||||
);
|
||||
|
||||
if (rcode != 0)
|
||||
{
|
||||
throw new MiCasaException(rcode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
internal static void RemoveCredential(
|
||||
uint ssFlags,
|
||||
string sAppSecretID,
|
||||
string sSharedSecretID)
|
||||
{
|
||||
if (sAppSecretID == null || sAppSecretID.Length == 0)
|
||||
throw new MiCasaException(MiCasaException.NSSCS_E_INVALID_PARAM);
|
||||
|
||||
int rcode;
|
||||
SSCS_SECRET_ID_T appSecretID = new SSCS_SECRET_ID_T();
|
||||
appSecretID.id = sAppSecretID;
|
||||
appSecretID.len = sAppSecretID.Length + 1;
|
||||
|
||||
SSCS_SECRET_ID_T sharedID = new SSCS_SECRET_ID_T();
|
||||
if (sSharedSecretID != null)
|
||||
{
|
||||
sharedID.len = sSharedSecretID.Length + 1;
|
||||
sharedID.id = sSharedSecretID;
|
||||
}
|
||||
|
||||
rcode = miCASARemoveCredential(ssFlags, appSecretID, sharedID, new SSCS_EXT_T());
|
||||
|
||||
if (rcode != 0)
|
||||
{
|
||||
throw new MiCasaException(rcode);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
internal static bool IsSecretPersistent(uint ssFlags, string id)
|
||||
{
|
||||
int rcode = 0;
|
||||
|
||||
SSCS_SECRET_ID_T secretID = new SSCS_SECRET_ID_T();
|
||||
try
|
||||
{
|
||||
if (ssFlags == 0)
|
||||
{
|
||||
if ((null == id) || ("" == id))
|
||||
return false;
|
||||
|
||||
secretID.len = id.Length;
|
||||
secretID.id = id;
|
||||
rcode = miCASAIsSecretPersistent(ssFlags,
|
||||
secretID,
|
||||
new SSCS_EXT_T());
|
||||
}
|
||||
else
|
||||
{
|
||||
rcode = miCASAIsSecretPersistent(ssFlags,
|
||||
null,
|
||||
new SSCS_EXT_T());
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//Console.WriteLine(e.ToString());
|
||||
}
|
||||
|
||||
|
||||
if (rcode == 1)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
// helper methods
|
||||
private static string GetStringFromUTF8(byte[] utf8Bytes, int numBytes)
|
||||
{
|
||||
if (numBytes > 0)
|
||||
{
|
||||
Decoder utfDec = System.Text.Encoding.UTF8.GetDecoder();
|
||||
int charCount = utfDec.GetCharCount(utf8Bytes, 0, numBytes);
|
||||
char[] chars = new char[charCount];
|
||||
int len = utfDec.GetChars(utf8Bytes, 0, numBytes, chars, 0);
|
||||
|
||||
string text = new string(chars);
|
||||
text = text.Trim();
|
||||
return text;
|
||||
}
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
private static uint GetUTF8ByteCount(string str)
|
||||
{
|
||||
uint byteCount = (uint)System.Text.Encoding.UTF8.GetEncoder().GetByteCount(str.ToCharArray(), 0, str.Length, true);
|
||||
return byteCount;
|
||||
}
|
||||
|
||||
private static byte[] GetUTF8FromString(string str, int arrayLength)
|
||||
{
|
||||
// NOTE: Must return a padded array of arrayLength
|
||||
Encoder utfEnc = System.Text.Encoding.UTF8.GetEncoder();
|
||||
byte[] utf8Bytes = new byte[arrayLength];
|
||||
int len = utfEnc.GetBytes(str.ToCharArray(), 0, str.Length, utf8Bytes, 0, true);
|
||||
return utf8Bytes;
|
||||
}
|
||||
|
||||
|
||||
private static string EscapeReservedChars(string origString)
|
||||
{
|
||||
if (origString == null)
|
||||
return origString;
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < origString.Length; i++)
|
||||
{
|
||||
switch (origString[i])
|
||||
{
|
||||
case ':':
|
||||
{
|
||||
sb.Append("\\");
|
||||
break;
|
||||
}
|
||||
case '\\':
|
||||
{
|
||||
sb.Append("\\");
|
||||
break;
|
||||
}
|
||||
case '=':
|
||||
{
|
||||
sb.Append("\\");
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
sb.Append(origString[i]);
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
53
CASA/sharp/Novell.Casa.MiCasa/Novell.Casa.MiCasa.csproj
Normal file
53
CASA/sharp/Novell.Casa.MiCasa/Novell.Casa.MiCasa.csproj
Normal file
@ -0,0 +1,53 @@
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.50727</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{7B56383F-6551-4BCD-81BB-A039BBECBD9C}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Novell.Casa</RootNamespace>
|
||||
<AssemblyName>Novell.Casa.MiCasa</AssemblyName>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>Casa.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="BasicCredential.cs" />
|
||||
<Compile Include="MiCasa.cs" />
|
||||
<Compile Include="MiCasaException.cs" />
|
||||
<Compile Include="NativeCalls.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Casa.snk" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
35
CASA/sharp/Novell.Casa.MiCasa/Properties/AssemblyInfo.cs
Normal file
35
CASA/sharp/Novell.Casa.MiCasa/Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,35 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("Novell.Casa")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Novell, Inc")]
|
||||
[assembly: AssemblyProduct("Novell.Casa")]
|
||||
[assembly: AssemblyCopyright("Copyright © Novell, Inc 2007")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("abc7b4d6-9303-4957-ba67-58249b5aafe0")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Revision and Build Numbers
|
||||
// by using the '*' as shown below:
|
||||
[assembly: AssemblyVersion("1.7.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.7.0.0")]
|
@ -21,7 +21,7 @@
|
||||
***********************************************************************/
|
||||
|
||||
using System;
|
||||
using Novell.CASA;
|
||||
using Novell.Casa;
|
||||
|
||||
namespace cSharpTest
|
||||
{
|
||||
@ -43,7 +43,7 @@ namespace cSharpTest
|
||||
static void Main(string[] args)
|
||||
{
|
||||
Console.WriteLine("**************************************************");
|
||||
Console.WriteLine("********** miCASA Sample written in C# ***********");
|
||||
Console.WriteLine("********** MiCasa Sample written in C# ***********");
|
||||
Console.WriteLine("**************************************************");
|
||||
ShowMenu();
|
||||
}
|
||||
@ -102,10 +102,10 @@ namespace cSharpTest
|
||||
{
|
||||
try
|
||||
{
|
||||
//miCASA.SetBasicCredential(sID, null, sUsername, sPassword);
|
||||
miCASA.SetCredential(0, sID, null, miCASA.USERNAME_TYPE_CN_F, sUsername, sPassword);
|
||||
//MiCasa.SetBasicCredential(sID, null, sUsername, sPassword);
|
||||
MiCasa.SetCredential(0, sID, null, MiCasa.USERNAME_TYPE_CN_F, sUsername, sPassword);
|
||||
}
|
||||
catch (miCasaException e)
|
||||
catch (MiCasaException e)
|
||||
{
|
||||
Console.WriteLine(e.getMessage());
|
||||
}
|
||||
@ -127,9 +127,9 @@ namespace cSharpTest
|
||||
{
|
||||
try
|
||||
{
|
||||
miCASA.RemoveBasicCredential(sID, null);
|
||||
MiCasa.RemoveBasicCredential(sID, null);
|
||||
}
|
||||
catch (miCasaException e)
|
||||
catch (MiCasaException e)
|
||||
{
|
||||
Console.WriteLine(e.getMessage());
|
||||
}
|
||||
@ -145,8 +145,8 @@ namespace cSharpTest
|
||||
try
|
||||
{
|
||||
BasicCredential bc;
|
||||
//bc = miCASA.GetBasicCredential(sID, null);
|
||||
bc = miCASA.GetCredential(0, sID, null, miCASA.USERNAME_TYPE_CN_F);
|
||||
//bc = MiCasa.GetBasicCredential(sID, null);
|
||||
bc = MiCasa.GetCredential(0, sID, null, MiCasa.USERNAME_TYPE_CN_F);
|
||||
if (bc != null)
|
||||
{
|
||||
Console.WriteLine("Data for "+sID);
|
||||
@ -162,7 +162,7 @@ namespace cSharpTest
|
||||
else
|
||||
Console.WriteLine(sID + " not found");
|
||||
}
|
||||
catch (miCasaException e)
|
||||
catch (MiCasaException e)
|
||||
{
|
||||
Console.WriteLine(e.getMessage());
|
||||
}
|
||||
@ -192,7 +192,7 @@ namespace cSharpTest
|
||||
Console.Write("Setting Credential .....");
|
||||
try
|
||||
{
|
||||
miCASA.SetBasicCredential(APPID, null, USERNAME, PASSWORD);
|
||||
MiCasa.SetBasicCredential(APPID, null, USERNAME, PASSWORD);
|
||||
Console.WriteLine("Succeeded");
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -209,7 +209,7 @@ namespace cSharpTest
|
||||
Console.WriteLine("Getting Credential .....");
|
||||
try
|
||||
{
|
||||
BasicCredential bc = miCASA.GetBasicCredential(APPID, null);
|
||||
BasicCredential bc = MiCasa.GetBasicCredential(APPID, null);
|
||||
if (bc != null)
|
||||
{
|
||||
if (bc.GetUsername().Equals(USERNAME))
|
||||
@ -230,7 +230,7 @@ namespace cSharpTest
|
||||
try
|
||||
{
|
||||
Console.WriteLine("\r\nRemoving Credential");
|
||||
miCASA.RemoveBasicCredential(APPID, null);
|
||||
MiCasa.RemoveBasicCredential(APPID, null);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@ -240,7 +240,7 @@ namespace cSharpTest
|
||||
|
||||
try
|
||||
{
|
||||
BasicCredential bc = miCASA.GetBasicCredential(APPID, null);
|
||||
BasicCredential bc = MiCasa.GetBasicCredential(APPID, null);
|
||||
if (bc != null)
|
||||
{
|
||||
Console.WriteLine("\r\nCredential exists and should not - FAILED!");
|
||||
|
@ -82,11 +82,6 @@
|
||||
<Reference Include="System.Xml">
|
||||
<Name>System.XML</Name>
|
||||
</Reference>
|
||||
<ProjectReference Include="..\..\sharp\NSSCSWrapper\Novell.CASA.miCASAWrapper.csproj">
|
||||
<Name>Novell.CASA.miCASAWrapper</Name>
|
||||
<Project>{E21DD887-22F4-4935-9851-409715F663B0}</Project>
|
||||
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="App.ico" />
|
||||
@ -97,6 +92,12 @@
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\sharp\Novell.Casa.MiCasa\Novell.Casa.MiCasa.csproj">
|
||||
<Project>{7B56383F-6551-4BCD-81BB-A039BBECBD9C}</Project>
|
||||
<Name>Novell.Casa.MiCasa</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PreBuildEvent>
|
||||
|
Loading…
Reference in New Issue
Block a user