From a4cbd0781206a39e875d1d30040e823284d8c309 Mon Sep 17 00:00:00 2001 From: Yanbing Date: Tue, 14 Nov 2017 17:22:02 -0800 Subject: [PATCH] Enable build for arm and arm64 (#238) Enable build for arm and arm64 --- auth-passwd.c | 5 +- contrib/win32/openssh/OpenSSHBuildHelper.psm1 | 123 ++- contrib/win32/openssh/Win32-OpenSSH.sln | 901 +++++++++++------- contrib/win32/openssh/config.vcxproj | 702 +++++++++----- contrib/win32/openssh/keygen.vcxproj | 178 +++- contrib/win32/openssh/libssh.vcxproj | 168 ++++ contrib/win32/openssh/openbsd_compat.vcxproj | 164 ++++ contrib/win32/openssh/paths.targets | 30 +- contrib/win32/openssh/scp.vcxproj | 172 ++++ contrib/win32/openssh/sftp-server.vcxproj | 172 ++++ contrib/win32/openssh/sftp.vcxproj | 182 +++- contrib/win32/openssh/ssh-add.vcxproj | 180 +++- contrib/win32/openssh/ssh-agent.vcxproj | 193 +++- contrib/win32/openssh/ssh-keyscan.vcxproj | 190 +++- contrib/win32/openssh/ssh-shellhost.vcxproj | 168 ++++ contrib/win32/openssh/ssh.vcxproj | 196 +++- contrib/win32/openssh/sshd.vcxproj | 207 +++- contrib/win32/openssh/sshd.vcxproj.filters | 3 + contrib/win32/openssh/unittest-bitmap.vcxproj | 190 +++- .../win32/openssh/unittest-hostkeys.vcxproj | 218 ++++- contrib/win32/openssh/unittest-kex.vcxproj | 614 +++++++----- contrib/win32/openssh/unittest-match.vcxproj | 608 +++++++----- contrib/win32/openssh/unittest-sshbuf.vcxproj | 208 +++- contrib/win32/openssh/unittest-sshkey.vcxproj | 218 ++++- .../openssh/unittest-win32compat.vcxproj | 222 ++++- contrib/win32/openssh/win32iocompat.vcxproj | 130 +++ contrib/win32/win32compat/logonuser.c | 70 ++ contrib/win32/win32compat/logonuser.h | 16 + contrib/win32/win32compat/shell-host.c | 18 +- .../win32compat/ssh-agent/authagent-request.c | 803 ++++++++-------- 30 files changed, 5674 insertions(+), 1575 deletions(-) create mode 100644 contrib/win32/win32compat/logonuser.c create mode 100644 contrib/win32/win32compat/logonuser.h diff --git a/auth-passwd.c b/auth-passwd.c index 8804dc4eb..f348de128 100644 --- a/auth-passwd.c +++ b/auth-passwd.c @@ -41,6 +41,7 @@ #include #include +#include #include #include #include @@ -245,8 +246,8 @@ int sys_auth_passwd(Authctxt *authctxt, const char *password) *tmp = L'\0'; } - if (LogonUserW(user_utf16, udom_utf16, pwd_utf16, LOGON32_LOGON_NETWORK_CLEARTEXT, - LOGON32_PROVIDER_DEFAULT, &token) == FALSE) { + if (LogonUserExExWHelper(user_utf16, udom_utf16, pwd_utf16, LOGON32_LOGON_NETWORK_CLEARTEXT, + LOGON32_PROVIDER_DEFAULT, NULL, &token, NULL, NULL, NULL, NULL) == FALSE) { if (GetLastError() == ERROR_PASSWORD_MUST_CHANGE) /* * TODO - need to add support to force password change diff --git a/contrib/win32/openssh/OpenSSHBuildHelper.psm1 b/contrib/win32/openssh/OpenSSHBuildHelper.psm1 index 355f41a88..fae83c843 100644 --- a/contrib/win32/openssh/OpenSSHBuildHelper.psm1 +++ b/contrib/win32/openssh/OpenSSHBuildHelper.psm1 @@ -143,7 +143,11 @@ function Write-BuildMsg #> function Start-OpenSSHBootstrap { - param([switch]$OneCore) + param( + [ValidateSet('x86', 'x64', 'arm64', 'arm')] + [string]$NativeHostArch = "x64", + + [switch]$OneCore) [bool] $silent = -not $script:Verbose Write-BuildMsg -AsInfo -Message "Checking tools and dependencies" -Silent:$silent @@ -192,47 +196,19 @@ function Start-OpenSSHBootstrap { Write-BuildMsg -AsVerbose -Message "$gitCmdPath already present in Path environment variable" -Silent:$silent } - - $nativeMSBuildPath = "${env:ProgramFiles(x86)}\MSBuild\14.0\bin" - if($env:PROCESSOR_ARCHITECTURE -ieq "AMD64") - { - $nativeMSBuildPath += "\amd64" - } - if (-not ($machinePath.ToLower().Contains($nativeMSBuildPath.ToLower()))) - { - Write-BuildMsg -AsVerbose -Message "Adding $nativeMSBuildPath to Path environment variable" -Silent:$silent - $newMachineEnvironmentPath += ";$nativeMSBuildPath" - if(-not ($env:Path.ToLower().Contains($nativeMSBuildPath.ToLower()))) - { - $env:Path += ";$nativeMSBuildPath" - } - } - else - { - Write-BuildMsg -AsVerbose -Message "$nativeMSBuildPath already present in Path environment variable" -Silent:$silent - } + $nativeMSBuildPath = Get-VS2015BuildToolPath # Update machine environment path if ($newMachineEnvironmentPath -ne $machinePath) { [Environment]::SetEnvironmentVariable('Path', $newMachineEnvironmentPath, 'MACHINE') - } - - $VCTargetsPath = "${env:ProgramFiles(x86)}\MSBuild\Microsoft.Cpp\v4.0\V140\" - if([Environment]::GetEnvironmentVariable('VCTargetsPath', 'MACHINE') -eq $null) - { - [Environment]::SetEnvironmentVariable('VCTargetsPath', $VCTargetsPath, 'MACHINE') - } - if ($env:VCTargetsPath -eq $null) - { - $env:VCTargetsPath = $VCTargetsPath - } + } $vcVars = "${env:ProgramFiles(x86)}\Microsoft Visual Studio 14.0\Common7\Tools\vsvars32.bat" $sdkPath = "${env:ProgramFiles(x86)}\Windows Kits\8.1\bin\x86\register_app.vbs" $packageName = "vcbuildtools" - If ((-not (Test-Path $nativeMSBuildPath)) -or (-not (Test-Path $VcVars)) -or (-not (Test-Path $sdkPath))) { + If (($nativeMSBuildPath -eq $null) -or (-not (Test-Path $VcVars)) -or (-not (Test-Path $sdkPath))) { Write-BuildMsg -AsInfo -Message "$packageName not present. Installing $packageName ..." choco install $packageName -ia "/InstallSelectableItems VisualCppBuildTools_ATLMFC_SDK;VisualCppBuildTools_NETFX_SDK;Win81SDK_CppBuildSKUV1" -y --force --limitoutput --execution-timeout 10000 2>&1 >> $script:BuildLogFile $errorCode = $LASTEXITCODE @@ -268,7 +244,17 @@ function Start-OpenSSHBootstrap Write-BuildMsg -AsVerbose -Message 'VC++ 2015 Build Tools already present.' } - if($OneCore) + if($NativeHostArch.ToLower().Startswith('arm')) + { + $nativeMSBuildPath = Get-VS2017BuildToolPath + If ($nativeMSBuildPath -eq $null) + { + #todo, install vs 2017 build tools + Write-BuildMsg -AsError -ErrorAction Stop -Message "The required msbuild 15.0 is not installed on the machine." + } + } + + if($OneCore -or ($NativeHostArch.ToLower().Startswith('arm'))) { $win10sdk = Get-Windows10SDKVersion if($win10sdk -eq $null) @@ -337,7 +323,7 @@ function Start-OpenSSHPackage [CmdletBinding(SupportsShouldProcess=$false)] param ( - [ValidateSet('x86', 'x64')] + [ValidateSet('x86', 'x64', 'arm64', 'arm')] [string]$NativeHostArch = "x64", [ValidateSet('Debug', 'Release')] @@ -365,6 +351,13 @@ function Start-OpenSSHPackage if ($NativeHostArch -ieq 'x86') { $packageName = "OpenSSH-Win32" } + elseif ($NativeHostArch -ieq 'arm64') { + $packageName = "OpenSSH-ARM64" + } + elseif ($NativeHostArch -ieq 'arm') { + $packageName = "OpenSSH-ARM" + } + while((($service = Get-Service ssh-agent -ErrorAction SilentlyContinue) -ne $null) -and ($service.Status -ine 'Stopped')) { Stop-Service ssh-agent -Force @@ -447,7 +440,7 @@ function Start-OpenSSHBuild [CmdletBinding(SupportsShouldProcess=$false)] param ( - [ValidateSet('x86', 'x64')] + [ValidateSet('x86', 'x64', 'arm64', 'arm')] [string]$NativeHostArch = "x64", [ValidateSet('Debug', 'Release')] @@ -494,12 +487,21 @@ function Start-OpenSSHBuild { [XML]$xml = Get-Content $PathTargets $xml.Project.PropertyGroup.UseOpenSSL = 'false' + $xml.Project.PropertyGroup.SSLLib = [string]::Empty $xml.Save($PathTargets) $f = Join-Path $PSScriptRoot config.h.vs (Get-Content $f).Replace('#define WITH_OPENSSL 1','') | Set-Content $f (Get-Content $f).Replace('#define OPENSSL_HAS_ECC 1','') | Set-Content $f (Get-Content $f).Replace('#define OPENSSL_HAS_NISTP521 1','') | Set-Content $f } + + if($NativeHostArch.ToLower().Startswith('arm')) + { + $win10SDKVer = Get-Windows10SDKVersion + [XML]$xml = Get-Content $PathTargets + $xml.Project.PropertyGroup.WindowsSDKVersion = $win10SDKVer.ToString() + $xml.Save($PathTargets) + } if($OneCore) { @@ -507,14 +509,23 @@ function Start-OpenSSHBuild [XML]$xml = Get-Content $PathTargets $xml.Project.PropertyGroup.WindowsSDKVersion = $win10SDKVer.ToString() $xml.Project.PropertyGroup.AdditionalDependentLibs = 'onecore.lib' + $xml.Project.PropertyGroup.MinimalCoreWin = 'true' $xml.Save($PathTargets) } - - $msbuildCmd = "msbuild.exe" + $solutionFile = Get-SolutionFile -root $repositoryRoot.FullName - $cmdMsg = @("${solutionFile}", "/p:Platform=${NativeHostArch}", "/p:Configuration=${Configuration}", "/m", "/noconlog", "/nologo", "/fl", "/flp:LogFile=${script:BuildLogFile}`;Append`;Verbosity=diagnostic") + $cmdMsg = @("${solutionFile}", "/p:Platform=${NativeHostArch}", "/p:Configuration=${Configuration}", "/m", "/noconlog", "/nologo", "/fl", "/flp:LogFile=${script:BuildLogFile}`;Append`;Verbosity=diagnostic") - & $msbuildCmd $cmdMsg + if($NativeHostArch.ToLower().Startswith('arm')) + { + $msbuildCmd = Get-VS2017BuildToolPath + } + else + { + $msbuildCmd = Get-VS2015BuildToolPath + } + + & "$msbuildCmd" $cmdMsg $errorCode = $LASTEXITCODE if ($errorCode -ne 0) @@ -525,6 +536,38 @@ function Start-OpenSSHBuild Write-BuildMsg -AsInfo -Message "SSH build successful." } +function Get-VS2017BuildToolPath +{ + $searchPath = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\2017\*\MSBuild\15.0\Bin" + if($env:PROCESSOR_ARCHITECTURE -ieq "AMD64") + { + $searchPath += "\amd64" + } + $toolAvailable = @() + $toolAvailable += Get-ChildItem -path $searchPath\* -Filter "MSBuild.exe" -ErrorAction SilentlyContinue + if($toolAvailable.count -eq 0) + { + return $null + } + return $toolAvailable[0].FullName +} + +function Get-VS2015BuildToolPath +{ + $searchPath = "${env:ProgramFiles(x86)}\MSBuild\14.0\Bin" + if($env:PROCESSOR_ARCHITECTURE -ieq "AMD64") + { + $searchPath += "\amd64" + } + $toolAvailable = @() + $toolAvailable += Get-ChildItem -path $searchPath\* -Filter "MSBuild.exe" -ErrorAction SilentlyContinue + if($toolAvailable.count -eq 0) + { + return $null + } + return $toolAvailable[0].FullName +} + function Get-Windows10SDKVersion { ## Search for latest windows sdk available on the machine @@ -548,7 +591,7 @@ function Get-BuildLogFile [ValidateNotNull()] [System.IO.DirectoryInfo] $root, - [ValidateSet('x86', 'x64')] + [ValidateSet('x86', 'x64', 'arm64', 'arm')] [string]$NativeHostArch = "x64", [ValidateSet('Debug', 'Release')] diff --git a/contrib/win32/openssh/Win32-OpenSSH.sln b/contrib/win32/openssh/Win32-OpenSSH.sln index 6fca70b12..de7e76111 100644 --- a/contrib/win32/openssh/Win32-OpenSSH.sln +++ b/contrib/win32/openssh/Win32-OpenSSH.sln @@ -1,363 +1,538 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh", "ssh.vcxproj", "{74E69D5E-A1EF-46EA-9173-19A412774104}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libssh", "libssh.vcxproj", "{05E1115F-8529-46D0-AAAF-52A404CE79A7}" - ProjectSection(ProjectDependencies) = postProject - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openbsd_compat", "openbsd_compat.vcxproj", "{DD483F7D-C553-4740-BC1A-903805AD0174}" - ProjectSection(ProjectDependencies) = postProject - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-keygen", "keygen.vcxproj", "{47496135-131B-41D6-BF2B-EE7144873DD0}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sftp", "sftp.vcxproj", "{BBEFF9D7-0BC3-41D1-908B-8052158B5052}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sftp-server", "sftp-server.vcxproj", "{6657614F-7821-4D55-96EF-7C3C4B551880}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sshd", "sshd.vcxproj", "{F58FF6BA-098B-4DB9-9609-A030DFB4D03F}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "config", "config.vcxproj", "{8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "posix_compat", "win32iocompat.vcxproj", "{0D02F0F0-013B-4EE3-906D-86517F3822C0}" - ProjectSection(ProjectDependencies) = postProject - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-shellhost", "ssh-shellhost.vcxproj", "{C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}" - ProjectSection(ProjectDependencies) = postProject - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-agent", "ssh-agent.vcxproj", "{F6644EC5-D6B6-42A1-828C-75E2977470E0}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-add", "ssh-add.vcxproj", "{029797FF-C986-43DE-95CD-2E771E86AEBC}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "scp", "scp.vcxproj", "{29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-bitmap", "unittest-bitmap.vcxproj", "{D901596E-76C7-4608-9CFA-2B42A9FD7250}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-kex", "unittest-kex.vcxproj", "{8EC56B06-5A9A-4D6D-804D-037FE26FD43E}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-sshbuf", "unittest-sshbuf.vcxproj", "{CD9740CE-C96E-49B3-823F-012E09D17806}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-win32compat", "unittest-win32compat.vcxproj", "{BF295BA9-4BF8-43F8-8CBF-FAE84815466C}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-hostkeys", "unittest-hostkeys.vcxproj", "{890C6129-286F-4CD8-8252-FB8D3B4E6E1B}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-sshkey", "unittest-sshkey.vcxproj", "{FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{17322AAF-808F-4646-AD37-5B0EDDCB8F3E}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A8096E32-E084-4FA0-AE01-A8D909EB2BB4}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-match", "unittest-match.vcxproj", "{484A8CDE-B949-4BDA-B447-74685C8E032F}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-keyscan", "ssh-keyscan.vcxproj", "{7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}" - ProjectSection(ProjectDependencies) = postProject - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x64.ActiveCfg = Debug|x64 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x64.Build.0 = Debug|x64 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x86.ActiveCfg = Debug|Win32 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x86.Build.0 = Debug|Win32 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x64.ActiveCfg = Release|x64 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x64.Build.0 = Release|x64 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x86.ActiveCfg = Release|Win32 - {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x86.Build.0 = Release|Win32 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x64.ActiveCfg = Debug|x64 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x64.Build.0 = Debug|x64 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x86.ActiveCfg = Debug|Win32 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x86.Build.0 = Debug|Win32 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x64.ActiveCfg = Release|x64 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x64.Build.0 = Release|x64 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x86.ActiveCfg = Release|Win32 - {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x86.Build.0 = Release|Win32 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x64.ActiveCfg = Debug|x64 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x64.Build.0 = Debug|x64 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x86.ActiveCfg = Debug|Win32 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x86.Build.0 = Debug|Win32 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x64.ActiveCfg = Release|x64 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x64.Build.0 = Release|x64 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x86.ActiveCfg = Release|Win32 - {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x86.Build.0 = Release|Win32 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x64.ActiveCfg = Debug|x64 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x64.Build.0 = Debug|x64 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x86.ActiveCfg = Debug|Win32 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x86.Build.0 = Debug|Win32 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x64.ActiveCfg = Release|x64 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x64.Build.0 = Release|x64 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x86.ActiveCfg = Release|Win32 - {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x86.Build.0 = Release|Win32 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x64.ActiveCfg = Debug|x64 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x64.Build.0 = Debug|x64 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x86.ActiveCfg = Debug|Win32 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x86.Build.0 = Debug|Win32 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x64.ActiveCfg = Release|x64 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x64.Build.0 = Release|x64 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x86.ActiveCfg = Release|Win32 - {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x86.Build.0 = Release|Win32 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x64.ActiveCfg = Debug|x64 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x64.Build.0 = Debug|x64 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x86.ActiveCfg = Debug|Win32 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x86.Build.0 = Debug|Win32 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x64.ActiveCfg = Release|x64 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x64.Build.0 = Release|x64 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x86.ActiveCfg = Release|Win32 - {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x86.Build.0 = Release|Win32 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x64.ActiveCfg = Debug|x64 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x64.Build.0 = Debug|x64 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x86.ActiveCfg = Debug|Win32 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x86.Build.0 = Debug|Win32 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x64.ActiveCfg = Release|x64 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x64.Build.0 = Release|x64 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x86.ActiveCfg = Release|Win32 - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x86.Build.0 = Release|Win32 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x64.ActiveCfg = Debug|x64 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x64.Build.0 = Debug|x64 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x86.ActiveCfg = Debug|Win32 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x86.Build.0 = Debug|Win32 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x64.ActiveCfg = Release|x64 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x64.Build.0 = Release|x64 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x86.ActiveCfg = Release|Win32 - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x86.Build.0 = Release|Win32 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x64.ActiveCfg = Debug|x64 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x64.Build.0 = Debug|x64 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x86.ActiveCfg = Debug|Win32 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x86.Build.0 = Debug|Win32 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x64.ActiveCfg = Release|x64 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x64.Build.0 = Release|x64 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x86.ActiveCfg = Release|Win32 - {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x86.Build.0 = Release|Win32 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x64.ActiveCfg = Debug|x64 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x64.Build.0 = Debug|x64 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x86.ActiveCfg = Debug|Win32 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x86.Build.0 = Debug|Win32 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x64.ActiveCfg = Release|x64 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x64.Build.0 = Release|x64 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x86.ActiveCfg = Release|Win32 - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x86.Build.0 = Release|Win32 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x64.ActiveCfg = Debug|x64 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x64.Build.0 = Debug|x64 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x86.ActiveCfg = Debug|Win32 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x86.Build.0 = Debug|Win32 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x64.ActiveCfg = Release|x64 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x64.Build.0 = Release|x64 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x86.ActiveCfg = Release|Win32 - {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x86.Build.0 = Release|Win32 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x64.ActiveCfg = Debug|x64 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x64.Build.0 = Debug|x64 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x86.ActiveCfg = Debug|Win32 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x86.Build.0 = Debug|Win32 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x64.ActiveCfg = Release|x64 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x64.Build.0 = Release|x64 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x86.ActiveCfg = Release|Win32 - {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x86.Build.0 = Release|Win32 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x64.ActiveCfg = Debug|x64 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x64.Build.0 = Debug|x64 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x86.ActiveCfg = Debug|Win32 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x86.Build.0 = Debug|Win32 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x64.ActiveCfg = Release|x64 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x64.Build.0 = Release|x64 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x86.ActiveCfg = Release|Win32 - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x86.Build.0 = Release|Win32 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x64.ActiveCfg = Debug|x64 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x64.Build.0 = Debug|x64 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x86.ActiveCfg = Debug|Win32 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x86.Build.0 = Debug|Win32 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x64.ActiveCfg = Release|x64 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x64.Build.0 = Release|x64 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x86.ActiveCfg = Release|Win32 - {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x86.Build.0 = Release|Win32 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x64.ActiveCfg = Debug|x64 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x64.Build.0 = Debug|x64 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x86.ActiveCfg = Debug|Win32 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x86.Build.0 = Debug|Win32 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x64.ActiveCfg = Release|x64 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x64.Build.0 = Release|x64 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x86.ActiveCfg = Release|Win32 - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x86.Build.0 = Release|Win32 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x64.ActiveCfg = Debug|x64 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x64.Build.0 = Debug|x64 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x86.ActiveCfg = Debug|Win32 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x86.Build.0 = Debug|Win32 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x64.ActiveCfg = Release|x64 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x64.Build.0 = Release|x64 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x86.ActiveCfg = Release|Win32 - {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x86.Build.0 = Release|Win32 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x64.ActiveCfg = Debug|x64 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x64.Build.0 = Debug|x64 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x86.ActiveCfg = Debug|Win32 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x86.Build.0 = Debug|Win32 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x64.ActiveCfg = Release|x64 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x64.Build.0 = Release|x64 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x86.ActiveCfg = Release|Win32 - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x86.Build.0 = Release|Win32 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x64.ActiveCfg = Debug|x64 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x64.Build.0 = Debug|x64 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x86.ActiveCfg = Debug|Win32 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x86.Build.0 = Debug|Win32 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x64.ActiveCfg = Release|x64 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x64.Build.0 = Release|x64 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x86.ActiveCfg = Release|Win32 - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x86.Build.0 = Release|Win32 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x64.ActiveCfg = Debug|x64 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x64.Build.0 = Debug|x64 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x86.ActiveCfg = Debug|Win32 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x86.Build.0 = Debug|Win32 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x64.ActiveCfg = Release|x64 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x64.Build.0 = Release|x64 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x86.ActiveCfg = Release|Win32 - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x86.Build.0 = Release|Win32 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x64.ActiveCfg = Debug|x64 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x64.Build.0 = Debug|x64 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x86.ActiveCfg = Debug|Win32 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x86.Build.0 = Debug|Win32 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x64.ActiveCfg = Release|x64 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x64.Build.0 = Release|x64 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x86.ActiveCfg = Release|Win32 - {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x86.Build.0 = Release|Win32 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x64.ActiveCfg = Debug|x64 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x64.Build.0 = Debug|x64 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x86.ActiveCfg = Debug|Win32 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x86.Build.0 = Debug|Win32 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x64.ActiveCfg = Release|x64 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x64.Build.0 = Release|x64 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x86.ActiveCfg = Release|Win32 - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x86.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {74E69D5E-A1EF-46EA-9173-19A412774104} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {DD483F7D-C553-4740-BC1A-903805AD0174} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {47496135-131B-41D6-BF2B-EE7144873DD0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {BBEFF9D7-0BC3-41D1-908B-8052158B5052} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {6657614F-7821-4D55-96EF-7C3C4B551880} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {F58FF6BA-098B-4DB9-9609-A030DFB4D03F} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {F6644EC5-D6B6-42A1-828C-75E2977470E0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {029797FF-C986-43DE-95CD-2E771E86AEBC} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - {D901596E-76C7-4608-9CFA-2B42A9FD7250} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {CD9740CE-C96E-49B3-823F-012E09D17806} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {BF295BA9-4BF8-43F8-8CBF-FAE84815466C} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {890C6129-286F-4CD8-8252-FB8D3B4E6E1B} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {484A8CDE-B949-4BDA-B447-74685C8E032F} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} - {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27027.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh", "ssh.vcxproj", "{74E69D5E-A1EF-46EA-9173-19A412774104}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libssh", "libssh.vcxproj", "{05E1115F-8529-46D0-AAAF-52A404CE79A7}" + ProjectSection(ProjectDependencies) = postProject + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openbsd_compat", "openbsd_compat.vcxproj", "{DD483F7D-C553-4740-BC1A-903805AD0174}" + ProjectSection(ProjectDependencies) = postProject + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-keygen", "keygen.vcxproj", "{47496135-131B-41D6-BF2B-EE7144873DD0}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sftp", "sftp.vcxproj", "{BBEFF9D7-0BC3-41D1-908B-8052158B5052}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sftp-server", "sftp-server.vcxproj", "{6657614F-7821-4D55-96EF-7C3C4B551880}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sshd", "sshd.vcxproj", "{F58FF6BA-098B-4DB9-9609-A030DFB4D03F}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "config", "config.vcxproj", "{8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "posix_compat", "win32iocompat.vcxproj", "{0D02F0F0-013B-4EE3-906D-86517F3822C0}" + ProjectSection(ProjectDependencies) = postProject + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-shellhost", "ssh-shellhost.vcxproj", "{C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}" + ProjectSection(ProjectDependencies) = postProject + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-agent", "ssh-agent.vcxproj", "{F6644EC5-D6B6-42A1-828C-75E2977470E0}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-add", "ssh-add.vcxproj", "{029797FF-C986-43DE-95CD-2E771E86AEBC}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "scp", "scp.vcxproj", "{29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-bitmap", "unittest-bitmap.vcxproj", "{D901596E-76C7-4608-9CFA-2B42A9FD7250}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-kex", "unittest-kex.vcxproj", "{8EC56B06-5A9A-4D6D-804D-037FE26FD43E}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-sshbuf", "unittest-sshbuf.vcxproj", "{CD9740CE-C96E-49B3-823F-012E09D17806}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-win32compat", "unittest-win32compat.vcxproj", "{BF295BA9-4BF8-43F8-8CBF-FAE84815466C}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-hostkeys", "unittest-hostkeys.vcxproj", "{890C6129-286F-4CD8-8252-FB8D3B4E6E1B}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-sshkey", "unittest-sshkey.vcxproj", "{FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{17322AAF-808F-4646-AD37-5B0EDDCB8F3E}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A8096E32-E084-4FA0-AE01-A8D909EB2BB4}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittest-match", "unittest-match.vcxproj", "{484A8CDE-B949-4BDA-B447-74685C8E032F}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssh-keyscan", "ssh-keyscan.vcxproj", "{7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}" + ProjectSection(ProjectDependencies) = postProject + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {05E1115F-8529-46D0-AAAF-52A404CE79A7} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {DD483F7D-C553-4740-BC1A-903805AD0174} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {0D02F0F0-013B-4EE3-906D-86517F3822C0} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|ARM = Debug|ARM + Debug|ARM64 = Debug|ARM64 + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|ARM = Release|ARM + Release|ARM64 = Release|ARM64 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|ARM.ActiveCfg = Debug|ARM + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|ARM.Build.0 = Debug|ARM + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|ARM64.Build.0 = Debug|ARM64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x64.ActiveCfg = Debug|x64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x64.Build.0 = Debug|x64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x86.ActiveCfg = Debug|Win32 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Debug|x86.Build.0 = Debug|Win32 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|ARM.ActiveCfg = Release|ARM + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|ARM.Build.0 = Release|ARM + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|ARM64.ActiveCfg = Release|ARM64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|ARM64.Build.0 = Release|ARM64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x64.ActiveCfg = Release|x64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x64.Build.0 = Release|x64 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x86.ActiveCfg = Release|Win32 + {74E69D5E-A1EF-46EA-9173-19A412774104}.Release|x86.Build.0 = Release|Win32 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|ARM.ActiveCfg = Debug|ARM + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|ARM.Build.0 = Debug|ARM + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|ARM64.Build.0 = Debug|ARM64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x64.ActiveCfg = Debug|x64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x64.Build.0 = Debug|x64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x86.ActiveCfg = Debug|Win32 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Debug|x86.Build.0 = Debug|Win32 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|ARM.ActiveCfg = Release|ARM + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|ARM.Build.0 = Release|ARM + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|ARM64.ActiveCfg = Release|ARM64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|ARM64.Build.0 = Release|ARM64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x64.ActiveCfg = Release|x64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x64.Build.0 = Release|x64 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x86.ActiveCfg = Release|Win32 + {05E1115F-8529-46D0-AAAF-52A404CE79A7}.Release|x86.Build.0 = Release|Win32 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|ARM.ActiveCfg = Debug|ARM + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|ARM.Build.0 = Debug|ARM + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|ARM64.Build.0 = Debug|ARM64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x64.ActiveCfg = Debug|x64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x64.Build.0 = Debug|x64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x86.ActiveCfg = Debug|Win32 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Debug|x86.Build.0 = Debug|Win32 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|ARM.ActiveCfg = Release|ARM + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|ARM.Build.0 = Release|ARM + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|ARM64.ActiveCfg = Release|ARM64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|ARM64.Build.0 = Release|ARM64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x64.ActiveCfg = Release|x64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x64.Build.0 = Release|x64 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x86.ActiveCfg = Release|Win32 + {DD483F7D-C553-4740-BC1A-903805AD0174}.Release|x86.Build.0 = Release|Win32 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|ARM.ActiveCfg = Debug|ARM + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|ARM.Build.0 = Debug|ARM + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|ARM64.Build.0 = Debug|ARM64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x64.ActiveCfg = Debug|x64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x64.Build.0 = Debug|x64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x86.ActiveCfg = Debug|Win32 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Debug|x86.Build.0 = Debug|Win32 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|ARM.ActiveCfg = Release|ARM + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|ARM.Build.0 = Release|ARM + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|ARM64.ActiveCfg = Release|ARM64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|ARM64.Build.0 = Release|ARM64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x64.ActiveCfg = Release|x64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x64.Build.0 = Release|x64 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x86.ActiveCfg = Release|Win32 + {47496135-131B-41D6-BF2B-EE7144873DD0}.Release|x86.Build.0 = Release|Win32 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|ARM.ActiveCfg = Debug|ARM + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|ARM.Build.0 = Debug|ARM + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|ARM64.Build.0 = Debug|ARM64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x64.ActiveCfg = Debug|x64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x64.Build.0 = Debug|x64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x86.ActiveCfg = Debug|Win32 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Debug|x86.Build.0 = Debug|Win32 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|ARM.ActiveCfg = Release|ARM + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|ARM.Build.0 = Release|ARM + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|ARM64.ActiveCfg = Release|ARM64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|ARM64.Build.0 = Release|ARM64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x64.ActiveCfg = Release|x64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x64.Build.0 = Release|x64 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x86.ActiveCfg = Release|Win32 + {BBEFF9D7-0BC3-41D1-908B-8052158B5052}.Release|x86.Build.0 = Release|Win32 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|ARM.ActiveCfg = Debug|ARM + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|ARM.Build.0 = Debug|ARM + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|ARM64.Build.0 = Debug|ARM64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x64.ActiveCfg = Debug|x64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x64.Build.0 = Debug|x64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x86.ActiveCfg = Debug|Win32 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Debug|x86.Build.0 = Debug|Win32 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|ARM.ActiveCfg = Release|ARM + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|ARM.Build.0 = Release|ARM + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|ARM64.ActiveCfg = Release|ARM64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|ARM64.Build.0 = Release|ARM64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x64.ActiveCfg = Release|x64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x64.Build.0 = Release|x64 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x86.ActiveCfg = Release|Win32 + {6657614F-7821-4D55-96EF-7C3C4B551880}.Release|x86.Build.0 = Release|Win32 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|ARM.ActiveCfg = Debug|ARM + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|ARM.Build.0 = Debug|ARM + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|ARM64.Build.0 = Debug|ARM64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x64.ActiveCfg = Debug|x64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x64.Build.0 = Debug|x64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x86.ActiveCfg = Debug|Win32 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Debug|x86.Build.0 = Debug|Win32 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|ARM.ActiveCfg = Release|ARM + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|ARM.Build.0 = Release|ARM + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|ARM64.ActiveCfg = Release|ARM64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|ARM64.Build.0 = Release|ARM64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x64.ActiveCfg = Release|x64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x64.Build.0 = Release|x64 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x86.ActiveCfg = Release|Win32 + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F}.Release|x86.Build.0 = Release|Win32 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|ARM.ActiveCfg = Debug|ARM + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|ARM.Build.0 = Debug|ARM + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|ARM64.Build.0 = Debug|ARM64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x64.ActiveCfg = Debug|x64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x64.Build.0 = Debug|x64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x86.ActiveCfg = Debug|Win32 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Debug|x86.Build.0 = Debug|Win32 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|ARM.ActiveCfg = Release|ARM + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|ARM.Build.0 = Release|ARM + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|ARM64.ActiveCfg = Release|ARM64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|ARM64.Build.0 = Release|ARM64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x64.ActiveCfg = Release|x64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x64.Build.0 = Release|x64 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x86.ActiveCfg = Release|Win32 + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4}.Release|x86.Build.0 = Release|Win32 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|ARM.ActiveCfg = Debug|ARM + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|ARM.Build.0 = Debug|ARM + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|ARM64.Build.0 = Debug|ARM64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x64.ActiveCfg = Debug|x64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x64.Build.0 = Debug|x64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x86.ActiveCfg = Debug|Win32 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Debug|x86.Build.0 = Debug|Win32 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|ARM.ActiveCfg = Release|ARM + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|ARM.Build.0 = Release|ARM + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|ARM64.ActiveCfg = Release|ARM64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|ARM64.Build.0 = Release|ARM64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x64.ActiveCfg = Release|x64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x64.Build.0 = Release|x64 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x86.ActiveCfg = Release|Win32 + {0D02F0F0-013B-4EE3-906D-86517F3822C0}.Release|x86.Build.0 = Release|Win32 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|ARM.ActiveCfg = Debug|ARM + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|ARM.Build.0 = Debug|ARM + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|ARM64.Build.0 = Debug|ARM64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x64.ActiveCfg = Debug|x64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x64.Build.0 = Debug|x64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x86.ActiveCfg = Debug|Win32 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Debug|x86.Build.0 = Debug|Win32 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|ARM.ActiveCfg = Release|ARM + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|ARM.Build.0 = Release|ARM + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|ARM64.ActiveCfg = Release|ARM64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|ARM64.Build.0 = Release|ARM64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x64.ActiveCfg = Release|x64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x64.Build.0 = Release|x64 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x86.ActiveCfg = Release|Win32 + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64}.Release|x86.Build.0 = Release|Win32 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|ARM.ActiveCfg = Debug|ARM + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|ARM.Build.0 = Debug|ARM + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|ARM64.Build.0 = Debug|ARM64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x64.ActiveCfg = Debug|x64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x64.Build.0 = Debug|x64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x86.ActiveCfg = Debug|Win32 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Debug|x86.Build.0 = Debug|Win32 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|ARM.ActiveCfg = Release|ARM + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|ARM.Build.0 = Release|ARM + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|ARM64.ActiveCfg = Release|ARM64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|ARM64.Build.0 = Release|ARM64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x64.ActiveCfg = Release|x64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x64.Build.0 = Release|x64 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x86.ActiveCfg = Release|Win32 + {F6644EC5-D6B6-42A1-828C-75E2977470E0}.Release|x86.Build.0 = Release|Win32 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|ARM.ActiveCfg = Debug|ARM + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|ARM.Build.0 = Debug|ARM + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|ARM64.Build.0 = Debug|ARM64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x64.ActiveCfg = Debug|x64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x64.Build.0 = Debug|x64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x86.ActiveCfg = Debug|Win32 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Debug|x86.Build.0 = Debug|Win32 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|ARM.ActiveCfg = Release|ARM + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|ARM.Build.0 = Release|ARM + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|ARM64.ActiveCfg = Release|ARM64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|ARM64.Build.0 = Release|ARM64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x64.ActiveCfg = Release|x64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x64.Build.0 = Release|x64 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x86.ActiveCfg = Release|Win32 + {029797FF-C986-43DE-95CD-2E771E86AEBC}.Release|x86.Build.0 = Release|Win32 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|ARM.ActiveCfg = Debug|ARM + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|ARM.Build.0 = Debug|ARM + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|ARM64.Build.0 = Debug|ARM64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x64.ActiveCfg = Debug|x64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x64.Build.0 = Debug|x64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x86.ActiveCfg = Debug|Win32 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Debug|x86.Build.0 = Debug|Win32 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|ARM.ActiveCfg = Release|ARM + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|ARM.Build.0 = Release|ARM + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|ARM64.ActiveCfg = Release|ARM64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|ARM64.Build.0 = Release|ARM64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x64.ActiveCfg = Release|x64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x64.Build.0 = Release|x64 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x86.ActiveCfg = Release|Win32 + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24}.Release|x86.Build.0 = Release|Win32 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|ARM.ActiveCfg = Debug|ARM + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|ARM.Build.0 = Debug|ARM + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|ARM64.Build.0 = Debug|ARM64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x64.ActiveCfg = Debug|x64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x64.Build.0 = Debug|x64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x86.ActiveCfg = Debug|Win32 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Debug|x86.Build.0 = Debug|Win32 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|ARM.ActiveCfg = Release|ARM + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|ARM.Build.0 = Release|ARM + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|ARM64.ActiveCfg = Release|ARM64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|ARM64.Build.0 = Release|ARM64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x64.ActiveCfg = Release|x64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x64.Build.0 = Release|x64 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x86.ActiveCfg = Release|Win32 + {D901596E-76C7-4608-9CFA-2B42A9FD7250}.Release|x86.Build.0 = Release|Win32 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|ARM.ActiveCfg = Debug|ARM + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|ARM.Build.0 = Debug|ARM + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|ARM64.Build.0 = Debug|ARM64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x64.ActiveCfg = Debug|x64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x64.Build.0 = Debug|x64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x86.ActiveCfg = Debug|Win32 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Debug|x86.Build.0 = Debug|Win32 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|ARM.ActiveCfg = Release|ARM + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|ARM.Build.0 = Release|ARM + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|ARM64.ActiveCfg = Release|ARM64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|ARM64.Build.0 = Release|ARM64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x64.ActiveCfg = Release|x64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x64.Build.0 = Release|x64 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x86.ActiveCfg = Release|Win32 + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E}.Release|x86.Build.0 = Release|Win32 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|ARM.ActiveCfg = Debug|ARM + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|ARM.Build.0 = Debug|ARM + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|ARM64.Build.0 = Debug|ARM64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x64.ActiveCfg = Debug|x64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x64.Build.0 = Debug|x64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x86.ActiveCfg = Debug|Win32 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Debug|x86.Build.0 = Debug|Win32 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|ARM.ActiveCfg = Release|ARM + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|ARM.Build.0 = Release|ARM + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|ARM64.ActiveCfg = Release|ARM64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|ARM64.Build.0 = Release|ARM64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x64.ActiveCfg = Release|x64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x64.Build.0 = Release|x64 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x86.ActiveCfg = Release|Win32 + {CD9740CE-C96E-49B3-823F-012E09D17806}.Release|x86.Build.0 = Release|Win32 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|ARM.ActiveCfg = Debug|ARM + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|ARM.Build.0 = Debug|ARM + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|ARM64.Build.0 = Debug|ARM64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x64.ActiveCfg = Debug|x64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x64.Build.0 = Debug|x64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x86.ActiveCfg = Debug|Win32 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Debug|x86.Build.0 = Debug|Win32 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|ARM.ActiveCfg = Release|ARM + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|ARM.Build.0 = Release|ARM + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|ARM64.ActiveCfg = Release|ARM64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|ARM64.Build.0 = Release|ARM64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x64.ActiveCfg = Release|x64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x64.Build.0 = Release|x64 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x86.ActiveCfg = Release|Win32 + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C}.Release|x86.Build.0 = Release|Win32 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|ARM.ActiveCfg = Debug|ARM + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|ARM.Build.0 = Debug|ARM + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|ARM64.Build.0 = Debug|ARM64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x64.ActiveCfg = Debug|x64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x64.Build.0 = Debug|x64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x86.ActiveCfg = Debug|Win32 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Debug|x86.Build.0 = Debug|Win32 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|ARM.ActiveCfg = Release|ARM + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|ARM.Build.0 = Release|ARM + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|ARM64.ActiveCfg = Release|ARM64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|ARM64.Build.0 = Release|ARM64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x64.ActiveCfg = Release|x64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x64.Build.0 = Release|x64 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x86.ActiveCfg = Release|Win32 + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B}.Release|x86.Build.0 = Release|Win32 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|ARM.ActiveCfg = Debug|ARM + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|ARM.Build.0 = Debug|ARM + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|ARM64.Build.0 = Debug|ARM64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x64.ActiveCfg = Debug|x64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x64.Build.0 = Debug|x64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x86.ActiveCfg = Debug|Win32 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Debug|x86.Build.0 = Debug|Win32 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|ARM.ActiveCfg = Release|ARM + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|ARM.Build.0 = Release|ARM + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|ARM64.ActiveCfg = Release|ARM64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|ARM64.Build.0 = Release|ARM64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x64.ActiveCfg = Release|x64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x64.Build.0 = Release|x64 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x86.ActiveCfg = Release|Win32 + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9}.Release|x86.Build.0 = Release|Win32 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|ARM.ActiveCfg = Debug|ARM + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|ARM.Build.0 = Debug|ARM + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|ARM64.Build.0 = Debug|ARM64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x64.ActiveCfg = Debug|x64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x64.Build.0 = Debug|x64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x86.ActiveCfg = Debug|Win32 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Debug|x86.Build.0 = Debug|Win32 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|ARM.ActiveCfg = Release|ARM + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|ARM.Build.0 = Release|ARM + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|ARM64.ActiveCfg = Release|ARM64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|ARM64.Build.0 = Release|ARM64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x64.ActiveCfg = Release|x64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x64.Build.0 = Release|x64 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x86.ActiveCfg = Release|Win32 + {484A8CDE-B949-4BDA-B447-74685C8E032F}.Release|x86.Build.0 = Release|Win32 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|ARM.ActiveCfg = Debug|ARM + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|ARM.Build.0 = Debug|ARM + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|ARM64.Build.0 = Debug|ARM64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x64.ActiveCfg = Debug|x64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x64.Build.0 = Debug|x64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x86.ActiveCfg = Debug|Win32 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Debug|x86.Build.0 = Debug|Win32 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|ARM.ActiveCfg = Release|ARM + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|ARM.Build.0 = Release|ARM + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|ARM64.ActiveCfg = Release|ARM64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|ARM64.Build.0 = Release|ARM64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x64.ActiveCfg = Release|x64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x64.Build.0 = Release|x64 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x86.ActiveCfg = Release|Win32 + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {74E69D5E-A1EF-46EA-9173-19A412774104} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {05E1115F-8529-46D0-AAAF-52A404CE79A7} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {DD483F7D-C553-4740-BC1A-903805AD0174} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {47496135-131B-41D6-BF2B-EE7144873DD0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {BBEFF9D7-0BC3-41D1-908B-8052158B5052} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {6657614F-7821-4D55-96EF-7C3C4B551880} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {F58FF6BA-098B-4DB9-9609-A030DFB4D03F} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {0D02F0F0-013B-4EE3-906D-86517F3822C0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {C0AE8A30-E4FA-49CE-A2B5-0C072C77EC64} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {F6644EC5-D6B6-42A1-828C-75E2977470E0} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {029797FF-C986-43DE-95CD-2E771E86AEBC} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {29B98ADF-1285-49CE-BF6C-AA92C5D2FB24} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + {D901596E-76C7-4608-9CFA-2B42A9FD7250} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {CD9740CE-C96E-49B3-823F-012E09D17806} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {BF295BA9-4BF8-43F8-8CBF-FAE84815466C} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {890C6129-286F-4CD8-8252-FB8D3B4E6E1B} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {FC568FF0-60F2-4B2E-AF62-FD392EDBA1B9} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {484A8CDE-B949-4BDA-B447-74685C8E032F} = {A8096E32-E084-4FA0-AE01-A8D909EB2BB4} + {7D0A75FC-F366-4B60-B72F-B37C3EA07CCA} = {17322AAF-808F-4646-AD37-5B0EDDCB8F3E} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {0AC224E8-C215-4270-954A-A2ACEE06DE58} + EndGlobalSection +EndGlobal diff --git a/contrib/win32/openssh/config.vcxproj b/contrib/win32/openssh/config.vcxproj index 799658775..51fd95441 100644 --- a/contrib/win32/openssh/config.vcxproj +++ b/contrib/win32/openssh/config.vcxproj @@ -1,243 +1,459 @@ - - - - - true - - - - Debug - Win32 - - - Release - Win32 - - - Debug - x64 - - - Release - x64 - - - - {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} - Win32Proj - config - $(WindowsSDKVersion) - config - - - - Application - true - v140 - MultiByte - - - Application - false - v140 - true - MultiByte - - - Utility - true - v140 - MultiByte - - - Application - false - v140 - true - MultiByte - - - - - - - - - - - - - - - - - - - - - true - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\$(TargetName)\ - - - true - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\$(TargetName)\ - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\$(TargetName)\ - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\$(TargetName)\ - - - - - - Level1 - Disabled - _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreadedDebug - - - Console - true - openbsd_compat.lib;libssh.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - - - powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" - - - Generate crtheaders.h and config.h - - - copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" -copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" -copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" -If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") - Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory - - - - - - - Level1 - Disabled - _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreadedDebug - - - Console - true - openbsd_compat.lib;libssh.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - - - powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" - - - Generate crtheaders.h and config.h - - - copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" -copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" -copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" -If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") - Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory - - - - - Level1 - - - MaxSpeed - true - true - _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - - - Console - No - true - true - openbsd_compat.lib;libssh.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - - - powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" - - - Generate crtheaders.h and config.h - - - copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" -copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" -copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" -If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") - Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory - - - - - Level1 - - - MaxSpeed - true - true - _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - - - Console - No - true - true - openbsd_compat.lib;libssh.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - - - powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" - - - Generate crtheaders.h and config.h - - - copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" -copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" -copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" -copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" -If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") - Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory - - - - - - - - - + + + + + true + + + + Debug + ARM + + + Debug + ARM64 + + + Debug + Win32 + + + Release + ARM + + + Release + ARM64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {8F9D3B74-8D33-448E-9762-26E8DCC6B2F4} + Win32Proj + config + $(WindowsSDKVersion) + config + true + true + + + + Application + true + v140 + MultiByte + + + Application + false + v140 + true + MultiByte + + + Utility + true + v140 + MultiByte + + + Utility + true + v141 + MultiByte + + + Utility + true + v141 + MultiByte + + + Application + false + v140 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + + + Console + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + + + Console + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + + + Console + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + + + Console + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + No + true + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + No + true + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + No + true + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat\includes;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + No + true + true + openbsd_compat.lib;libssh.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + + + powershell.exe -Executionpolicy Bypass -File "$(SolutionDir)config.ps1" -Config_h_vs "$(SolutionDir)config.h.vs" -Config_h "$(OpenSSH-Src-Path)config.h" -VCIncludePath "$(VC_IncludePath)" -OutCRTHeader "$(OpenSSH-Src-Path)contrib\win32\win32compat\inc\crtheaders.h" + + + Generate crtheaders.h and config.h + + + copy /Y "$(SolutionDir)install-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)uninstall-ssh*ps1" "$(OutDir)" +copy /Y "$(SolutionDir)OpenSSHUtils.ps*1" "$(OutDir)" +copy /Y "$(SolutionDir)Fix*FilePermissions.ps1" "$(OutDir)" +copy /Y "$(SolutionDir)ssh-add-hostkey.ps1" "$(OutDir)" +If NOT exist "$(OutDir)\sshd_config" (copy "$(SolutionDir)sshd_config" "$(OutDir)") + Copy install-sshd.ps1, uninstall-sshd.ps1, OpenSSHUtils.psm1, OpenSSHUtils.psd1, FixHostFilePermissions.ps1, FixUserFilePermissions.ps1, ssh-add-hostkey.ps1, and sshd_config (if not already present) to build directory + + + + + + + + + \ No newline at end of file diff --git a/contrib/win32/openssh/keygen.vcxproj b/contrib/win32/openssh/keygen.vcxproj index a0607bc5b..3cf2b6122 100644 --- a/contrib/win32/openssh/keygen.vcxproj +++ b/contrib/win32/openssh/keygen.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ keygen $(WindowsSDKVersion) ssh-keygen + true + true @@ -46,6 +64,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -67,9 +111,21 @@ + + + + + + + + + + + + true @@ -83,6 +139,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -95,6 +163,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -111,7 +191,7 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -132,11 +212,53 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + Level1 @@ -181,12 +303,62 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup true + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + diff --git a/contrib/win32/openssh/libssh.vcxproj b/contrib/win32/openssh/libssh.vcxproj index 30aa532e5..38e795fc1 100644 --- a/contrib/win32/openssh/libssh.vcxproj +++ b/contrib/win32/openssh/libssh.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -24,6 +40,8 @@ Win32Proj libssh $(WindowsSDKVersion) + true + true @@ -38,6 +56,18 @@ v140 MultiByte + + StaticLibrary + true + v141 + MultiByte + + + StaticLibrary + true + v141 + MultiByte + StaticLibrary false @@ -52,6 +82,20 @@ true MultiByte + + StaticLibrary + false + v141 + true + MultiByte + + + StaticLibrary + false + v141 + true + MultiByte + @@ -63,12 +107,24 @@ + + + + + + + + + + + + $(Platform)\$(Configuration)\$(TargetName)\ @@ -80,6 +136,16 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ @@ -90,6 +156,16 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -128,6 +204,50 @@ true + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + false + MultiThreadedDebug + CompileAsC + ProgramDatabase + false + + + Windows + true + + + /ignore:4221 + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + false + MultiThreadedDebug + CompileAsC + ProgramDatabase + false + + + Windows + true + + + /ignore:4221 + + Level1 @@ -169,6 +289,54 @@ true + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + false + + + Windows + true + true + true + + + /ignore:4221 + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + false + + + Windows + true + true + true + + + /ignore:4221 + + diff --git a/contrib/win32/openssh/openbsd_compat.vcxproj b/contrib/win32/openssh/openbsd_compat.vcxproj index 1c79489e3..0f2eaa6c7 100644 --- a/contrib/win32/openssh/openbsd_compat.vcxproj +++ b/contrib/win32/openssh/openbsd_compat.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -124,6 +140,8 @@ Win32Proj openbsd_compat $(WindowsSDKVersion) + true + true @@ -138,6 +156,18 @@ v140 MultiByte + + StaticLibrary + true + v141 + MultiByte + + + StaticLibrary + true + v141 + MultiByte + StaticLibrary false @@ -152,6 +182,20 @@ true MultiByte + + StaticLibrary + false + v141 + true + MultiByte + + + StaticLibrary + false + v141 + true + MultiByte + @@ -163,12 +207,24 @@ + + + + + + + + + + + + $(Platform)\$(Configuration)\$(TargetName)\ @@ -180,6 +236,16 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ @@ -190,6 +256,16 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -224,6 +300,46 @@ true + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)openbsd-compat;$(OpenSSH-Src-Path)libkrb;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Windows + true + + + /ignore:4221 + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)openbsd-compat;$(OpenSSH-Src-Path)libkrb;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Windows + true + + + /ignore:4221 + + Level1 @@ -265,6 +381,54 @@ true + + + Level1 + NotUsing + MaxSpeed + true + true + _LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WIN32_WINNT=0x600;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)openbsd-compat;$(OpenSSH-Src-Path)libkrb;%(AdditionalIncludeDirectories) + MultiThreaded + true + Guard + + + Windows + true + true + true + + + /ignore:4221 + + + + + Level1 + NotUsing + MaxSpeed + true + true + _LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_WIN32_WINNT=0x600;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)openbsd-compat;$(OpenSSH-Src-Path)libkrb;%(AdditionalIncludeDirectories) + MultiThreaded + true + Guard + + + Windows + true + true + true + + + /ignore:4221 + + diff --git a/contrib/win32/openssh/paths.targets b/contrib/win32/openssh/paths.targets index e4c6c2873..3b16b0ba3 100644 --- a/contrib/win32/openssh/paths.targets +++ b/contrib/win32/openssh/paths.targets @@ -1,14 +1,18 @@ - - - - $(SolutionDir)..\..\..\ - $(SolutionDir)..\..\..\bin\ - $(SolutionDir)lib\ - $(SolutionDir)\LibreSSLSDK\ - $(SolutionDir)\LibreSSLSDK\x86\ - $(SolutionDir)\LibreSSLSDK\x64\ - true - 8.1 - bcrypt.lib;Userenv.lib;Crypt32.lib;Ws2_32.lib;Secur32.lib;Shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Netapi32.lib - + + + + $(SolutionDir)..\..\..\ + $(SolutionDir)..\..\..\bin\ + $(SolutionDir)lib\ + $(SolutionDir)\LibreSSLSDK\ + $(SolutionDir)\LibreSSLSDK\x86\ + $(SolutionDir)\LibreSSLSDK\x64\ + $(SolutionDir)\LibreSSLSDK\arm64\ + $(SolutionDir)\LibreSSLSDK\arm\ + true + libcrypto.lib; + 8.1 + bcrypt.lib;Userenv.lib;Crypt32.lib;Ws2_32.lib;Secur32.lib;Shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Netapi32.lib + false + \ No newline at end of file diff --git a/contrib/win32/openssh/scp.vcxproj b/contrib/win32/openssh/scp.vcxproj index fe41a4e93..b61161589 100644 --- a/contrib/win32/openssh/scp.vcxproj +++ b/contrib/win32/openssh/scp.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -33,6 +49,8 @@ keygen $(WindowsSDKVersion) scp + true + true @@ -54,6 +72,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -61,6 +91,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -75,9 +119,21 @@ + + + + + + + + + + + + true @@ -91,6 +147,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -103,6 +171,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -145,6 +225,48 @@ wmainCRTStartup + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + Guard + ProgramDatabase + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + Guard + ProgramDatabase + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + Level1 @@ -195,6 +317,56 @@ true + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + diff --git a/contrib/win32/openssh/sftp-server.vcxproj b/contrib/win32/openssh/sftp-server.vcxproj index 3b1d4e031..402a0b322 100644 --- a/contrib/win32/openssh/sftp-server.vcxproj +++ b/contrib/win32/openssh/sftp-server.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -34,6 +50,8 @@ keygen $(WindowsSDKVersion) sftp-server + true + true @@ -55,6 +73,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -62,6 +92,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -76,9 +120,21 @@ + + + + + + + + + + + + true @@ -92,6 +148,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -104,6 +172,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -146,6 +226,48 @@ wmainCRTStartup + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + Level1 @@ -196,6 +318,56 @@ true + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + diff --git a/contrib/win32/openssh/sftp.vcxproj b/contrib/win32/openssh/sftp.vcxproj index bdd352e06..d8fdcbddc 100644 --- a/contrib/win32/openssh/sftp.vcxproj +++ b/contrib/win32/openssh/sftp.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -37,7 +53,9 @@ keygen $(WindowsSDKVersion) sftp - + true + true + Application @@ -58,6 +76,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -65,6 +95,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -79,9 +123,21 @@ + + + + + + + + + + + + true @@ -95,6 +151,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -107,6 +175,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -123,7 +203,7 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -144,7 +224,49 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -168,7 +290,7 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) wmainCRTStartup true @@ -193,7 +315,57 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) wmainCRTStartup true diff --git a/contrib/win32/openssh/ssh-add.vcxproj b/contrib/win32/openssh/ssh-add.vcxproj index fd9e12102..3b3080e59 100644 --- a/contrib/win32/openssh/ssh-add.vcxproj +++ b/contrib/win32/openssh/ssh-add.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -35,6 +51,8 @@ keygen $(WindowsSDKVersion) ssh-add + true + true @@ -56,6 +74,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -63,6 +93,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -77,9 +121,21 @@ + + + + + + + + + + + + true @@ -93,6 +149,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -105,6 +173,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -121,7 +201,7 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -142,11 +222,53 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x501;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + Level1 @@ -166,7 +288,7 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) wmainCRTStartup true @@ -191,12 +313,62 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup true + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + + + Level1 + + + MaxSpeed + true + true + _WIN32_WINNT=0x501;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + diff --git a/contrib/win32/openssh/ssh-agent.vcxproj b/contrib/win32/openssh/ssh-agent.vcxproj index 9397ac25a..5ef22ed5b 100644 --- a/contrib/win32/openssh/ssh-agent.vcxproj +++ b/contrib/win32/openssh/ssh-agent.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) ssh-agent + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + ssh-agent + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + ssh-agent + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -99,6 +169,20 @@ ssh-agent $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + ssh-agent + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + ssh-agent + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -117,7 +201,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) targetos.manifest @@ -140,7 +224,53 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories);$(OpenSSH-Src-Path)contrib\win32\ssh-pubkey + CompileAsC + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories);$(OpenSSH-Src-Path)contrib\win32\ssh-pubkey + CompileAsC + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) targetos.manifest @@ -165,7 +295,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) true @@ -192,7 +322,61 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + true + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories);$(OpenSSH-Src-Path)contrib\win32\ssh-pubkey + MultiThreaded + true + Guard + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + true + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories);$(OpenSSH-Src-Path)contrib\win32\ssh-pubkey + MultiThreaded + true + Guard + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) true @@ -218,6 +402,7 @@ + diff --git a/contrib/win32/openssh/ssh-keyscan.vcxproj b/contrib/win32/openssh/ssh-keyscan.vcxproj index e116ab5b6..4dec876a0 100644 --- a/contrib/win32/openssh/ssh-keyscan.vcxproj +++ b/contrib/win32/openssh/ssh-keyscan.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ sshkeyscan $(WindowsSDKVersion) ssh-keyscan + true + true @@ -46,6 +64,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -67,9 +111,21 @@ + + + + + + + + + + + + true @@ -83,6 +139,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + true $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -95,6 +163,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -110,7 +190,7 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -133,7 +213,7 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup @@ -141,6 +221,52 @@ targetos.manifest + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + + + targetos.manifest + + Level1 @@ -159,7 +285,7 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) wmainCRTStartup true @@ -187,7 +313,7 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) wmainCRTStartup true @@ -196,6 +322,62 @@ targetos.manifest + + + Level1 + NotUsing + Disabled + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + false + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + targetos.manifest + + + + + Level1 + NotUsing + Disabled + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + false + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + wmainCRTStartup + true + + + targetos.manifest + + diff --git a/contrib/win32/openssh/ssh-shellhost.vcxproj b/contrib/win32/openssh/ssh-shellhost.vcxproj index 93b9c225a..c305ae2cb 100644 --- a/contrib/win32/openssh/ssh-shellhost.vcxproj +++ b/contrib/win32/openssh/ssh-shellhost.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -32,6 +48,8 @@ shellhost $(WindowsSDKVersion) ssh-shellhost + true + true @@ -53,6 +71,18 @@ v140 Unicode + + Application + true + v141 + Unicode + + + Application + true + v141 + Unicode + Application false @@ -60,6 +90,20 @@ true Unicode + + Application + false + v141 + true + Unicode + + + Application + false + v141 + true + Unicode + @@ -74,9 +118,21 @@ + + + + + + + + + + + + true @@ -88,6 +144,16 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -98,6 +164,16 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + @@ -140,6 +216,48 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + + + + Level3 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + false + + + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + + + + + + Level3 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + false + + + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + Level3 @@ -190,6 +308,56 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + + Level3 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + + + MultiThreaded + Guard + + + Console + true + true + true + openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + + + + Level3 + + + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + + + MultiThreaded + Guard + + + Console + true + true + true + openbsd_compat.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + + diff --git a/contrib/win32/openssh/ssh.vcxproj b/contrib/win32/openssh/ssh.vcxproj index 416bfe633..25e8eec17 100644 --- a/contrib/win32/openssh/ssh.vcxproj +++ b/contrib/win32/openssh/ssh.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) ssh + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + ssh + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + ssh + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -99,6 +169,20 @@ ssh $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + ssh + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + ssh + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -117,7 +201,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -141,7 +225,55 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -167,7 +299,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup true @@ -195,7 +327,63 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + true + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + Guard + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + true + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + Guard + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup true diff --git a/contrib/win32/openssh/sshd.vcxproj b/contrib/win32/openssh/sshd.vcxproj index dd6d84bfe..e88870aba 100644 --- a/contrib/win32/openssh/sshd.vcxproj +++ b/contrib/win32/openssh/sshd.vcxproj @@ -2,10 +2,26 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ keygen $(WindowsSDKVersion) sshd + true + true @@ -46,6 +64,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -67,9 +111,21 @@ + + + + + + + + + + + + true @@ -83,6 +139,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + true + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ @@ -95,6 +163,18 @@ $(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + @@ -111,10 +191,11 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) MultiplyDefinedSymbolOnly wmainCRTStartup + LinkVerbose targetos.manifest @@ -136,10 +217,63 @@ Console true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) MultiplyDefinedSymbolOnly wmainCRTStartup + LinkVerbose + + + targetos.manifest + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32_ZLIB_NO;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + MultiplyDefinedSymbolOnly + wmainCRTStartup + LinkVerbose + + + targetos.manifest + + + + + + + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32_ZLIB_NO;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreadedDebug + ProgramDatabase + Guard + + + Console + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + MultiplyDefinedSymbolOnly + wmainCRTStartup + LinkVerbose targetos.manifest @@ -164,11 +298,12 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) MultiplyDefinedSymbolOnly wmainCRTStartup true + LinkVerbose targetos.manifest @@ -194,11 +329,74 @@ true true true - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;$(AdditionalDependentLibs);%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) MultiplyDefinedSymbolOnly wmainCRTStartup true + LinkVerbose + + + targetos.manifest + + + + + Level1 + + + Disabled + true + true + _WIN32_WINNT=0x600;WIN32_ZLIB_NO;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + false + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + MultiplyDefinedSymbolOnly + wmainCRTStartup + true + LinkVerbose + + + targetos.manifest + + + + + Level1 + + + Disabled + true + true + _WIN32_WINNT=0x600;WIN32_ZLIB_NO;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + false + Guard + + + Console + true + true + true + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + MultiplyDefinedSymbolOnly + wmainCRTStartup + true + LinkVerbose targetos.manifest @@ -251,6 +449,7 @@ + diff --git a/contrib/win32/openssh/sshd.vcxproj.filters b/contrib/win32/openssh/sshd.vcxproj.filters index f5c22820d..14bfc8280 100644 --- a/contrib/win32/openssh/sshd.vcxproj.filters +++ b/contrib/win32/openssh/sshd.vcxproj.filters @@ -153,6 +153,9 @@ Source Files + + Source Files + diff --git a/contrib/win32/openssh/unittest-bitmap.vcxproj b/contrib/win32/openssh/unittest-bitmap.vcxproj index 3e877a447..7102700e2 100644 --- a/contrib/win32/openssh/unittest-bitmap.vcxproj +++ b/contrib/win32/openssh/unittest-bitmap.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) unittest-bitmap + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-bitmap + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-bitmap + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ @@ -99,6 +169,20 @@ unittest-bitmap $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-bitmap + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-bitmap + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -116,7 +200,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -139,7 +223,53 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -164,7 +294,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -190,7 +320,59 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup diff --git a/contrib/win32/openssh/unittest-hostkeys.vcxproj b/contrib/win32/openssh/unittest-hostkeys.vcxproj index 9e9a77faa..6c05f1436 100644 --- a/contrib/win32/openssh/unittest-hostkeys.vcxproj +++ b/contrib/win32/openssh/unittest-hostkeys.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) unittest-hostkeys + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-hostkeys + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-hostkeys + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ @@ -99,6 +169,20 @@ unittest-hostkeys $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-hostkeys + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-hostkeys + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -116,7 +200,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -142,7 +226,59 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\hostkeys\testdata\*" "$(OutDir)" + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\hostkeys\testdata\*" "$(OutDir)" + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -170,7 +306,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -199,7 +335,65 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\hostkeys\testdata\*" "$(OutDir)" + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\hostkeys\testdata\*" "$(OutDir)" + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -210,10 +404,18 @@ - - - - + + true + + + true + + + true + + + true + diff --git a/contrib/win32/openssh/unittest-kex.vcxproj b/contrib/win32/openssh/unittest-kex.vcxproj index dbc0262fa..e2452b1c4 100644 --- a/contrib/win32/openssh/unittest-kex.vcxproj +++ b/contrib/win32/openssh/unittest-kex.vcxproj @@ -1,217 +1,399 @@ - - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {8EC56B06-5A9A-4D6D-804D-037FE26FD43E} - Win32Proj - Win32OpenSSH - $(WindowsSDKVersion) - unittest-kex - - - - Application - true - v140 - MultiByte - - - Application - true - v140 - MultiByte - - - Application - false - v140 - true - MultiByte - - - Application - false - v140 - true - MultiByte - - - - - - - - - - - - - - - - - - - - - false - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-kex - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-kex - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-kex - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-kex - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - - NotUsing - Level1 - Disabled - _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - CompileAsC - MultiThreadedDebug - Sync - ProgramDatabase - - - Console - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - NotUsing - Level1 - Disabled - _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - CompileAsC - MultiThreadedDebug - ProgramDatabase - - - Console - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - Level1 - NotUsing - MaxSpeed - true - true - _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - - - Console - true - true - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - Level1 - NotUsing - MaxSpeed - true - true - _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - true - - - Console - true - true - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - true - - - true - - - true - - - true - - - - - + + + + + + Debug + ARM + + + Debug + ARM64 + + + Debug + Win32 + + + Debug + x64 + + + Release + ARM + + + Release + ARM64 + + + Release + Win32 + + + Release + x64 + + + + {8EC56B06-5A9A-4D6D-804D-037FE26FD43E} + Win32Proj + Win32OpenSSH + $(WindowsSDKVersion) + unittest-kex + true + true + + + + Application + true + v140 + MultiByte + + + Application + true + v140 + MultiByte + + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + + + Application + false + v140 + true + MultiByte + + + Application + false + v140 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-kex + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + Sync + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + true + + + true + + + true + + + true + + + + + \ No newline at end of file diff --git a/contrib/win32/openssh/unittest-match.vcxproj b/contrib/win32/openssh/unittest-match.vcxproj index 344cf016a..c16ae5759 100644 --- a/contrib/win32/openssh/unittest-match.vcxproj +++ b/contrib/win32/openssh/unittest-match.vcxproj @@ -1,214 +1,396 @@ - - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {484A8CDE-B949-4BDA-B447-74685C8E032F} - Win32Proj - Win32OpenSSH - $(WindowsSDKVersion) - unittest-match - - - - Application - true - v140 - MultiByte - - - Application - true - v140 - MultiByte - - - Application - false - v140 - true - MultiByte - - - Application - false - v140 - true - MultiByte - - - - - - - - - - - - - - - - - - - - - false - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-match - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-match - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-match - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - false - $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ - $(Platform)\$(Configuration)\$(TargetName)\ - unittest-match - $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); - - - - NotUsing - Level1 - Disabled - _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - CompileAsC - MultiThreadedDebug - Sync - ProgramDatabase - - - Console - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - NotUsing - Level1 - Disabled - _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - CompileAsC - MultiThreadedDebug - ProgramDatabase - - - Console - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - Level1 - NotUsing - MaxSpeed - true - true - _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - - - Console - true - true - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - Level1 - NotUsing - MaxSpeed - true - true - _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - false - $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) - MultiThreaded - true - - - Console - true - true - true - $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) - wmainCRTStartup - - - targetos.manifest - - - - - true - - - true - - - true - - - - - + + + + + + Debug + ARM + + + Debug + ARM64 + + + Debug + Win32 + + + Debug + x64 + + + Release + ARM + + + Release + ARM64 + + + Release + Win32 + + + Release + x64 + + + + {484A8CDE-B949-4BDA-B447-74685C8E032F} + Win32Proj + Win32OpenSSH + $(WindowsSDKVersion) + unittest-match + true + true + + + + Application + true + v140 + MultiByte + + + Application + true + v140 + MultiByte + + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + + + Application + false + v140 + true + MultiByte + + + Application + false + v140 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-match + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + Sync + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + true + + + true + + + true + + + + + \ No newline at end of file diff --git a/contrib/win32/openssh/unittest-sshbuf.vcxproj b/contrib/win32/openssh/unittest-sshbuf.vcxproj index 3900aa400..1a405abc9 100644 --- a/contrib/win32/openssh/unittest-sshbuf.vcxproj +++ b/contrib/win32/openssh/unittest-sshbuf.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) unittest-sshbuf + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshbuf + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshbuf + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ @@ -99,6 +169,20 @@ unittest-sshbuf $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshbuf + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshbuf + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -116,7 +200,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -139,7 +223,53 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -164,7 +294,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -190,7 +320,59 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -199,19 +381,19 @@ - true + true - true + true - true + true - true + true - true + true true @@ -220,16 +402,16 @@ true - true + true - true + true - true + true - true + true diff --git a/contrib/win32/openssh/unittest-sshkey.vcxproj b/contrib/win32/openssh/unittest-sshkey.vcxproj index 57023b8ff..42f60061a 100644 --- a/contrib/win32/openssh/unittest-sshkey.vcxproj +++ b/contrib/win32/openssh/unittest-sshkey.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32OpenSSH $(WindowsSDKVersion) unittest-sshkey + true + true @@ -39,6 +57,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -53,6 +83,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -64,12 +108,24 @@ + + + + + + + + + + + + false @@ -85,6 +141,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshkey + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshkey + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ @@ -99,6 +169,20 @@ unittest-sshkey $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshkey + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-sshkey + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -116,7 +200,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -142,7 +226,59 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\sshkey\testdata\*" "$(OutDir)" + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\sshkey\testdata\*" "$(OutDir)" + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -170,7 +306,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -199,7 +335,65 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\sshkey\testdata\*" "$(OutDir)" + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + xcopy /Y "$(ProjectDir)..\..\..\regress\unittests\sshkey\testdata\*" "$(OutDir)" + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -211,28 +405,28 @@ - true + true - true + true - true + true - true + true - true + true - true + true - true + true - true + true diff --git a/contrib/win32/openssh/unittest-win32compat.vcxproj b/contrib/win32/openssh/unittest-win32compat.vcxproj index 39942e26d..d5db5ea19 100644 --- a/contrib/win32/openssh/unittest-win32compat.vcxproj +++ b/contrib/win32/openssh/unittest-win32compat.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -20,14 +36,30 @@ - - - - - - - - + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + @@ -38,6 +70,8 @@ Win32OpenSSH $(WindowsSDKVersion) unittest-win32compat + true + true @@ -52,6 +86,18 @@ v140 MultiByte + + Application + true + v141 + MultiByte + + + Application + true + v141 + MultiByte + Application false @@ -66,6 +112,20 @@ true MultiByte + + Application + false + v141 + true + MultiByte + + + Application + false + v141 + true + MultiByte + @@ -77,12 +137,24 @@ + + + + + + + + + + + + false @@ -98,6 +170,20 @@ $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-win32compat + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-win32compat + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + false $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ @@ -112,6 +198,20 @@ unittest-win32compat $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-win32compat + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + + + false + $(OpenSSH-Bin-Path)$(Platform)\$(Configuration)\$(TargetName)\ + $(Platform)\$(Configuration)\$(TargetName)\ + unittest-win32compat + $(OpenSSH-Src-Path)contrib\win32\win32compat\inc;$(VC_IncludePath);$(WindowsSDK_IncludePath); + NotUsing @@ -129,7 +229,7 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -152,7 +252,53 @@ Console true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_UNICODE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + NotUsing + Level1 + Disabled + _WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;_UNICODE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + CompileAsC + MultiThreadedDebug + ProgramDatabase + + + Console + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -177,7 +323,7 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x86-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup @@ -203,7 +349,59 @@ true true $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-x64-Path);%(AdditionalLibraryDirectories) - posix_compat.lib;libssh.lib;openbsd_compat.lib;libcrypto.lib;Ws2_32.lib;Netapi32.lib;Secur32.lib;%(AdditionalDependencies) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm64-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) + wmainCRTStartup + + + targetos.manifest + + + + + Level1 + NotUsing + MaxSpeed + true + true + _WIN32_WINNT=0x600;_LIB;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + $(SolutionDir);$(LibreSSL-Path)include;$(OpenSSH-Src-Path)includes;$(OpenSSH-Src-Path);$(OpenSSH-Src-Path)contrib\win32\win32compat;$(OpenSSH-Src-Path)libkrb;$(OpenSSH-Src-Path)libkrb\libKrb5;%(AdditionalIncludeDirectories) + MultiThreaded + true + + + Console + true + true + true + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration);$(LibreSSL-arm-Path);%(AdditionalLibraryDirectories) + posix_compat.lib;libssh.lib;openbsd_compat.lib;$(SSLLib)$(AdditionalDependentLibs);%(AdditionalDependencies) wmainCRTStartup diff --git a/contrib/win32/openssh/win32iocompat.vcxproj b/contrib/win32/openssh/win32iocompat.vcxproj index fe338da19..3a3628c0c 100644 --- a/contrib/win32/openssh/win32iocompat.vcxproj +++ b/contrib/win32/openssh/win32iocompat.vcxproj @@ -2,6 +2,14 @@ + + Debug + ARM + + + Debug + ARM64 + Debug Win32 @@ -10,6 +18,14 @@ Debug x64 + + Release + ARM + + + Release + ARM64 + Release Win32 @@ -25,6 +41,8 @@ Win32Proj $(WindowsSDKVersion) posix_compat + true + true @@ -39,6 +57,18 @@ MultiByte true + + StaticLibrary + v141 + MultiByte + true + + + StaticLibrary + v141 + MultiByte + true + StaticLibrary v140 @@ -49,6 +79,16 @@ v140 MultiByte + + StaticLibrary + v141 + MultiByte + + + StaticLibrary + v141 + MultiByte + @@ -58,12 +98,24 @@ + + + + + + + + + + + + <_ProjectFileVersion>14.0.23107.0 @@ -76,6 +128,14 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ @@ -84,6 +144,14 @@ $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ $(Platform)\$(Configuration)\$(TargetName)\ + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + + + $(OpenSSH-Lib-Path)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(TargetName)\ + Disabled @@ -116,6 +184,36 @@ Guard + + + Disabled + + + USE_MSCNG;_WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebug + NotUsing + Level3 + ProgramDatabase + false + Guard + + + + + Disabled + + + USE_MSCNG;_WIN32_WINNT=0x600;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebug + NotUsing + Level3 + ProgramDatabase + false + Guard + + @@ -145,6 +243,38 @@ Guard + + + + + _LIB;USE_MSCNG;_WIN32_WINNT=0x600;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + MultiThreaded + NotUsing + Level1 + ProgramDatabase + false + Disabled + false + true + Guard + + + + + + + _LIB;USE_MSCNG;_WIN32_WINNT=0x600;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + MultiThreaded + NotUsing + Level1 + ProgramDatabase + false + Disabled + false + true + Guard + + diff --git a/contrib/win32/win32compat/logonuser.c b/contrib/win32/win32compat/logonuser.c new file mode 100644 index 000000000..a4313149a --- /dev/null +++ b/contrib/win32/win32compat/logonuser.c @@ -0,0 +1,70 @@ +/* +* Author: Yanbing Wang +* +* Support logon user call on Win32 based operating systems. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* +* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include +#include "debug.h" + +static HMODULE hMod = NULL; + +/* Define the function prototype */ +typedef BOOL(WINAPI *LogonUserExExWType)(wchar_t*, wchar_t*, wchar_t*, DWORD, DWORD, PTOKEN_GROUPS, PHANDLE, PSID, PVOID, LPDWORD, PQUOTA_LIMITS); + +/* +* The function uses LoadLibrary and GetProcAddress to access +* LogonUserExExW function from sspicli.dll. +*/ +BOOL +LogonUserExExWHelper(wchar_t *user_name, wchar_t *domain, wchar_t *password, DWORD logon_type, + DWORD logon_provider, PTOKEN_GROUPS token_groups, PHANDLE token, PSID *logon_sid, + PVOID *profile_buffer, LPDWORD profile_length, PQUOTA_LIMITS quota_limits) +{ + LogonUserExExWType func = NULL; + wchar_t sspicli_dll_path[MAX_PATH + 1] = { 0, }; + wchar_t system32_path[MAX_PATH + 1] = { 0, }; + + if (!GetSystemDirectoryW(system32_path, _countof(system32_path))) { + debug3("GetSystemDirectory failed with error %d", GetLastError()); + return FALSE; + } + wcsncpy_s(sspicli_dll_path, _countof(sspicli_dll_path), system32_path, wcsnlen(system32_path, _countof(system32_path)) + 1); + wcscat_s(sspicli_dll_path, _countof(sspicli_dll_path), L"\\sspicli.dll"); + + if (hMod == NULL) + hMod = LoadLibraryW(sspicli_dll_path); + + if (hMod == NULL) { + debug3("Failed to retrieve the module handle of sspicli.dll with error %d", GetLastError()); + return FALSE; + } + if ((func = (LogonUserExExWType)GetProcAddress(hMod, "LogonUserExExW")) == NULL) { + debug3("GetProcAddress of LogonUserExExW failed with error $d.", GetLastError()); + return FALSE; + } + + return func(user_name, domain, password, logon_type, logon_provider, + token_groups, token, logon_sid, profile_buffer, profile_length, quota_limits); +} \ No newline at end of file diff --git a/contrib/win32/win32compat/logonuser.h b/contrib/win32/win32compat/logonuser.h new file mode 100644 index 000000000..6b0dc8778 --- /dev/null +++ b/contrib/win32/win32compat/logonuser.h @@ -0,0 +1,16 @@ +/* +* Author: Manoj Ampalam +* +* Compatibility header to give us pwd-like functionality on Win32 +* A lot of passwd fields are not applicable in Windows, neither are some API calls based on this structure +* Ideally, usage of this structure needs to be replaced in core SSH code to an ssh_user interface, +* that each platform can extend and implement. +*/ + +#ifndef LOGONUSER_H +#define LOGONUSER_H + +BOOL +LogonUserExExWHelper(wchar_t *, wchar_t *, wchar_t *, DWORD, DWORD, PTOKEN_GROUPS, PHANDLE, PSID *, PVOID *, LPDWORD, PQUOTA_LIMITS); + +#endif diff --git a/contrib/win32/win32compat/shell-host.c b/contrib/win32/win32compat/shell-host.c index acf67f1d2..3bfa4a198 100644 --- a/contrib/win32/win32compat/shell-host.c +++ b/contrib/win32/win32compat/shell-host.c @@ -1652,26 +1652,30 @@ static void* xmalloc(size_t size) { #define SET_USER_ENV(folder_id, evn_variable) do { \ if (SHGetKnownFolderPath(&folder_id,0,NULL,&path) == S_OK) \ - { \ + { \ SetEnvironmentVariableW(evn_variable, path); \ CoTaskMemFree(path); \ } \ } while (0) /* set user environment variables from user profile */ -static void setup_session_user_vars() +static void setup_session_user_vars() { /* retrieve and set env variables. */ HKEY reg_key = 0; - wchar_t *path; wchar_t name[256]; + wchar_t userprofile_path[PATH_MAX + 1] = { 0, }, path[PATH_MAX + 1] = { 0, }; wchar_t *data = NULL, *data_expanded = NULL, *path_value = NULL, *to_apply; DWORD type, name_chars = 256, data_chars = 0, data_expanded_chars = 0, required, i = 0; LONG ret; - - SET_USER_ENV(FOLDERID_LocalAppData, L"LOCALAPPDATA"); - SET_USER_ENV(FOLDERID_Profile, L"USERPROFILE"); - SET_USER_ENV(FOLDERID_RoamingAppData, L"APPDATA"); + DWORD len = GetCurrentDirectory(_countof(userprofile_path), userprofile_path); + if (len > 0) { + SetEnvironmentVariableW(L"USERPROFILE", userprofile_path); + swprintf_s(path, _countof(path), L"%s\\AppData\\Local", userprofile_path); + SetEnvironmentVariableW(L"LOCALAPPDATA", path); + swprintf_s(path, _countof(path), L"%s\\AppData\\Roaming", userprofile_path); + SetEnvironmentVariableW(L"APPDATA", path); + } ret = RegOpenKeyExW(HKEY_CURRENT_USER, L"Environment", 0, KEY_QUERY_VALUE, ®_key); if (ret != ERROR_SUCCESS) diff --git a/contrib/win32/win32compat/ssh-agent/authagent-request.c b/contrib/win32/win32compat/ssh-agent/authagent-request.c index 274646d2b..1e9ace5b4 100644 --- a/contrib/win32/win32compat/ssh-agent/authagent-request.c +++ b/contrib/win32/win32compat/ssh-agent/authagent-request.c @@ -1,402 +1,403 @@ -/* -* Author: Manoj Ampalam -* ssh-agent implementation on Windows -* -* Copyright (c) 2015 Microsoft Corp. -* All rights reserved -* -* Microsoft openssh win32 port -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions -* are met: -* -* 1. Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* 2. Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* -* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#define UMDF_USING_NTSTATUS -#include -#include -#include -#include -#include -#include "agent.h" -#include "agent-request.h" -#include "key.h" -#include "inc\utf.h" -#include "..\priv-agent.h" - -#pragma warning(push, 3) - -int pubkey_allowed(struct sshkey* pubkey, char* user_utf8); - -static void -InitLsaString(LSA_STRING *lsa_string, const char *str) -{ - if (str == NULL) - memset(lsa_string, 0, sizeof(LSA_STRING)); - else { - lsa_string->Buffer = (char *)str; - lsa_string->Length = (USHORT)strlen(str); - lsa_string->MaximumLength = lsa_string->Length + 1; - } -} - -static void -EnablePrivilege(const char *privName, int enabled) -{ - TOKEN_PRIVILEGES tp; - HANDLE hProcToken = NULL; - LUID luid; - - int exitCode = 1; - - if (LookupPrivilegeValueA(NULL, privName, &luid) == FALSE || - OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES, &hProcToken) == FALSE) - goto done; - - tp.PrivilegeCount = 1; - tp.Privileges[0].Luid = luid; - tp.Privileges[0].Attributes = enabled ? SE_PRIVILEGE_ENABLED : 0; - - AdjustTokenPrivileges(hProcToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES), NULL, NULL); - -done: - if (hProcToken) - CloseHandle(hProcToken); - - return; -} - - -static HANDLE -LoadProfile(HANDLE user_token, wchar_t* user, wchar_t* domain) { - PROFILEINFOW profileInfo; - HANDLE ret = NULL; - - profileInfo.dwFlags = PI_NOUI; - profileInfo.lpProfilePath = NULL; - profileInfo.lpUserName = user; - profileInfo.lpDefaultPath = NULL; - profileInfo.lpServerName = domain; - profileInfo.lpPolicyPath = NULL; - profileInfo.hProfile = NULL; - profileInfo.dwSize = sizeof(profileInfo); - EnablePrivilege("SeBackupPrivilege", 1); - EnablePrivilege("SeRestorePrivilege", 1); - if (LoadUserProfileW(user_token, &profileInfo) == FALSE) { - debug("Loading user (%ls,%ls) profile failed ERROR: %d", user, domain, GetLastError()); - goto done; - } - else - ret = profileInfo.hProfile; -done: - EnablePrivilege("SeBackupPrivilege", 0); - EnablePrivilege("SeRestorePrivilege", 0); - return ret; -} - -#define MAX_USER_LEN 64 -/* https://technet.microsoft.com/en-us/library/active-directory-maximum-limits-scalability(v=ws.10).aspx */ -#define MAX_FQDN_LEN 64 -#define MAX_PW_LEN 64 - -static HANDLE -generate_user_token(wchar_t* user_cpn) { - HANDLE lsa_handle = 0, token = 0; - LSA_OPERATIONAL_MODE mode; - ULONG auth_package_id; - NTSTATUS ret, subStatus; - void * logon_info = NULL; - size_t logon_info_size; - LSA_STRING logon_process_name, auth_package_name, originName; - TOKEN_SOURCE sourceContext; - PKERB_INTERACTIVE_PROFILE pProfile = NULL; - LUID logonId; - QUOTA_LIMITS quotas; - DWORD cbProfile; - BOOL domain_user; - - domain_user = wcschr(user_cpn, L'@')? TRUE : FALSE; - - InitLsaString(&logon_process_name, "ssh-agent"); - if (domain_user) - InitLsaString(&auth_package_name, MICROSOFT_KERBEROS_NAME_A); - else - InitLsaString(&auth_package_name, MSV1_0_PACKAGE_NAME); - - InitLsaString(&originName, "sshd"); - if (ret = LsaRegisterLogonProcess(&logon_process_name, &lsa_handle, &mode) != STATUS_SUCCESS) - goto done; - - if (ret = LsaLookupAuthenticationPackage(lsa_handle, &auth_package_name, &auth_package_id) != STATUS_SUCCESS) - goto done; - - if (domain_user) { - KERB_S4U_LOGON *s4u_logon; - logon_info_size = sizeof(KERB_S4U_LOGON); - logon_info_size += (wcslen(user_cpn) * 2 + 2); - logon_info = malloc(logon_info_size); - if (logon_info == NULL) - goto done; - s4u_logon = (KERB_S4U_LOGON*)logon_info; - s4u_logon->MessageType = KerbS4ULogon; - s4u_logon->Flags = 0; - s4u_logon->ClientUpn.Length = (USHORT)wcslen(user_cpn) * 2; - s4u_logon->ClientUpn.MaximumLength = s4u_logon->ClientUpn.Length; - s4u_logon->ClientUpn.Buffer = (WCHAR*)(s4u_logon + 1); - if (memcpy_s(s4u_logon->ClientUpn.Buffer, s4u_logon->ClientUpn.Length + 2, user_cpn, s4u_logon->ClientUpn.Length + 2)) - goto done; - s4u_logon->ClientRealm.Length = 0; - s4u_logon->ClientRealm.MaximumLength = 0; - s4u_logon->ClientRealm.Buffer = 0; - } else { - MSV1_0_S4U_LOGON *s4u_logon; - logon_info_size = sizeof(MSV1_0_S4U_LOGON); - /* additional buffer size = size of user_cpn + size of "." and their null terminators */ - logon_info_size += (wcslen(user_cpn) * 2 + 2) + 4; - logon_info = malloc(logon_info_size); - if (logon_info == NULL) - goto done; - s4u_logon = (MSV1_0_S4U_LOGON*)logon_info; - s4u_logon->MessageType = MsV1_0S4ULogon; - s4u_logon->Flags = 0; - s4u_logon->UserPrincipalName.Length = (USHORT)wcslen(user_cpn) * 2; - s4u_logon->UserPrincipalName.MaximumLength = s4u_logon->UserPrincipalName.Length; - s4u_logon->UserPrincipalName.Buffer = (WCHAR*)(s4u_logon + 1); - if(memcpy_s(s4u_logon->UserPrincipalName.Buffer, s4u_logon->UserPrincipalName.Length + 2, user_cpn, s4u_logon->UserPrincipalName.Length + 2)) - goto done; - s4u_logon->DomainName.Length = 2; - s4u_logon->DomainName.MaximumLength = 2; - s4u_logon->DomainName.Buffer = ((WCHAR*)s4u_logon->UserPrincipalName.Buffer) + wcslen(user_cpn) + 1; - if(memcpy_s(s4u_logon->DomainName.Buffer, 4, L".", 4)) - goto done; - } - - if(memcpy_s(sourceContext.SourceName, TOKEN_SOURCE_LENGTH, "sshagent", sizeof(sourceContext.SourceName))) - goto done; - - if (AllocateLocallyUniqueId(&sourceContext.SourceIdentifier) != TRUE) - goto done; - - if (ret = LsaLogonUser(lsa_handle, - &originName, - Network, - auth_package_id, - logon_info, - (ULONG)logon_info_size, - NULL, - &sourceContext, - (PVOID*)&pProfile, - &cbProfile, - &logonId, - &token, - "as, - &subStatus) != STATUS_SUCCESS) { - debug("LsaLogonUser failed NTSTATUS: %d", ret); - goto done; - } - debug3("LsaLogonUser succeeded"); -done: - if (lsa_handle) - LsaDeregisterLogonProcess(lsa_handle); - if (logon_info) - free(logon_info); - if (pProfile) - LsaFreeReturnBuffer(pProfile); - - return token; -} - -static HANDLE -duplicate_token_for_client(struct agent_connection* con, HANDLE t) { - ULONG client_pid; - HANDLE client_proc = NULL, dup_t = NULL; - - /* Should the token match client's session id? - ULONG client_sessionId; - if (GetNamedPipeClientSessionId(con->pipe_handle, &client_sessionId) == FALSE || - SetTokenInformation(t, TokenSessionId, &client_sessionId, sizeof(client_sessionId)) == FALSE) { - error("unable to set token session id, error: %d", GetLastError()); - goto done; - }*/ - - if ((FALSE == GetNamedPipeClientProcessId(con->pipe_handle, &client_pid)) || - ((client_proc = OpenProcess(PROCESS_DUP_HANDLE, FALSE, client_pid)) == NULL) || - DuplicateHandle(GetCurrentProcess(), t, client_proc, &dup_t, TOKEN_QUERY | TOKEN_IMPERSONATE, FALSE, DUPLICATE_SAME_ACCESS) == FALSE ) { - error("failed to duplicate user token"); - goto done; - } - -done: - if (client_proc) - CloseHandle(client_proc); - return dup_t; -} - -int process_pubkeyauth_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { - int r = -1; - char *key_blob, *user, *sig, *blob; - size_t key_blob_len, user_len, sig_len, blob_len; - struct sshkey *key = NULL; - HANDLE token = NULL, dup_token = NULL; - wchar_t *user_utf16 = NULL; - PWSTR wuser_home = NULL; - - - user = NULL; - if (sshbuf_get_string_direct(request, &key_blob, &key_blob_len) != 0 || - sshbuf_get_cstring(request, &user, &user_len) != 0 || - user_len > MAX_USER_LEN || - sshbuf_get_string_direct(request, &sig, &sig_len) != 0 || - sshbuf_get_string_direct(request, &blob, &blob_len) != 0 || - sshkey_from_blob(key_blob, key_blob_len, &key) != 0) { - debug("invalid pubkey auth request"); - goto done; - } - - if ((user_utf16 = utf8_to_utf16(user)) == NULL) { - debug("out of memory"); - goto done; - } - - if ((token = generate_user_token(user_utf16)) == 0) { - error("unable to generate token for user %ls", user_utf16); - /* work around for https://github.com/PowerShell/Win32-OpenSSH/issues/727 by doing a fake login */ - LogonUserW(L"FakeUser", L"FakeDomain", L"FakePasswd", - LOGON32_LOGON_NETWORK_CLEARTEXT, LOGON32_PROVIDER_DEFAULT, &token); - if ((token = generate_user_token(user_utf16)) == 0) { - error("unable to generate token on 2nd attempt for user %ls", user_utf16); - goto done; - } - } - - - if (pubkey_allowed(key, user) != 1) { - debug("unable to verify public key for user %ls (profile:%ls)", user_utf16, wuser_home); - goto done; - } - - if (key_verify(key, sig, (u_int)sig_len, blob, (u_int)blob_len) != 1) { - debug("signature verification failed"); - goto done; - } - - if ((dup_token = duplicate_token_for_client(con, token)) == NULL) - goto done; - - if (sshbuf_put_u32(response, (int)(intptr_t)dup_token) != 0) - goto done; - - r = 0; -done: - /* TODO Fix this hacky protocol*/ - if ((r == -1) && (sshbuf_put_u8(response, SSH_AGENT_FAILURE) == 0)) - r = 0; - - if (user) - free(user); - if (user_utf16) - free(user_utf16); - if (key) - sshkey_free(key); - if (wuser_home) - CoTaskMemFree(wuser_home); - if (token) - CloseHandle(token); - return r; -} - -int process_loadprofile_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { - int r = 0, success = 0; - char *user; - size_t user_len; - u_int32_t user_token_int = 0; - HANDLE user_token = NULL; - wchar_t *user_utf16 = NULL, *dom_utf16 = NULL, *tmp; - - /* is profile already loaded */ - if (con->profile_handle) { - success = 1; - goto done; - } - - if (sshbuf_get_cstring(request, &user, &user_len) != 0 || - user_len > MAX_USER_LEN || - sshbuf_get_u32(request, &user_token_int) != 0){ - debug("invalid loadprofile request"); - goto done; - } - - if (DuplicateHandle(con->client_process_handle, (HANDLE)(INT_PTR)user_token_int, GetCurrentProcess(), - &user_token, TOKEN_QUERY | TOKEN_IMPERSONATE | TOKEN_DUPLICATE, FALSE, 0) == FALSE) { - debug("cannot duplicate user token, error: %d", GetLastError()); - goto done; - } - - if ((user_utf16 = utf8_to_utf16(user)) == NULL) { - debug("out of memory"); - goto done; - } - - /* split user and domain */ - if ((tmp = wcschr(user_utf16, L'@')) != NULL) { - dom_utf16 = tmp + 1; - *tmp = L'\0'; - } - - if ((con->profile_handle = LoadProfile(user_token, user_utf16, dom_utf16)) == NULL) - goto done; - - con->profile_token = user_token; - user_token = NULL; - success = 1; -done: - if (sshbuf_put_u8(response, success ? SSH_AGENT_SUCCESS : SSH_AGENT_FAILURE) != 0) - r = -1; - - if (user_token) - CloseHandle(user_token); - return r; -} - -int process_privagent_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { - char *opn; - size_t opn_len; - if (sshbuf_get_string_direct(request, &opn, &opn_len) != 0) { - debug("invalid auth request"); - return -1; - } - - /* allow only admins and NT Service\sshd to send auth requests */ - if (con->client_type != SSHD_SERVICE && con->client_type != ADMIN_USER) { - error("cannot process request: client process is not admin or sshd"); - return -1; - } - - if (memcmp(opn, PUBKEY_AUTH_REQUEST, opn_len) == 0) - return process_pubkeyauth_request(request, response, con); - else if (memcmp(opn, LOAD_USER_PROFILE_REQUEST, opn_len) == 0) - return process_loadprofile_request(request, response, con); - else { - debug("unknown auth request: %s", opn); - return -1; - } -} - +/* +* Author: Manoj Ampalam +* ssh-agent implementation on Windows +* +* Copyright (c) 2015 Microsoft Corp. +* All rights reserved +* +* Microsoft openssh win32 port +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* +* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#define UMDF_USING_NTSTATUS +#include +#include +#include +#include +#include +#include "agent.h" +#include "agent-request.h" +#include "key.h" +#include "inc\utf.h" +#include "..\priv-agent.h" +#include "logonuser.h" + +#pragma warning(push, 3) + +int pubkey_allowed(struct sshkey* pubkey, char* user_utf8); + +static void +InitLsaString(LSA_STRING *lsa_string, const char *str) +{ + if (str == NULL) + memset(lsa_string, 0, sizeof(LSA_STRING)); + else { + lsa_string->Buffer = (char *)str; + lsa_string->Length = (USHORT)strlen(str); + lsa_string->MaximumLength = lsa_string->Length + 1; + } +} + +static void +EnablePrivilege(const char *privName, int enabled) +{ + TOKEN_PRIVILEGES tp; + HANDLE hProcToken = NULL; + LUID luid; + + int exitCode = 1; + + if (LookupPrivilegeValueA(NULL, privName, &luid) == FALSE || + OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES, &hProcToken) == FALSE) + goto done; + + tp.PrivilegeCount = 1; + tp.Privileges[0].Luid = luid; + tp.Privileges[0].Attributes = enabled ? SE_PRIVILEGE_ENABLED : 0; + + AdjustTokenPrivileges(hProcToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES), NULL, NULL); + +done: + if (hProcToken) + CloseHandle(hProcToken); + + return; +} + + +static HANDLE +LoadProfile(HANDLE user_token, wchar_t* user, wchar_t* domain) { + PROFILEINFOW profileInfo; + HANDLE ret = NULL; + + profileInfo.dwFlags = PI_NOUI; + profileInfo.lpProfilePath = NULL; + profileInfo.lpUserName = user; + profileInfo.lpDefaultPath = NULL; + profileInfo.lpServerName = domain; + profileInfo.lpPolicyPath = NULL; + profileInfo.hProfile = NULL; + profileInfo.dwSize = sizeof(profileInfo); + EnablePrivilege("SeBackupPrivilege", 1); + EnablePrivilege("SeRestorePrivilege", 1); + if (LoadUserProfileW(user_token, &profileInfo) == FALSE) { + debug("Loading user (%ls,%ls) profile failed ERROR: %d", user, domain, GetLastError()); + goto done; + } + else + ret = profileInfo.hProfile; +done: + EnablePrivilege("SeBackupPrivilege", 0); + EnablePrivilege("SeRestorePrivilege", 0); + return ret; +} + +#define MAX_USER_LEN 64 +/* https://technet.microsoft.com/en-us/library/active-directory-maximum-limits-scalability(v=ws.10).aspx */ +#define MAX_FQDN_LEN 64 +#define MAX_PW_LEN 64 + +static HANDLE +generate_user_token(wchar_t* user_cpn) { + HANDLE lsa_handle = 0, token = 0; + LSA_OPERATIONAL_MODE mode; + ULONG auth_package_id; + NTSTATUS ret, subStatus; + void * logon_info = NULL; + size_t logon_info_size; + LSA_STRING logon_process_name, auth_package_name, originName; + TOKEN_SOURCE sourceContext; + PKERB_INTERACTIVE_PROFILE pProfile = NULL; + LUID logonId; + QUOTA_LIMITS quotas; + DWORD cbProfile; + BOOL domain_user; + + domain_user = wcschr(user_cpn, L'@')? TRUE : FALSE; + + InitLsaString(&logon_process_name, "ssh-agent"); + if (domain_user) + InitLsaString(&auth_package_name, MICROSOFT_KERBEROS_NAME_A); + else + InitLsaString(&auth_package_name, MSV1_0_PACKAGE_NAME); + + InitLsaString(&originName, "sshd"); + if (ret = LsaRegisterLogonProcess(&logon_process_name, &lsa_handle, &mode) != STATUS_SUCCESS) + goto done; + + if (ret = LsaLookupAuthenticationPackage(lsa_handle, &auth_package_name, &auth_package_id) != STATUS_SUCCESS) + goto done; + + if (domain_user) { + KERB_S4U_LOGON *s4u_logon; + logon_info_size = sizeof(KERB_S4U_LOGON); + logon_info_size += (wcslen(user_cpn) * 2 + 2); + logon_info = malloc(logon_info_size); + if (logon_info == NULL) + goto done; + s4u_logon = (KERB_S4U_LOGON*)logon_info; + s4u_logon->MessageType = KerbS4ULogon; + s4u_logon->Flags = 0; + s4u_logon->ClientUpn.Length = (USHORT)wcslen(user_cpn) * 2; + s4u_logon->ClientUpn.MaximumLength = s4u_logon->ClientUpn.Length; + s4u_logon->ClientUpn.Buffer = (WCHAR*)(s4u_logon + 1); + if (memcpy_s(s4u_logon->ClientUpn.Buffer, s4u_logon->ClientUpn.Length + 2, user_cpn, s4u_logon->ClientUpn.Length + 2)) + goto done; + s4u_logon->ClientRealm.Length = 0; + s4u_logon->ClientRealm.MaximumLength = 0; + s4u_logon->ClientRealm.Buffer = 0; + } else { + MSV1_0_S4U_LOGON *s4u_logon; + logon_info_size = sizeof(MSV1_0_S4U_LOGON); + /* additional buffer size = size of user_cpn + size of "." and their null terminators */ + logon_info_size += (wcslen(user_cpn) * 2 + 2) + 4; + logon_info = malloc(logon_info_size); + if (logon_info == NULL) + goto done; + s4u_logon = (MSV1_0_S4U_LOGON*)logon_info; + s4u_logon->MessageType = MsV1_0S4ULogon; + s4u_logon->Flags = 0; + s4u_logon->UserPrincipalName.Length = (USHORT)wcslen(user_cpn) * 2; + s4u_logon->UserPrincipalName.MaximumLength = s4u_logon->UserPrincipalName.Length; + s4u_logon->UserPrincipalName.Buffer = (WCHAR*)(s4u_logon + 1); + if(memcpy_s(s4u_logon->UserPrincipalName.Buffer, s4u_logon->UserPrincipalName.Length + 2, user_cpn, s4u_logon->UserPrincipalName.Length + 2)) + goto done; + s4u_logon->DomainName.Length = 2; + s4u_logon->DomainName.MaximumLength = 2; + s4u_logon->DomainName.Buffer = ((WCHAR*)s4u_logon->UserPrincipalName.Buffer) + wcslen(user_cpn) + 1; + if(memcpy_s(s4u_logon->DomainName.Buffer, 4, L".", 4)) + goto done; + } + + if(memcpy_s(sourceContext.SourceName, TOKEN_SOURCE_LENGTH, "sshagent", sizeof(sourceContext.SourceName))) + goto done; + + if (AllocateLocallyUniqueId(&sourceContext.SourceIdentifier) != TRUE) + goto done; + + if (ret = LsaLogonUser(lsa_handle, + &originName, + Network, + auth_package_id, + logon_info, + (ULONG)logon_info_size, + NULL, + &sourceContext, + (PVOID*)&pProfile, + &cbProfile, + &logonId, + &token, + "as, + &subStatus) != STATUS_SUCCESS) { + debug("LsaLogonUser failed NTSTATUS: %d", ret); + goto done; + } + debug3("LsaLogonUser succeeded"); +done: + if (lsa_handle) + LsaDeregisterLogonProcess(lsa_handle); + if (logon_info) + free(logon_info); + if (pProfile) + LsaFreeReturnBuffer(pProfile); + + return token; +} + +static HANDLE +duplicate_token_for_client(struct agent_connection* con, HANDLE t) { + ULONG client_pid; + HANDLE client_proc = NULL, dup_t = NULL; + + /* Should the token match client's session id? + ULONG client_sessionId; + if (GetNamedPipeClientSessionId(con->pipe_handle, &client_sessionId) == FALSE || + SetTokenInformation(t, TokenSessionId, &client_sessionId, sizeof(client_sessionId)) == FALSE) { + error("unable to set token session id, error: %d", GetLastError()); + goto done; + }*/ + + if ((FALSE == GetNamedPipeClientProcessId(con->pipe_handle, &client_pid)) || + ((client_proc = OpenProcess(PROCESS_DUP_HANDLE, FALSE, client_pid)) == NULL) || + DuplicateHandle(GetCurrentProcess(), t, client_proc, &dup_t, TOKEN_QUERY | TOKEN_IMPERSONATE, FALSE, DUPLICATE_SAME_ACCESS) == FALSE ) { + error("failed to duplicate user token"); + goto done; + } + +done: + if (client_proc) + CloseHandle(client_proc); + return dup_t; +} + +int process_pubkeyauth_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { + int r = -1; + char *key_blob, *user, *sig, *blob; + size_t key_blob_len, user_len, sig_len, blob_len; + struct sshkey *key = NULL; + HANDLE token = NULL, dup_token = NULL; + wchar_t *user_utf16 = NULL; + PWSTR wuser_home = NULL; + + + user = NULL; + if (sshbuf_get_string_direct(request, &key_blob, &key_blob_len) != 0 || + sshbuf_get_cstring(request, &user, &user_len) != 0 || + user_len > MAX_USER_LEN || + sshbuf_get_string_direct(request, &sig, &sig_len) != 0 || + sshbuf_get_string_direct(request, &blob, &blob_len) != 0 || + sshkey_from_blob(key_blob, key_blob_len, &key) != 0) { + debug("invalid pubkey auth request"); + goto done; + } + + if ((user_utf16 = utf8_to_utf16(user)) == NULL) { + debug("out of memory"); + goto done; + } + + if ((token = generate_user_token(user_utf16)) == 0) { + error("unable to generate token for user %ls", user_utf16); + /* work around for https://github.com/PowerShell/Win32-OpenSSH/issues/727 by doing a fake login */ + LogonUserExExWHelper(L"FakeUser", L"FakeDomain", L"FakePasswd", + LOGON32_LOGON_NETWORK_CLEARTEXT, LOGON32_PROVIDER_DEFAULT, NULL, &token, NULL, NULL, NULL, NULL); + if ((token = generate_user_token(user_utf16)) == 0) { + error("unable to generate token on 2nd attempt for user %ls", user_utf16); + goto done; + } + } + + + if (pubkey_allowed(key, user) != 1) { + debug("unable to verify public key for user %ls (profile:%ls)", user_utf16, wuser_home); + goto done; + } + + if (key_verify(key, sig, (u_int)sig_len, blob, (u_int)blob_len) != 1) { + debug("signature verification failed"); + goto done; + } + + if ((dup_token = duplicate_token_for_client(con, token)) == NULL) + goto done; + + if (sshbuf_put_u32(response, (int)(intptr_t)dup_token) != 0) + goto done; + + r = 0; +done: + /* TODO Fix this hacky protocol*/ + if ((r == -1) && (sshbuf_put_u8(response, SSH_AGENT_FAILURE) == 0)) + r = 0; + + if (user) + free(user); + if (user_utf16) + free(user_utf16); + if (key) + sshkey_free(key); + if (wuser_home) + CoTaskMemFree(wuser_home); + if (token) + CloseHandle(token); + return r; +} + +int process_loadprofile_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { + int r = 0, success = 0; + char *user; + size_t user_len; + u_int32_t user_token_int = 0; + HANDLE user_token = NULL; + wchar_t *user_utf16 = NULL, *dom_utf16 = NULL, *tmp; + + /* is profile already loaded */ + if (con->profile_handle) { + success = 1; + goto done; + } + + if (sshbuf_get_cstring(request, &user, &user_len) != 0 || + user_len > MAX_USER_LEN || + sshbuf_get_u32(request, &user_token_int) != 0){ + debug("invalid loadprofile request"); + goto done; + } + + if (DuplicateHandle(con->client_process_handle, (HANDLE)(INT_PTR)user_token_int, GetCurrentProcess(), + &user_token, TOKEN_QUERY | TOKEN_IMPERSONATE | TOKEN_DUPLICATE, FALSE, 0) == FALSE) { + debug("cannot duplicate user token, error: %d", GetLastError()); + goto done; + } + + if ((user_utf16 = utf8_to_utf16(user)) == NULL) { + debug("out of memory"); + goto done; + } + + /* split user and domain */ + if ((tmp = wcschr(user_utf16, L'@')) != NULL) { + dom_utf16 = tmp + 1; + *tmp = L'\0'; + } + + if ((con->profile_handle = LoadProfile(user_token, user_utf16, dom_utf16)) == NULL) + goto done; + + con->profile_token = user_token; + user_token = NULL; + success = 1; +done: + if (sshbuf_put_u8(response, success ? SSH_AGENT_SUCCESS : SSH_AGENT_FAILURE) != 0) + r = -1; + + if (user_token) + CloseHandle(user_token); + return r; +} + +int process_privagent_request(struct sshbuf* request, struct sshbuf* response, struct agent_connection* con) { + char *opn; + size_t opn_len; + if (sshbuf_get_string_direct(request, &opn, &opn_len) != 0) { + debug("invalid auth request"); + return -1; + } + + /* allow only admins and NT Service\sshd to send auth requests */ + if (con->client_type != SSHD_SERVICE && con->client_type != ADMIN_USER) { + error("cannot process request: client process is not admin or sshd"); + return -1; + } + + if (memcmp(opn, PUBKEY_AUTH_REQUEST, opn_len) == 0) + return process_pubkeyauth_request(request, response, con); + else if (memcmp(opn, LOAD_USER_PROFILE_REQUEST, opn_len) == 0) + return process_loadprofile_request(request, response, con); + else { + debug("unknown auth request: %s", opn); + return -1; + } +} + #pragma warning(pop) \ No newline at end of file