diff --git a/CASA-auth-token/client/authclient.sln b/CASA-auth-token/client/authclient.sln
index 68a6d7db..54a56f16 100644
--- a/CASA-auth-token/client/authclient.sln
+++ b/CASA-auth-token/client/authclient.sln
@@ -29,14 +29,24 @@ Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "authtokenclientdevel_msi",
{BCFF2C8D-3896-4019-BB15-0AB686D6F920} = {BCFF2C8D-3896-4019-BB15-0AB686D6F920}
EndProjectSection
EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "authtokenclient64_msm", "package\windows\authtokenclient64_msm\authtokenclient64_msm.vdproj", "{8B51B0A7-CA38-43DA-8989-58E6508BF2F9}"
+EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "authtokenclient64_msi", "package\windows\authtokenclient64_msi\authtokenclient64_msi.vdproj", "{EC98E4C3-9C61-45F4-8E48-4A258BBFD534}"
+EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "authtokenclientdevel64_msm", "package\windows\authtokenclientdevel64_msm\authtokenclientdevel64_msm.vdproj", "{A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}"
+EndProject
+Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "authtokenclientdevel64_msi", "package\windows\authtokenclientdevel64_msi\authtokenclientdevel64_msi.vdproj", "{216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C8405908-5026-4E77-B02F-9259856A17E8}.Debug|Any CPU.ActiveCfg = Debug
@@ -45,92 +55,182 @@ Global
{C8405908-5026-4E77-B02F-9259856A17E8}.Debug|Mixed Platforms.Build.0 = Debug
{C8405908-5026-4E77-B02F-9259856A17E8}.Debug|Win32.ActiveCfg = Debug
{C8405908-5026-4E77-B02F-9259856A17E8}.Debug|Win32.Build.0 = Debug
+ {C8405908-5026-4E77-B02F-9259856A17E8}.Debug|x64.ActiveCfg = Debug
+ {C8405908-5026-4E77-B02F-9259856A17E8}.Debug|x64.Build.0 = Debug
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Any CPU.ActiveCfg = Release
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Any CPU.Build.0 = Release
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Mixed Platforms.ActiveCfg = Release
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Mixed Platforms.Build.0 = Release
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Win32.ActiveCfg = Release
{C8405908-5026-4E77-B02F-9259856A17E8}.Release|Win32.Build.0 = Release
+ {C8405908-5026-4E77-B02F-9259856A17E8}.Release|x64.ActiveCfg = Release
+ {C8405908-5026-4E77-B02F-9259856A17E8}.Release|x64.Build.0 = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Any CPU.ActiveCfg = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Any CPU.Build.0 = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Mixed Platforms.ActiveCfg = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Mixed Platforms.Build.0 = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Win32.ActiveCfg = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|Win32.Build.0 = Debug
+ {7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|x64.ActiveCfg = Debug
+ {7B174382-8BE8-4F2A-A122-4FCEE849A776}.Debug|x64.Build.0 = Debug
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Any CPU.ActiveCfg = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Any CPU.Build.0 = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Mixed Platforms.ActiveCfg = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Mixed Platforms.Build.0 = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Win32.ActiveCfg = Release
{7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|Win32.Build.0 = Release
+ {7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|x64.ActiveCfg = Release
+ {7B174382-8BE8-4F2A-A122-4FCEE849A776}.Release|x64.Build.0 = Release
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|Any CPU.ActiveCfg = Debug|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|Win32.ActiveCfg = Debug|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|Win32.Build.0 = Debug|Win32
+ {7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Debug|x64.ActiveCfg = Debug|x64
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|Any CPU.ActiveCfg = Release|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|Mixed Platforms.Build.0 = Release|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|Win32.ActiveCfg = Release|Win32
{7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|Win32.Build.0 = Release|Win32
+ {7BD9A5DB-DE7D-40B7-A397-04182DC2F632}.Release|x64.ActiveCfg = Release|x64
{5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|Any CPU.ActiveCfg = Debug|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|Win32.ActiveCfg = Debug|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|Win32.Build.0 = Debug|Win32
+ {5499F624-F371-4559-B4C2-A484BCE892FD}.Debug|x64.ActiveCfg = Debug|x64
{5499F624-F371-4559-B4C2-A484BCE892FD}.Release|Any CPU.ActiveCfg = Release|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Release|Mixed Platforms.Build.0 = Release|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Release|Win32.ActiveCfg = Release|Win32
{5499F624-F371-4559-B4C2-A484BCE892FD}.Release|Win32.Build.0 = Release|Win32
+ {5499F624-F371-4559-B4C2-A484BCE892FD}.Release|x64.ActiveCfg = Release|x64
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|Any CPU.ActiveCfg = Debug|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|Win32.ActiveCfg = Debug|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|Win32.Build.0 = Debug|Win32
+ {CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Debug|x64.ActiveCfg = Debug|x64
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|Any CPU.ActiveCfg = Release|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|Mixed Platforms.Build.0 = Release|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|Win32.ActiveCfg = Release|Win32
{CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|Win32.Build.0 = Release|Win32
+ {CBD168E8-1D5F-4D75-9E2D-6970CCEB652E}.Release|x64.ActiveCfg = Release|x64
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|Any CPU.ActiveCfg = Debug|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|Win32.ActiveCfg = Debug|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|Win32.Build.0 = Debug|Win32
+ {6034EBF1-0838-45C4-A538-A41A31EC8F46}.Debug|x64.ActiveCfg = Debug|x64
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|Any CPU.ActiveCfg = Release|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|Mixed Platforms.Build.0 = Release|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|Win32.ActiveCfg = Release|Win32
{6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|Win32.Build.0 = Release|Win32
+ {6034EBF1-0838-45C4-A538-A41A31EC8F46}.Release|x64.ActiveCfg = Release|x64
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|Win32.ActiveCfg = Debug|Any CPU
+ {1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Debug|x64.ActiveCfg = Debug|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|Any CPU.Build.0 = Release|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|Win32.ActiveCfg = Release|Any CPU
+ {1BA1FC97-5AF1-4506-A7FD-EBFD46D361A0}.Release|x64.ActiveCfg = Release|Any CPU
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Any CPU.ActiveCfg = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Any CPU.Build.0 = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Mixed Platforms.ActiveCfg = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Mixed Platforms.Build.0 = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Win32.ActiveCfg = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|Win32.Build.0 = Debug
+ {BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|x64.ActiveCfg = Debug
+ {BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Debug|x64.Build.0 = Debug
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Any CPU.ActiveCfg = Release
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Any CPU.Build.0 = Release
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Mixed Platforms.ActiveCfg = Release
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Mixed Platforms.Build.0 = Release
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Win32.ActiveCfg = Release
{BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|Win32.Build.0 = Release
+ {BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|x64.ActiveCfg = Release
+ {BCFF2C8D-3896-4019-BB15-0AB686D6F920}.Release|x64.Build.0 = Release
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Debug|Any CPU.ActiveCfg = Debug
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Debug|Mixed Platforms.ActiveCfg = Debug
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Debug|Win32.ActiveCfg = Debug
+ {E62A1388-82C9-4AE8-B29E-C9C808B05425}.Debug|x64.ActiveCfg = Debug
+ {E62A1388-82C9-4AE8-B29E-C9C808B05425}.Debug|x64.Build.0 = Debug
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Release|Any CPU.ActiveCfg = Release
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Release|Mixed Platforms.ActiveCfg = Release
{E62A1388-82C9-4AE8-B29E-C9C808B05425}.Release|Win32.ActiveCfg = Release
+ {E62A1388-82C9-4AE8-B29E-C9C808B05425}.Release|x64.ActiveCfg = Release
+ {E62A1388-82C9-4AE8-B29E-C9C808B05425}.Release|x64.Build.0 = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Any CPU.ActiveCfg = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Any CPU.Build.0 = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Mixed Platforms.ActiveCfg = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Mixed Platforms.Build.0 = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Win32.ActiveCfg = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|Win32.Build.0 = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|x64.ActiveCfg = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Debug|x64.Build.0 = Debug
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Any CPU.ActiveCfg = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Any CPU.Build.0 = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Mixed Platforms.ActiveCfg = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Mixed Platforms.Build.0 = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Win32.ActiveCfg = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|Win32.Build.0 = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|x64.ActiveCfg = Release
+ {8B51B0A7-CA38-43DA-8989-58E6508BF2F9}.Release|x64.Build.0 = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Any CPU.ActiveCfg = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Any CPU.Build.0 = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Mixed Platforms.ActiveCfg = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Mixed Platforms.Build.0 = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Win32.ActiveCfg = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|Win32.Build.0 = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|x64.ActiveCfg = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Debug|x64.Build.0 = Debug
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Any CPU.ActiveCfg = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Any CPU.Build.0 = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Mixed Platforms.ActiveCfg = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Mixed Platforms.Build.0 = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Win32.ActiveCfg = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|Win32.Build.0 = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|x64.ActiveCfg = Release
+ {EC98E4C3-9C61-45F4-8E48-4A258BBFD534}.Release|x64.Build.0 = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Any CPU.ActiveCfg = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Any CPU.Build.0 = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Mixed Platforms.ActiveCfg = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Mixed Platforms.Build.0 = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Win32.ActiveCfg = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|Win32.Build.0 = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|x64.ActiveCfg = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Debug|x64.Build.0 = Debug
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Any CPU.ActiveCfg = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Any CPU.Build.0 = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Mixed Platforms.ActiveCfg = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Mixed Platforms.Build.0 = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Win32.ActiveCfg = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|Win32.Build.0 = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|x64.ActiveCfg = Release
+ {A73CCB1F-3ED1-4CF2-BEA6-317E6A7638F5}.Release|x64.Build.0 = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Any CPU.ActiveCfg = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Any CPU.Build.0 = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Mixed Platforms.ActiveCfg = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Mixed Platforms.Build.0 = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Win32.ActiveCfg = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|Win32.Build.0 = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|x64.ActiveCfg = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Debug|x64.Build.0 = Debug
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Any CPU.ActiveCfg = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Any CPU.Build.0 = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Mixed Platforms.ActiveCfg = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Mixed Platforms.Build.0 = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Win32.ActiveCfg = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|Win32.Build.0 = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|x64.ActiveCfg = Release
+ {216FCE3D-A324-4FF7-8E2B-A7DC5B2415FB}.Release|x64.Build.0 = Release
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/CASA-auth-token/client/csharp-api/Novell.Casa.Authtoken/Novell.Casa.Client.csproj b/CASA-auth-token/client/csharp-api/Novell.Casa.Authtoken/Novell.Casa.Client.csproj
index b8799ce8..b408499e 100644
--- a/CASA-auth-token/client/csharp-api/Novell.Casa.Authtoken/Novell.Casa.Client.csproj
+++ b/CASA-auth-token/client/csharp-api/Novell.Casa.Authtoken/Novell.Casa.Client.csproj
@@ -73,6 +73,25 @@
none
prompt
+
+ true
+ bin\x64\Debug\
+ TRACE;DEBUG
+ 285212672
+ full
+ x64
+ prompt
+
+
+ bin\x64\Release\
+ TRACE
+ 285212672
+ true
+
+
+ x64
+ prompt
+
System
diff --git a/CASA-auth-token/client/library/authmech.c b/CASA-auth-token/client/library/authmech.c
index 0675ed12..f0f3b76e 100644
--- a/CASA-auth-token/client/library/authmech.c
+++ b/CASA-auth-token/client/library/authmech.c
@@ -36,7 +36,7 @@ typedef struct _AuthMechMod
{
LIST_ENTRY listEntry;
char *pAuthTypeName;
- int authTypeNameLen;
+ size_t authTypeNameLen;
LIB_HANDLE libHandle;
AuthTokenIf *pAuthTokenIf;
@@ -87,7 +87,7 @@ GetAuthTokenIf(
{
LIST_ENTRY *pListEntry;
AuthMechMod *pAuthMechMod = NULL;
- int authTypeNameLen = strlen(pAuthTypeName);
+ size_t authTypeNameLen = strlen(pAuthTypeName);
// Look if we already have the module in our list
pListEntry = g_authMechModuleListHead.Flink;
@@ -283,7 +283,7 @@ GetAuthMechToken(
if (CASA_SUCCESS(retStatus))
{
char *pAuthToken = NULL;
- uint32_t authTokenBufLen = 0;
+ size_t authTokenBufLen = 0;
// We found a provider for the service, query it for the buffer size
// needed to obtain the authentication token.
diff --git a/CASA-auth-token/client/library/authmsg.c b/CASA-auth-token/client/library/authmsg.c
index 8fe42e9e..4c1fd956 100644
--- a/CASA-auth-token/client/library/authmsg.c
+++ b/CASA-auth-token/client/library/authmsg.c
@@ -181,7 +181,7 @@ BuildAuthenticateMsg(
DbgTrace(0, "-BuildAuthenticateMsg- Buffer allocation error\n", 0);
}
- DbgTrace(1, "-BuildAuthenticateMsg- End, pMsg = %0lX\n", (long) pMsg);
+ DbgTrace(1, "-BuildAuthenticateMsg- End, pMsg = 0x%X\n", pMsg);
return pMsg;
}
diff --git a/CASA-auth-token/client/library/cache.c b/CASA-auth-token/client/library/cache.c
index 572abe81..2d3b280a 100644
--- a/CASA-auth-token/client/library/cache.c
+++ b/CASA-auth-token/client/library/cache.c
@@ -194,7 +194,7 @@ CreateAuthTokenCacheEntry(
DbgTrace(0, "-CreateAuthTokenCacheEntry- entrySize overflow prevented\n", 0);
}
- DbgTrace(1, "-CreateAuthTokenCacheEntry- End, pEntry = %0lX\n", (long) pEntry);
+ DbgTrace(1, "-CreateAuthTokenCacheEntry- End, pEntry = 0x%X\n", pEntry);
return pEntry;
}
@@ -320,7 +320,7 @@ CreateSessionTokenCacheEntry(
DbgTrace(0, "-CreateSessionTokenCacheEntry- entrySize overflow prevented\n", 0);
}
- DbgTrace(1, "-CreateSessionTokenCacheEntry- End, pEntry = %0lX\n", (long) pEntry);
+ DbgTrace(1, "-CreateSessionTokenCacheEntry- End, pEntry = 0x%X\n", pEntry);
return pEntry;
}
@@ -345,7 +345,7 @@ FreeAuthCacheEntry(
{
WrapperAuthCacheEntry *pWrapperEntry = CONTAINING_RECORD(pEntry, WrapperAuthCacheEntry, entry);
- DbgTrace(1, "-FreeAuthCacheEntry- Start, pEntry = %0lX\n", (long) pEntry);
+ DbgTrace(1, "-FreeAuthCacheEntry- Start, pEntry = 0x%X\n", pEntry);
// Free the entry after clearing the memory holding it since it
// may contain security sensitive data.
@@ -533,7 +533,7 @@ FindSessionTokenEntryInCache(
DbgTrace(0, "-FindSessionTokenEntryInCache- cacheKeyStrLen overflow prevented\n", 0);
}
- DbgTrace(1, "-FindSessionTokenEntryInCache- End, pEntry = %0lX\n", (long) pEntry);
+ DbgTrace(1, "-FindSessionTokenEntryInCache- End, pEntry = 0x%X\n", pEntry);
return pEntry;
}
@@ -661,7 +661,7 @@ FindAuthTokenEntryInCache(
DbgTrace(0, "-FindAuthTokenEntryInCache- keySize overflow prevented\n", 0);
}
- DbgTrace(1, "-FindAuthTokenEntryInCache- End, pEntry = %0lX\n", (long) pEntry);
+ DbgTrace(1, "-FindAuthTokenEntryInCache- End, pEntry = 0x%X\n", pEntry);
return pEntry;
}
diff --git a/CASA-auth-token/client/library/engine.c b/CASA-auth-token/client/library/engine.c
index db7eb19f..ccc46eff 100644
--- a/CASA-auth-token/client/library/engine.c
+++ b/CASA-auth-token/client/library/engine.c
@@ -298,9 +298,10 @@ ObtainAuthTokenFromServer(
IN const char *pServiceName,
IN const char *pHostName,
IN const char *pNormalizedHostName,
+ IN const void *pCredStoreScope,
INOUT char **ppAuthToken,
INOUT int *pTokenLifetime,
- IN void *pCredStoreScope)
+ INOUT bool *pAdvisedToRetry)
//
// Arguments:
//
@@ -318,8 +319,9 @@ ObtainAuthTokenFromServer(
DbgTrace(1, "-ObtainAuthTokenFromServer- Start\n", 0);
- // Initialize output parameter
+ // Initialize output parameters
*ppAuthToken = NULL;
+ *pAdvisedToRetry = false;
// Open Rpc Session to the auth service at the specified host
pRpcSession = OpenRpcSession((g_pATSHostName != NULL) ? g_pATSHostName : pHostName,
@@ -410,6 +412,9 @@ ObtainAuthTokenFromServer(
{
RemoveSessionTokenEntryInCache(pSessionTokenAuthContext->pContext,
pCredStoreScope);
+
+ // Advice that a retry should be attempted
+ *pAdvisedToRetry = true;
}
}
}
@@ -529,9 +534,9 @@ CasaStatus
ObtainAuthTokenInt(
IN const char *pServiceName,
IN const char *pHostName,
+ IN const void *pCredStoreScope,
INOUT char *pAuthTokenBuf,
- INOUT int *pAuthTokenBufLen,
- IN void *pCredStoreScope)
+ INOUT int *pAuthTokenBufLen)
//
// Arguments:
// pServiceName -
@@ -545,6 +550,11 @@ ObtainAuthTokenInt(
// client is trying to authenticate. Note that the name
// can either be a DNS name or a dotted IP address.
//
+// pCredStoreScope -
+// Pointer to CASA structure for scoping credential store access
+// to specific users. This can only be leveraged by applications
+// running in the context of System.
+//
// pAuthTokenBuf -
// Pointer to buffer that will receive the authentication
// token. The length of this buffer is specified by the
@@ -559,12 +569,7 @@ ObtainAuthTokenInt(
// completes or the buffer length required if the function
// fails because the buffer pointed at by pAuthTokenBuf is
// not large enough.
-//
-// pCredStoreScope -
-// Pointer to CASA structure for scoping credential store access
-// to specific users. This can only be leveraged by applications
-// running in the context of System.
-
+//
// Returns:
// Casa Status
//
@@ -645,15 +650,30 @@ ObtainAuthTokenInt(
{
// Initialize to retry in case of failure
int cacheEntryLifetime = DEFAULT_RETRY_LIFETIME;
+ bool advisedToRetry;
// Cache entry created, now try to obtain auth token from the CASA Server
pToken = NULL;
retStatus = ObtainAuthTokenFromServer(pServiceName,
pHostName,
pNormalizedHostName,
+ pCredStoreScope,
&pToken,
&cacheEntryLifetime,
- pCredStoreScope);
+ &advisedToRetry);
+
+ // Retry if not successful and if advised to do so
+ if (!CASA_SUCCESS(retStatus)
+ && advisedToRetry)
+ {
+ retStatus = ObtainAuthTokenFromServer(pServiceName,
+ pHostName,
+ pNormalizedHostName,
+ pCredStoreScope,
+ &pToken,
+ &cacheEntryLifetime,
+ &advisedToRetry);
+ }
// Add the entry to the cache if successful or if the reason that we failed
// was because the server was un-available.
@@ -803,9 +823,9 @@ ObtainAuthToken(
// Call our internal worker
retStatus = ObtainAuthTokenInt(pServiceName,
pHostName,
+ NULL,
pAuthTokenBuf,
- pAuthTokenBufLen,
- NULL);
+ pAuthTokenBufLen);
DbgTrace(1, "-ObtainAuthToken- End, retStatus = %08X\n", retStatus);
@@ -911,11 +931,11 @@ InitializeLibrary(void)
DbgTrace(0, "-InitializeLibrary- DisableSecureConnections setting configured = %s\n", pDisableSecureConnections);
// Adjust the g_rpcFlags variable based on the setting
- if (stricmp(pDisableSecureConnections, "true") == 0)
+ if (_stricmp(pDisableSecureConnections, "true") == 0)
{
g_rpcFlags &= ~SECURE_RPC_FLAG;
}
- else if (stricmp(pDisableSecureConnections, "false") == 0)
+ else if (_stricmp(pDisableSecureConnections, "false") == 0)
{
g_rpcFlags |= SECURE_RPC_FLAG;
}
diff --git a/CASA-auth-token/client/library/getpolicymsg.c b/CASA-auth-token/client/library/getpolicymsg.c
index d7297804..5bd3846f 100644
--- a/CASA-auth-token/client/library/getpolicymsg.c
+++ b/CASA-auth-token/client/library/getpolicymsg.c
@@ -160,7 +160,7 @@ BuildGetAuthPolicyMsg(
DbgTrace(0, "-BuildGetAuthPolicyMsg- Buffer allocation error\n", 0);
}
- DbgTrace(1, "-BuildGetAuthPolicyMsg- End, pMsg = %0lX\n", (long) pMsg);
+ DbgTrace(1, "-BuildGetAuthPolicyMsg- End, pMsg = 0x%X\n", pMsg);
return pMsg;
}
diff --git a/CASA-auth-token/client/library/gettokenmsg.c b/CASA-auth-token/client/library/gettokenmsg.c
index 0db47989..5ab03de9 100644
--- a/CASA-auth-token/client/library/gettokenmsg.c
+++ b/CASA-auth-token/client/library/gettokenmsg.c
@@ -178,7 +178,7 @@ BuildGetAuthTokenMsg(
DbgTrace(0, "-BuildGetAuthTokenMsg- Buffer allocation error\n", 0);
}
- DbgTrace(1, "-BuildGetAuthTokenMsg- End, pMsg = %0lX\n", (long) pMsg);
+ DbgTrace(1, "-BuildGetAuthTokenMsg- End, pMsg = 0x%X\n", pMsg);
return pMsg;
}
diff --git a/CASA-auth-token/client/library/internal.h b/CASA-auth-token/client/library/internal.h
index 6a43a0f5..a019c925 100644
--- a/CASA-auth-token/client/library/internal.h
+++ b/CASA-auth-token/client/library/internal.h
@@ -144,9 +144,9 @@ CasaStatus
ObtainAuthTokenInt(
IN const char *pServiceName,
IN const char *pHostName,
+ IN const void *pCredStoreScope,
INOUT char *pAuthTokenBuf,
- INOUT int *pAuthTokenBufLen,
- IN void *pCredStoreScope);
+ INOUT int *pAuthTokenBufLen);
//
// Functions exported by authmech.c
diff --git a/CASA-auth-token/client/library/mech_if.h b/CASA-auth-token/client/library/mech_if.h
index 4ee59e3f..df49e131 100644
--- a/CASA-auth-token/client/library/mech_if.h
+++ b/CASA-auth-token/client/library/mech_if.h
@@ -87,11 +87,11 @@ CasaStatus
(SSCS_CALL *PFNAuthTokenIf_GetAuthToken)(
IN const void *pIfInstance,
IN const char *pContext,
- IN char *pMechInfo,
+ IN const char *pMechInfo,
IN const char *pHostName,
- IN void *pCredStoreScope,
+ IN void *pCredStoreScope,
INOUT char *pTokenBuf,
- INOUT uint32_t *pTokenBufLen);
+ INOUT size_t *pTokenBufLen);
//
// Arguments:
// pIfInstance -
@@ -159,20 +159,20 @@ typedef
CasaStatus
(SSCS_CALL *PFN_GetAuthTokenIfRtn)(
IN const ConfigIf *pModuleConfigIf,
- IN const int debugLevel,
- IN const char *pDebugFilePath,
+ IN const int debugLevel,
+ IN const char *pDebugFilePath,
INOUT AuthTokenIf **ppAuthTokenIf);
//
// Arguments:
// pModuleConfigIf -
// Pointer to configuration interface instance for the module.
//
-// debugLevel -
-// Level to utilize for debugging, 0 being lowest.
-//
-// pDebugFilePath -
-// Path to debug log file. Can be NULL.
-//
+// debugLevel -
+// Level to utilize for debugging, 0 being lowest.
+//
+// pDebugFilePath -
+// Path to debug log file. Can be NULL.
+//
// ppAuthTokenIf -
// Pointer to variable that will receive pointer to AuthTokenIf
// instance.
diff --git a/CASA-auth-token/client/library/mechanisms/krb5/internal.h b/CASA-auth-token/client/library/mechanisms/krb5/internal.h
index f323b250..f2f1b8ec 100644
--- a/CASA-auth-token/client/library/mechanisms/krb5/internal.h
+++ b/CASA-auth-token/client/library/mechanisms/krb5/internal.h
@@ -58,7 +58,7 @@ CasaStatus SSCS_CALL
AuthTokenIf_GetAuthToken(
IN const void *pIfInstance,
IN const char *pContext,
- IN char *pMechInfo,
+ IN const char *pMechInfo,
IN const char *pHostName,
IN void *pCredStoreScope,
INOUT char *pTokenBuf,
diff --git a/CASA-auth-token/client/library/mechanisms/krb5/util.c b/CASA-auth-token/client/library/mechanisms/krb5/util.c
index a6512faa..f3e06ce3 100644
--- a/CASA-auth-token/client/library/mechanisms/krb5/util.c
+++ b/CASA-auth-token/client/library/mechanisms/krb5/util.c
@@ -34,7 +34,7 @@
// Debug Level and debug log file path.
int KrbMechDebugLevel = 0;
-char *pKrbMechDebugLogFilePath = NULL;
+char *pKrbMechDebugLogFilePath = NULL;
// Tables for Base64 encoding and decoding
static const int8_t g_Base64[] =
diff --git a/CASA-auth-token/client/library/mechanisms/krb5/windows/get.c b/CASA-auth-token/client/library/mechanisms/krb5/windows/get.c
index 799fcb6e..790c65d4 100644
--- a/CASA-auth-token/client/library/mechanisms/krb5/windows/get.c
+++ b/CASA-auth-token/client/library/mechanisms/krb5/windows/get.c
@@ -39,7 +39,7 @@ CasaStatus SSCS_CALL
AuthTokenIf_GetAuthToken(
IN const void *pIfInstance,
IN const char *pContext,
- IN char *pMechInfo,
+ IN const char *pMechInfo,
IN const char *pHostName,
IN void *pCredStoreScope,
INOUT char *pTokenBuf,
@@ -122,32 +122,53 @@ AuthTokenIf_GetAuthToken(
// Process any mechanism information that may have been provided
if (pMechInfo)
{
- // Mechanism information has been provided. Mechanism information
- // consists of semicolon delimited settings. The settings are formated
- // using the format settingName=settingvalue. No white space is allowed
- // as part of the mechanism information.
- char *pNextSettingToken;
- char *pSettingValueToken = strtok_r(pMechInfo, ";", &pNextSettingToken);
- while (pSettingValueToken != NULL)
- {
- char *pNextToken;
- char *pSettingName = strtok_r(pSettingValueToken, "=", &pNextToken);
- char *pSettingValue = strtok_r(NULL, "=", &pNextToken);
- if (pSettingValue)
- {
- // Process the setting
- if (strcmpi(pSettingName, "SVC_PRINCIPAL") == 0)
- {
- pKrbServiceName = pSettingValue;
- }
- }
- else
- {
- DbgTrace(0, "-AuthTokenIf_GetAuthToken- Bad setting\n", 0);
- }
+ // Allocate a buffer to hold the mech info so that we can manipulate it
+ char *pMechInfoInt = malloc(strlen(pMechInfo) + 1);
+ if (pMechInfoInt)
+ {
+ char *pNextSettingToken;
+ char *pSettingValueToken;
- pSettingValueToken = strtok_r(NULL, ";", &pNextSettingToken);
- }
+ // Copy the mechanism info to our work buffer
+ strcpy(pMechInfoInt, pMechInfo);
+
+ // Mechanism information has been provided. Mechanism information
+ // consists of semicolon delimited settings. The settings are formated
+ // using the format settingName=settingvalue. No white space is allowed
+ // as part of the mechanism information.
+ pSettingValueToken = strtok_r(pMechInfoInt, ";", &pNextSettingToken);
+ while (pSettingValueToken != NULL)
+ {
+ char *pNextToken;
+ char *pSettingName = strtok_r(pSettingValueToken, "=", &pNextToken);
+ char *pSettingValue = strtok_r(NULL, "=", &pNextToken);
+ if (pSettingValue)
+ {
+ // Process the setting
+ if (stricmp(pSettingName, "SVC_PRINCIPAL") == 0)
+ {
+ pKrbServiceName = pSettingValue;
+ }
+ }
+ else
+ {
+ DbgTrace(0, "-AuthTokenIf_GetAuthToken- Bad setting\n", 0);
+ }
+
+ pSettingValueToken = strtok_r(NULL, ";", &pNextSettingToken);
+ }
+
+ // Free the buffer that we allocated
+ free(pMechInfoInt);
+ }
+ else
+ {
+ DbgTrace(0, "-AuthTokenIf_GetAuthToken- Buffer allocation failure\n", 0);
+ retStatus = CasaStatusBuild(CASA_SEVERITY_ERROR,
+ CASA_FACILITY_PWTOKEN,
+ CASA_STATUS_INVALID_PARAMETER);
+ goto exit;
+ }
}
// Check if we need to construct the service name
diff --git a/CASA-auth-token/client/library/mechanisms/krb5/windows/krb5.vcproj b/CASA-auth-token/client/library/mechanisms/krb5/windows/krb5.vcproj
index 26619e70..53287c64 100644
--- a/CASA-auth-token/client/library/mechanisms/krb5/windows/krb5.vcproj
+++ b/CASA-auth-token/client/library/mechanisms/krb5/windows/krb5.vcproj
@@ -102,88 +102,6 @@
CommandLine="mkdir \"Program Files"\novell\
mkdir \"Program Files"\novell\casa
mkdir \"Program Files"\novell\casa\lib\
mkdir \"Program Files"\novell\casa\etc\
mkdir \"Program Files"\novell\casa\etc\auth\
mkdir \"Program Files"\novell\casa\etc\auth\mechanisms\
copy Krb5Authenticate.conf \"Program Files"\novell\casa\etc\auth\mechanisms\Krb5Authenticate.conf
copy $(OutDir)\krb5mech.dll \"Program Files"\novell\casa\lib\krb5mech.dll
"
/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- *
- ***********************************************************************/
-
-#ifndef _PLATFORM_H_
-#define _PLATFORM_H_
-
-//===[ Include files ]=====================================================
-
-#include
-#include
-#include
-#include
-#include
-
-//===[ Type definitions ]==================================================
-
-#ifndef CONTAINING_RECORD
-#define CONTAINING_RECORD(address, type, field) ((type *)( \
- (char*)(address) - \
- (char*)(&((type *)0)->field)))
-#endif
-
-//
-// DbgTrace macro define
-//
-//#define DbgTrace(LEVEL, X, Y) { \
-//char printBuff[256]; \
-// if (LEVEL == 0 || DebugLevel >= LEVEL) \
-// { \
-// _snprintf(printBuff, sizeof(printBuff), X, Y); \
-// printf("Krb5Mech %s", printBuff); \
-// } \
-//}
-#define DbgTrace(LEVEL, X, Y) { \
-char formatBuff[128]; \
-char printBuff[256]; \
+/***********************************************************************
+ *
+ * Copyright (C) 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.
+ *
+ * Author: Juan Carlos Luciani
+ *
+ ***********************************************************************/
+
+#ifndef _PLATFORM_H_
+#define _PLATFORM_H_
+
+//===[ Include files ]=====================================================
+
+#include
+#include
+#include
+#include
+#include
+
+//===[ Type definitions ]==================================================
+
+#ifndef CONTAINING_RECORD
+#define CONTAINING_RECORD(address, type, field) ((type *)( \
+ (char*)(address) - \
+ (char*)(&((type *)0)->field)))
+#endif
+
+//
+// DbgTrace macro define
+//
+//#define DbgTrace(LEVEL, X, Y) { \
+//char printBuff[256]; \
+// if (LEVEL == 0 || DebugLevel >= LEVEL) \
+// { \
+// _snprintf(printBuff, sizeof(printBuff), X, Y); \
+// printf("Krb5Mech %s", printBuff); \
+// } \
+//}
+#define DbgTrace(LEVEL, X, Y) { \
+char formatBuff[128]; \
+char printBuff[256]; \
FILE *pDebugFile; \
- if (LEVEL == 0 || KrbMechDebugLevel >= LEVEL) \
- { \
- strcpy(formatBuff, "Krb5Mech "); \
- strncat(formatBuff, X, sizeof(formatBuff) - 9); \
- _snprintf(printBuff, sizeof(printBuff), formatBuff, Y); \
- if (pKrbMechDebugLogFilePath) \
- { \
+ if (LEVEL == 0 || KrbMechDebugLevel >= LEVEL) \
+ { \
+ strcpy(formatBuff, "Krb5Mech "); \
+ strncat(formatBuff, X, sizeof(formatBuff) - 9); \
+ _snprintf(printBuff, sizeof(printBuff), formatBuff, Y); \
+ if (pKrbMechDebugLogFilePath) \
+ { \
pDebugFile = fopen(pKrbMechDebugLogFilePath, "a+"); \
- if (pDebugFile) \
- { \
- fwrite(printBuff, strlen(printBuff), 1, pDebugFile); \
- fclose(pDebugFile); \
- } \
- } \
- else \
- OutputDebugString(printBuff); \
- } \
-}
-
-#define INT32_MAX (2147483647)
-#define UINT32_MAX (4294967295U)
-#define bool BOOLEAN
-#define true TRUE
-#define false FALSE
-#define strtok_r strtok_s
-
-//===[ Inlines functions ]===============================================
-
-//===[ Function prototypes ]===============================================
-
-//===[ Global externals ]==================================================
-
-//===[ External prototypes ]===============================================
-
-
-//=========================================================================
-
-#endif // _PLATFORM_H_
-
+ if (pDebugFile) \
+ { \
+ fwrite(printBuff, strlen(printBuff), 1, pDebugFile); \
+ fclose(pDebugFile); \
+ } \
+ } \
+ else \
+ OutputDebugString(printBuff); \
+ } \
+}
+
+#define INT32_MAX (2147483647)
+#define UINT32_MAX (4294967295U)
+#define bool BOOLEAN
+#define true TRUE
+#define false FALSE
+#define strtok_r strtok_s
+
+//===[ Inlines functions ]===============================================
+
+//===[ Function prototypes ]===============================================
+
+//===[ Global externals ]==================================================
+
+//===[ External prototypes ]===============================================
+
+
+//=========================================================================
+
+#endif // _PLATFORM_H_
+
diff --git a/CASA-auth-token/client/library/mechanisms/pwd/get.c b/CASA-auth-token/client/library/mechanisms/pwd/get.c
index 6155106b..0cd49d41 100644
--- a/CASA-auth-token/client/library/mechanisms/pwd/get.c
+++ b/CASA-auth-token/client/library/mechanisms/pwd/get.c
@@ -220,7 +220,7 @@ CasaStatus SSCS_CALL
AuthTokenIf_GetAuthToken(
IN const void *pIfInstance,
IN const char *pContext,
- IN char *pMechInfo,
+ IN const char *pMechInfo,
IN const char *pHostName,
IN void *pCredStoreScope,
INOUT char *pTokenBuf,
@@ -302,34 +302,55 @@ AuthTokenIf_GetAuthToken(
// Process any mechanism information that may have been provided
if (pMechInfo)
{
- // Mechanism information has been provided. Mechanism information
- // consists of semicolon delimited settings. The settings are formated
- // using the format settingName=settingvalue. No white space is allowed
- // as part of the mechanism information.
- char *pNextSettingToken;
- char *pSettingValueToken = strtok_r(pMechInfo, ";", &pNextSettingToken);
- while (pSettingValueToken != NULL)
+ // Allocate a buffer to hold the mech info so that we can manipulate it
+ char *pMechInfoInt = malloc(strlen(pMechInfo) + 1);
+ if (pMechInfoInt)
{
- char *pNextToken;
- char *pSettingName = strtok_r(pSettingValueToken, "=", &pNextToken);
- char *pSettingValue = strtok_r(NULL, "=", &pNextToken);
- if (pSettingValue)
+ char *pNextSettingToken;
+ char *pSettingValueToken;
+
+ // Copy the mechanism info to our work buffer
+ strcpy(pMechInfoInt, pMechInfo);
+
+ // Mechanism information has been provided. Mechanism information
+ // consists of semicolon delimited settings. The settings are formated
+ // using the format settingName=settingvalue. No white space is allowed
+ // as part of the mechanism information.
+ pSettingValueToken = strtok_r(pMechInfoInt, ";", &pNextSettingToken);
+ while (pSettingValueToken != NULL)
{
- // Process the setting
- if (strcasecmp(pSettingName, "REALM_CREDENTIALS_ONLY") == 0)
+ char *pNextToken;
+ char *pSettingName = strtok_r(pSettingValueToken, "=", &pNextToken);
+ char *pSettingValue = strtok_r(NULL, "=", &pNextToken);
+ if (pSettingValue)
{
- if (strcasecmp(pSettingValue, "true") == 0)
+ // Process the setting
+ if (strcasecmp(pSettingName, "REALM_CREDENTIALS_ONLY") == 0)
{
- realm_credentials_only = true;
+ if (strcasecmp(pSettingValue, "true") == 0)
+ {
+ realm_credentials_only = true;
+ }
}
}
- }
- else
- {
- DbgTrace(0, "-AuthTokenIf_GetAuthToken- Bad setting\n", 0);
+ else
+ {
+ DbgTrace(0, "-AuthTokenIf_GetAuthToken- Bad setting\n", 0);
+ }
+
+ pSettingValueToken = strtok_r(NULL, ";", &pNextSettingToken);
}
- pSettingValueToken = strtok_r(NULL, ";", &pNextSettingToken);
+ // Free the buffer that we allocated
+ free(pMechInfoInt);
+ }
+ else
+ {
+ DbgTrace(0, "-AuthTokenIf_GetAuthToken- Buffer allocation failure\n", 0);
+ retStatus = CasaStatusBuild(CASA_SEVERITY_ERROR,
+ CASA_FACILITY_PWTOKEN,
+ CASA_STATUS_INVALID_PARAMETER);
+ goto exit;
}
}
diff --git a/CASA-auth-token/client/library/mechanisms/pwd/internal.h b/CASA-auth-token/client/library/mechanisms/pwd/internal.h
index 77725616..847650f9 100644
--- a/CASA-auth-token/client/library/mechanisms/pwd/internal.h
+++ b/CASA-auth-token/client/library/mechanisms/pwd/internal.h
@@ -60,7 +60,7 @@ CasaStatus SSCS_CALL
AuthTokenIf_GetAuthToken(
IN const void *pIfInstance,
IN const char *pContext,
- IN char *pMechInfo,
+ IN const char *pMechInfo,
IN const char *pHostName,
IN void *pCredStoreScope,
INOUT char *pTokenBuf,
diff --git a/CASA-auth-token/client/library/mechanisms/pwd/windows/platform.h b/CASA-auth-token/client/library/mechanisms/pwd/windows/platform.h
index fda3a006..e6abcc65 100644
--- a/CASA-auth-token/client/library/mechanisms/pwd/windows/platform.h
+++ b/CASA-auth-token/client/library/mechanisms/pwd/windows/platform.h
@@ -1,96 +1,96 @@
-/***********************************************************************
- *
- * Copyright (C) 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.
- *
- * Author: Juan Carlos Luciani
- *
- ***********************************************************************/
-
-#ifndef _PLATFORM_H_
-#define _PLATFORM_H_
-
-//===[ Include files ]=====================================================
-
-#include
-#include
-#include
-
-//===[ Type definitions ]==================================================
-
-#ifndef CONTAINING_RECORD
-#define CONTAINING_RECORD(address, type, field) ((type *)( \
- (char*)(address) - \
- (char*)(&((type *)0)->field)))
-#endif
-
-//
-// DbgTrace macro define
-//
-//#define DbgTrace(LEVEL, X, Y) { \
-//char printBuff[256]; \
-// if (LEVEL == 0 || DebugLevel >= LEVEL) \
-// { \
-// _snprintf(printBuff, sizeof(printBuff), X, Y); \
-// printf("PwdMech %s", printBuff); \
-// } \
-//}
-#define DbgTrace(LEVEL, X, Y) { \
-char formatBuff[128]; \
-char printBuff[256]; \
+/***********************************************************************
+ *
+ * Copyright (C) 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.
+ *
+ * Author: Juan Carlos Luciani
+ *
+ ***********************************************************************/
+
+#ifndef _PLATFORM_H_
+#define _PLATFORM_H_
+
+//===[ Include files ]=====================================================
+
+#include
+#include
+#include
+
+//===[ Type definitions ]==================================================
+
+#ifndef CONTAINING_RECORD
+#define CONTAINING_RECORD(address, type, field) ((type *)( \
+ (char*)(address) - \
+ (char*)(&((type *)0)->field)))
+#endif
+
+//
+// DbgTrace macro define
+//
+//#define DbgTrace(LEVEL, X, Y) { \
+//char printBuff[256]; \
+// if (LEVEL == 0 || DebugLevel >= LEVEL) \
+// { \
+// _snprintf(printBuff, sizeof(printBuff), X, Y); \
+// printf("PwdMech %s", printBuff); \
+// } \
+//}
+#define DbgTrace(LEVEL, X, Y) { \
+char formatBuff[128]; \
+char printBuff[256]; \
FILE *pDebugFile; \
- if (LEVEL == 0 || PwdMechDebugLevel >= LEVEL) \
- { \
- strcpy(formatBuff, "CASA_PwdMech "); \
- strncat(formatBuff, X, sizeof(formatBuff) - 8); \
- _snprintf(printBuff, sizeof(printBuff), formatBuff, Y); \
- if (pPwdMechDebugLogFilePath) \
- { \
+ if (LEVEL == 0 || PwdMechDebugLevel >= LEVEL) \
+ { \
+ strcpy(formatBuff, "CASA_PwdMech "); \
+ strncat(formatBuff, X, sizeof(formatBuff) - 8); \
+ _snprintf(printBuff, sizeof(printBuff), formatBuff, Y); \
+ if (pPwdMechDebugLogFilePath) \
+ { \
pDebugFile = fopen(pPwdMechDebugLogFilePath, "a+"); \
- if (pDebugFile) \
- { \
- fwrite(printBuff, strlen(printBuff), 1, pDebugFile); \
- fclose(pDebugFile); \
- } \
- } \
- else \
- OutputDebugString(printBuff); \
- } \
-}
-
-#define INT32_MAX (2147483647)
-#define UINT32_MAX (4294967295U)
-#define bool BOOLEAN
-#define true TRUE
-#define false FALSE
-#define strtok_r strtok_s
-#define strcasecmp strcmpi
-
-//===[ Inlines functions ]===============================================
-
-//===[ Function prototypes ]===============================================
-
-//===[ Global externals ]==================================================
-
-//===[ External prototypes ]===============================================
-
-
-//=========================================================================
-
-#endif // _PLATFORM_H_
-
+ if (pDebugFile) \
+ { \
+ fwrite(printBuff, strlen(printBuff), 1, pDebugFile); \
+ fclose(pDebugFile); \
+ } \
+ } \
+ else \
+ OutputDebugString(printBuff); \
+ } \
+}
+
+#define INT32_MAX (2147483647)
+#define UINT32_MAX (4294967295U)
+#define bool BOOLEAN
+#define true TRUE
+#define false FALSE
+#define strtok_r strtok_s
+#define strcasecmp stricmp
+
+//===[ Inlines functions ]===============================================
+
+//===[ Function prototypes ]===============================================
+
+//===[ Global externals ]==================================================
+
+//===[ External prototypes ]===============================================
+
+
+//=========================================================================
+
+#endif // _PLATFORM_H_
+
diff --git a/CASA-auth-token/client/library/mechanisms/pwd/windows/pwd.vcproj b/CASA-auth-token/client/library/mechanisms/pwd/windows/pwd.vcproj
index 7ddba855..359aaa68 100644
--- a/CASA-auth-token/client/library/mechanisms/pwd/windows/pwd.vcproj
+++ b/CASA-auth-token/client/library/mechanisms/pwd/windows/pwd.vcproj
@@ -103,89 +103,6 @@
CommandLine="mkdir \"Program Files"\novell\
mkdir \"Program Files"\novell\casa
mkdir \"Program Files"\novell\casa\lib\
mkdir \"Program Files"\novell\casa\etc\
mkdir \"Program Files"\novell\casa\etc\auth\
mkdir \"Program Files"\novell\casa\etc\auth\mechanisms\
copy PwdAuthenticate.conf \"Program Files"\novell\casa\etc\auth\mechanisms\PwdAuthenticate.conf
copy $(OutDir)\pwmech.dll \"Program Files"\novell\casa\lib\pwmech.dll
"
/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
= LEVEL) \
{ \
strcpy(formatBuff, "CASA_AuthToken "); \
@@ -63,7 +63,7 @@ FILE *pDebugFile; \
_snprintf(printBuff, sizeof(printBuff), formatBuff, Y); \
if (g_pDebugLogFilePath) \
{ \
- pDebugFile = fopen(g_pDebugLogFilePath, "a+"); \
+ pDebugFile = fopen(g_pDebugLogFilePath, "a+"); \
if (pDebugFile) \
{ \
fwrite(printBuff, strlen(printBuff), 1, pDebugFile); \
diff --git a/CASA-auth-token/client/library/windows/rpc.c b/CASA-auth-token/client/library/windows/rpc.c
index 6ad448eb..f4788828 100644
--- a/CASA-auth-token/client/library/windows/rpc.c
+++ b/CASA-auth-token/client/library/windows/rpc.c
@@ -153,8 +153,8 @@ CopyWideToMultiAlloc(
//++=======================================================================
RpcSession*
OpenRpcSession(
- IN char *pHostName,
- IN uint16_t hostPort)
+ IN const char *pHostName,
+ IN const uint16_t hostPort)
//
// Arguments:
//
@@ -307,7 +307,7 @@ static
void CALLBACK
SecureFailureStatusCallback(
IN HINTERNET hRequest,
- IN DWORD *pContext,
+ IN DWORD_PTR *pContext,
IN DWORD internetStatus,
IN LPVOID pStatusInformation,
IN DWORD statusInformationLength)
diff --git a/CASA-auth-token/client/package/windows/authtokenclient_msi/authtokenclient_msi.vdproj b/CASA-auth-token/client/package/windows/authtokenclient_msi/authtokenclient_msi.vdproj
index 854f7762..17e1d676 100644
--- a/CASA-auth-token/client/package/windows/authtokenclient_msi/authtokenclient_msi.vdproj
+++ b/CASA-auth-token/client/package/windows/authtokenclient_msi/authtokenclient_msi.vdproj
@@ -177,10 +177,10 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:authtokenclient"
"ProductCode" = "8:{6D3AAA36-871A-4427-9311-FC3FE2F17511}"
- "PackageCode" = "8:{9794A10E-6E27-4DDE-8C40-535FA06EB88E}"
+ "PackageCode" = "8:{CDA1542D-6493-4F59-B8BE-22752B63A0AB}"
"UpgradeCode" = "8:{69C5F129-788A-4487-9397-331C0A313A2D}"
"RestartWWWService" = "11:FALSE"
- "RemovePreviousVersions" = "11:FALSE"
+ "RemovePreviousVersions" = "11:TRUE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.0"
@@ -714,5 +714,8 @@
}
}
}
+ "VJSharpPlugin"
+ {
+ }
}
}
diff --git a/CASA-auth-token/client/package/windows/authtokenclient_msm/authtokenclient_msm.vdproj b/CASA-auth-token/client/package/windows/authtokenclient_msm/authtokenclient_msm.vdproj
index a1701b6d..4bf828a8 100644
--- a/CASA-auth-token/client/package/windows/authtokenclient_msm/authtokenclient_msm.vdproj
+++ b/CASA-auth-token/client/package/windows/authtokenclient_msm/authtokenclient_msm.vdproj
@@ -33,18 +33,24 @@
}
"Entry"
{
- "MsmKey" = "8:_71C343EBC4935F8914C3145115EDEC4A"
- "OwnerKey" = "8:_8E623C85FD4143F3B09460457E8ED6CA"
+ "MsmKey" = "8:_65C94F01EA00062BD16ABB7818135818"
+ "OwnerKey" = "8:_75519C9025D94CC496F276E698CE3AF8"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_71C343EBC4935F8914C3145115EDEC4A"
+ "MsmKey" = "8:_65C94F01EA00062BD16ABB7818135818"
"OwnerKey" = "8:_C1C37E2154994C29B02FDD9C90635B26"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
+ "MsmKey" = "8:_65C94F01EA00062BD16ABB7818135818"
+ "OwnerKey" = "8:_8E623C85FD4143F3B09460457E8ED6CA"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_75519C9025D94CC496F276E698CE3AF8"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -75,18 +81,24 @@
}
"Entry"
{
- "MsmKey" = "8:_F0C46E8F1B5048179188E62D91BA91EB"
- "OwnerKey" = "8:_UNDEFINED"
+ "MsmKey" = "8:_CD71F4838A178ADBB1127E18F4804F3B"
+ "OwnerKey" = "8:_75519C9025D94CC496F276E698CE3AF8"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
- "MsmKey" = "8:_FE85A5D48B5A23F3077871E9FD2378DE"
+ "MsmKey" = "8:_CD71F4838A178ADBB1127E18F4804F3B"
"OwnerKey" = "8:_C1C37E2154994C29B02FDD9C90635B26"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
+ "MsmKey" = "8:_F0C46E8F1B5048179188E62D91BA91EB"
+ "OwnerKey" = "8:_UNDEFINED"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_4744A4EB6B904673B8897294AB8C6162"
"MsmSig" = "8:_UNDEFINED"
@@ -182,7 +194,7 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
- "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_71C343EBC4935F8914C3145115EDEC4A"
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_65C94F01EA00062BD16ABB7818135818"
{
"SourcePath" = "8:micasa.dll"
"TargetName" = "8:micasa.dll"
@@ -242,6 +254,26 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
+ "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_CD71F4838A178ADBB1127E18F4804F3B"
+ {
+ "SourcePath" = "8:WINHTTP.dll"
+ "TargetName" = "8:WINHTTP.dll"
+ "Tag" = "8:"
+ "Folder" = "8:_01897726E7804A3B875B67A1C2692147"
+ "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:"
+ }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F0C46E8F1B5048179188E62D91BA91EB"
{
"SourcePath" = "8:..\\..\\..\\library\\mechanisms\\pwd\\windows\\PwdAuthenticate.conf"
@@ -262,26 +294,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
- "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_FE85A5D48B5A23F3077871E9FD2378DE"
- {
- "SourcePath" = "8:WINHTTP.dll"
- "TargetName" = "8:WINHTTP.dll"
- "Tag" = "8:"
- "Folder" = "8:_01897726E7804A3B875B67A1C2692147"
- "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:"
- }
}
"FileType"
{
@@ -317,7 +329,7 @@
"Property" = "8:_6F4D982C87CA4DF991766D49335B6669"
"Folders"
{
- "{9EF0B969-E518-4E46-987F-47570745A589}:_7911DA52FBB24F3DB6BAF4B8BD9E57BF"
+ "{9EF0B969-E518-4E46-987F-47570745A589}:_F97C66B0F09D45BFBE1A75E5E70A9612"
{
"Name" = "8:CASA"
"AlwaysCreate" = "11:FALSE"
@@ -439,7 +451,7 @@
{
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_4744A4EB6B904673B8897294AB8C6162"
{
- "SourcePath" = "8:..\\..\\..\\csharp-api\\Novell.Casa.Authtoken\\obj\\Debug\\Novell.Casa.Client.Auth.dll"
+ "SourcePath" = "8:..\\..\\..\\csharp-api\\Novell.Casa.Authtoken\\obj\\Release\\Novell.Casa.Client.Auth.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_8E0BBDD021EA45308BD98380F28EB7F6"
@@ -467,7 +479,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_50C15B4896B94AAD8CF7A676F541BD89"
{
- "SourcePath" = "8:..\\..\\..\\library\\mechanisms\\krb5\\windows\\Debug\\krb5mech.dll"
+ "SourcePath" = "8:..\\..\\..\\library\\mechanisms\\krb5\\windows\\x64\\Release\\krb5mech.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_01897726E7804A3B875B67A1C2692147"
@@ -495,7 +507,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_75519C9025D94CC496F276E698CE3AF8"
{
- "SourcePath" = "8:..\\..\\..\\library\\windows\\Debug\\casa_authtoken.dll"
+ "SourcePath" = "8:..\\..\\..\\library\\windows\\x64\\Release\\casa_authtoken.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_E092F841E4D04920B053C3F6A5151BA2"
@@ -523,7 +535,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_8E623C85FD4143F3B09460457E8ED6CA"
{
- "SourcePath" = "8:..\\..\\..\\library\\mechanisms\\pwd\\windows\\Debug\\pwmech.dll"
+ "SourcePath" = "8:..\\..\\..\\library\\mechanisms\\pwd\\windows\\x64\\Release\\pwmech.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_01897726E7804A3B875B67A1C2692147"
@@ -551,7 +563,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_C1C37E2154994C29B02FDD9C90635B26"
{
- "SourcePath" = "8:..\\..\\..\\library\\windows\\Debug\\casa_authtoken.dll"
+ "SourcePath" = "8:..\\..\\..\\library\\windows\\x64\\Release\\casa_authtoken.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_01897726E7804A3B875B67A1C2692147"
diff --git a/CASA-auth-token/client/package/windows/authtokenclientdevel_msi/authtokenclientdevel_msi.vdproj b/CASA-auth-token/client/package/windows/authtokenclientdevel_msi/authtokenclientdevel_msi.vdproj
index dbdb6a10..3ddcc81c 100644
--- a/CASA-auth-token/client/package/windows/authtokenclientdevel_msi/authtokenclientdevel_msi.vdproj
+++ b/CASA-auth-token/client/package/windows/authtokenclientdevel_msi/authtokenclientdevel_msi.vdproj
@@ -19,6 +19,12 @@
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
+ "Entry"
+ {
+ "MsmKey" = "8:_UNDEFINED"
+ "OwnerKey" = "8:_FD0A8D57CFD64B5CADAF19B3B9BCB7B8"
+ "MsmSig" = "8:_UNDEFINED"
+ }
}
"Configurations"
{
@@ -235,10 +241,10 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:authtokenclientdevel_msi"
"ProductCode" = "8:{C3A6CFD7-F415-4317-AA75-45888378B08A}"
- "PackageCode" = "8:{A96250E5-B755-4245-9366-FDB7A997B9FC}"
+ "PackageCode" = "8:{D329A8C0-9A96-4CBC-8634-26B92F5E1305}"
"UpgradeCode" = "8:{A98C298C-4FB1-4267-9045-92B820B97A14}"
"RestartWWWService" = "11:FALSE"
- "RemovePreviousVersions" = "11:FALSE"
+ "RemovePreviousVersions" = "11:TRUE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.0"
@@ -610,41 +616,6 @@
}
}
}
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_CA624AA458884E179C15920FEE46A7A4"
- {
- "Sequence" = "3:200"
- "DisplayName" = "8:Installation Folder"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdFolderDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "InstallAllUsersVisible"
- {
- "Name" = "8:InstallAllUsersVisible"
- "DisplayName" = "8:#1059"
- "Description" = "8:#1159"
- "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"
- }
- }
- }
}
}
"{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_79D963ADC74940CA9EB076A612495884"
@@ -807,5 +778,8 @@
}
}
}
+ "VJSharpPlugin"
+ {
+ }
}
}