Skip to content

Commit 4f3758a

Browse files
authored
win-arm64 support for WAM (#20797)
* add msal runtime arm64 * Update ChangeLog.md * Add PDB for msalruntime_arm64
1 parent 577ff8d commit 4f3758a

File tree

5 files changed

+2
-12
lines changed

5 files changed

+2
-12
lines changed

src/Accounts/Accounts/ChangeLog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
-->
2020

2121
## Upcoming Release
22+
* Supported Web Account Manager on ARM64-based Windows systems. Fixed an issue where `Connect-AzAccount` failed with error "Unable to load DLL 'msalruntime_arm64'". [#20700]
2223

2324
## Version 2.11.1
2425
* Fixed an issue where Az.Accounts cannot be imported correctly. [#20615]
2.1 MB
Binary file not shown.

src/lib/pdb/CopyPdbToArtifacts.ps1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Param(
1010
$PathMappings = @{
1111
'msalruntime.pdb' = 'Az.Accounts/lib/netstandard2.0'
1212
'msalruntime_x86.pdb' = 'Az.Accounts/lib/netstandard2.0'
13+
'msalruntime_arm64.pdb' = 'Az.Accounts/lib/netstandard2.0'
1314
}
1415

1516
$ArtifactsPath = [System.IO.Path]::Combine($PSScriptRoot, "../../../artifacts", $Configuration)

src/lib/pdb/README.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,3 @@ This directory serves as an E2E solution. You put the PDB files here, tell the s
1111
1. Put the PDB file in `src/lib/pdb`.
1212
2. Update [`CopyPdbToArtifacts.ps1`](./CopyPdbToArtifacts.ps1), in the hashtable `$PathMappings`, add a new entry of the PDB's name and its destination, i.e. where the corresponding .dll file lies in artifacts.
1313
3. Check in and push your code. Note that PDB files are ignored by `.gitignore`. You need to explicitly add them by `git add -f path/to/*.pdb`.## What is lib/pdb for
14-
15-
In the [security tools pipeline](../../../.azure-pipelines/security-tools.yml), one step called BinSkim would scan all of the assemblies and executables in the artifacts. When scanning assemblies, it requires the corresponding Program Database (PDB) files. Most cases BinSkim is smart enough to find them, for example by downloading the symbol package from nuget.org. However if it fails to do so, you could get an [`E_PDB_NOT_FOUND`](https://github.com/microsoft/binskim/blob/7b64cf4ff69d2c6d8c4945be821d361b24e2169f/docs/RulesAndErrorsTroubleshootingGuide.md#resolving-e_pdb_not_found) error.
16-
17-
The solution is to grab the PDB file elsewhere (maybe by asking the developers), and then put them next to the assemblies. But keep in mind that we don't want to ship them to the end user because they are useless at runtime and they are big.
18-
19-
This directory serves as an E2E solution. You put the PDB files here, tell the script where their corresponding assemblies are, and the script will copy them to the right place before the BinSkim scan.
20-
21-
## How to add a new PDB file
22-
23-
1. Put the PDB file in `src/lib/pdb`.
24-
2. Update [`CopyPdbToArtifacts.ps1`](./CopyPdbToArtifacts.ps1), in the hashtable `$PathMappings`, add a new entry of the PDB's name and its destination, i.e. where the corresponding .dll file lies in artifacts.
25-
3. Check in and push your code. Note that PDB files are ignored by `.gitignore`. You need to explicitly add them by `git add -f path/to/*.pdb`.

src/lib/pdb/msalruntime_arm64.pdb

24.9 MB
Binary file not shown.

0 commit comments

Comments
 (0)