Skip to content
This repository has been archived by the owner on Jul 26, 2023. It is now read-only.

Commit

Permalink
Merge pull request #605 from BinToss/pr/RefactorFacilityCode
Browse files Browse the repository at this point in the history
Refactor FacilityCode bitshift op to Facility properties
  • Loading branch information
AArnott committed Sep 10, 2022
2 parents 396b31c + ce2d380 commit 4624896
Show file tree
Hide file tree
Showing 8 changed files with 352 additions and 352 deletions.
2 changes: 1 addition & 1 deletion src/Windows.Core.Tests/HResultFacts.cs
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ public void Severity()
[Fact]
public void Facility()
{
Assert.Equal((HResult.FacilityCode)0x7ff0000, new HResult(0xffffffff).Facility);
Assert.Equal((HResult.FacilityCode)0x7ff, new HResult(0xffffffff).Facility);

// Verify that a real HRESULT produces a valid Facility enum value.
HResult hr = 0x80090001; // SECURITY_STATUS.NTE_BAD_UID
Expand Down
4 changes: 2 additions & 2 deletions src/Windows.Core.Tests/NTStatusFacts.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright © .NET Foundation and Contributors. All rights reserved.
// Copyright © .NET Foundation and Contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.

using System;
Expand Down Expand Up @@ -151,7 +151,7 @@ public void CustomerCode()
[Fact]
public void Facility()
{
Assert.Equal((NTSTATUS.FacilityCode)0xfff0000, new NTSTATUS(0xffffffff).Facility);
Assert.Equal((NTSTATUS.FacilityCode)0xfff, new NTSTATUS(0xffffffff).Facility);
}

[Fact]
Expand Down
258 changes: 129 additions & 129 deletions src/Windows.Core/HResult+FacilityCode.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright © .NET Foundation and Contributors. All rights reserved.
// Copyright © .NET Foundation and Contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.

namespace PInvoke
Expand All @@ -13,134 +13,134 @@ public partial struct HResult
/// </summary>
public enum FacilityCode : uint
{
FACILITY_XPS = 82 << FacilityShift,
FACILITY_XAML = 43 << FacilityShift,
FACILITY_USN = 129 << FacilityShift,
FACILITY_BLBUI = 128 << FacilityShift,
FACILITY_SPP = 256 << FacilityShift,
FACILITY_WSB_ONLINE = 133 << FacilityShift,
FACILITY_DLS = 153 << FacilityShift,
FACILITY_BLB_CLI = 121 << FacilityShift,
FACILITY_BLB = 120 << FacilityShift,
FACILITY_WSBAPP = 122 << FacilityShift,
FACILITY_WPN = 62 << FacilityShift,
FACILITY_WMAAECMA = 1996 << FacilityShift,
FACILITY_WINRM = 51 << FacilityShift,
FACILITY_WINPE = 61 << FacilityShift,
FACILITY_WINDOWSUPDATE = 36 << FacilityShift,
FACILITY_WINDOWS_STORE = 63 << FacilityShift,
FACILITY_WINDOWS_SETUP = 48 << FacilityShift,
FACILITY_WINDOWS_DEFENDER = 80 << FacilityShift,
FACILITY_WINDOWS_CE = 24 << FacilityShift,
FACILITY_WINDOWS = 8 << FacilityShift,
FACILITY_WINCODEC_DWRITE_DWM = 2200 << FacilityShift,
FACILITY_WIA = 33 << FacilityShift,
FACILITY_WER = 27 << FacilityShift,
FACILITY_WEP = 2049 << FacilityShift,
FACILITY_WEB_SOCKET = 886 << FacilityShift,
FACILITY_WEB = 885 << FacilityShift,
FACILITY_USERMODE_VOLSNAP = 130 << FacilityShift,
FACILITY_USERMODE_VOLMGR = 56 << FacilityShift,
FACILITY_VISUALCPP = 109 << FacilityShift,
FACILITY_USERMODE_VIRTUALIZATION = 55 << FacilityShift,
FACILITY_USERMODE_VHD = 58 << FacilityShift,
FACILITY_URT = 19 << FacilityShift,
FACILITY_UMI = 22 << FacilityShift,
FACILITY_UI = 42 << FacilityShift,
FACILITY_TPM_SOFTWARE = 41 << FacilityShift,
FACILITY_TPM_SERVICES = 40 << FacilityShift,
FACILITY_TIERING = 131 << FacilityShift,
FACILITY_SYNCENGINE = 2050 << FacilityShift,
FACILITY_SXS = 23 << FacilityShift,
FACILITY_STORAGE = 3 << FacilityShift,
FACILITY_STATE_MANAGEMENT = 34 << FacilityShift,
FACILITY_SSPI = 9 << FacilityShift,
FACILITY_USERMODE_SPACES = 231 << FacilityShift,
FACILITY_SOS = 160 << FacilityShift,
FACILITY_SCARD = 16 << FacilityShift,
FACILITY_SHELL = 39 << FacilityShift,
FACILITY_SETUPAPI = 15 << FacilityShift,
FACILITY_SECURITY = 9 << FacilityShift,
FACILITY_SDIAG = 60 << FacilityShift,
FACILITY_USERMODE_SDBUS = 2305 << FacilityShift,
FACILITY_RPC = 1 << FacilityShift,
FACILITY_RESTORE = 256 << FacilityShift,
FACILITY_SCRIPT = 112 << FacilityShift,
FACILITY_PARSE = 113 << FacilityShift,
FACILITY_RAS = 83 << FacilityShift,
FACILITY_POWERSHELL = 84 << FacilityShift,
FACILITY_PLA = 48 << FacilityShift,
FACILITY_PIDGENX = 2561 << FacilityShift,
FACILITY_P2P_INT = 98 << FacilityShift,
FACILITY_P2P = 99 << FacilityShift,
FACILITY_OPC = 81 << FacilityShift,
FACILITY_ONLINE_ID = 134 << FacilityShift,
FACILITY_WIN32 = 7 << FacilityShift,
FACILITY_CONTROL = 10 << FacilityShift,
FACILITY_WEBSERVICES = 61 << FacilityShift,
FACILITY_NULL = 0 << FacilityShift,
FACILITY_NDIS = 52 << FacilityShift,
FACILITY_NAP = 39 << FacilityShift,
FACILITY_MOBILE = 1793 << FacilityShift,
FACILITY_METADIRECTORY = 35 << FacilityShift,
FACILITY_MSMQ = 14 << FacilityShift,
FACILITY_MEDIASERVER = 13 << FacilityShift,
FACILITY_MBN = 84 << FacilityShift,
FACILITY_LINGUISTIC_SERVICES = 305 << FacilityShift,
FACILITY_LEAP = 2184 << FacilityShift,
FACILITY_JSCRIPT = 2306 << FacilityShift,
FACILITY_INTERNET = 12 << FacilityShift,
FACILITY_ITF = 4 << FacilityShift,
FACILITY_INPUT = 64 << FacilityShift,
FACILITY_USERMODE_HYPERVISOR = 53 << FacilityShift,
FACILITY_ACCELERATOR = 1536 << FacilityShift,
FACILITY_HTTP = 25 << FacilityShift,
FACILITY_GRAPHICS = 38 << FacilityShift,
FACILITY_FWP = 50 << FacilityShift,
FACILITY_FVE = 49 << FacilityShift,
FACILITY_USERMODE_FILTER_MANAGER = 31 << FacilityShift,
FACILITY_EAS = 85 << FacilityShift,
FACILITY_EAP = 66 << FacilityShift,
FACILITY_DXGI_DDI = 2171 << FacilityShift,
FACILITY_DXGI = 2170 << FacilityShift,
FACILITY_DPLAY = 21 << FacilityShift,
FACILITY_DMSERVER = 256 << FacilityShift,
FACILITY_DISPATCH = 2 << FacilityShift,
FACILITY_DIRECTORYSERVICE = 37 << FacilityShift,
FACILITY_DIRECTMUSIC = 2168 << FacilityShift,
FACILITY_DIRECT3D11 = 2172 << FacilityShift,
FACILITY_DIRECT3D10 = 2169 << FacilityShift,
FACILITY_DIRECT2D = 2201 << FacilityShift,
FACILITY_DAF = 100 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_UTIL = 260 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_TRANSPORT_MANAGEMENT = 272 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_TFTP = 264 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_PXE = 263 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_MULTICAST_SERVER = 289 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_MULTICAST_CLIENT = 290 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_MANAGEMENT = 259 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_IMAGING = 258 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_DRIVER_PROVISIONING = 278 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_SERVER = 257 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_CONTENT_PROVIDER = 293 << FacilityShift,
FACILITY_DEPLOYMENT_SERVICES_BINLSVC = 261 << FacilityShift,
FACILITY_DEFRAG = 2304 << FacilityShift,
FACILITY_DEBUGGERS = 176 << FacilityShift,
FACILITY_CONFIGURATION = 33 << FacilityShift,
FACILITY_COMPLUS = 17 << FacilityShift,
FACILITY_USERMODE_COMMONLOG = 26 << FacilityShift,
FACILITY_CMI = 54 << FacilityShift,
FACILITY_CERT = 11 << FacilityShift,
FACILITY_BLUETOOTH_ATT = 101 << FacilityShift,
FACILITY_BCD = 57 << FacilityShift,
FACILITY_BACKGROUNDCOPY = 32 << FacilityShift,
FACILITY_AUDIOSTREAMING = 1094 << FacilityShift,
FACILITY_AUDCLNT = 2185 << FacilityShift,
FACILITY_AUDIO = 102 << FacilityShift,
FACILITY_ACTION_QUEUE = 44 << FacilityShift,
FACILITY_ACS = 20 << FacilityShift,
FACILITY_AAF = 18 << FacilityShift,
FACILITY_NT_BIT = 4096 << FacilityShift,
FACILITY_XPS = 82,
FACILITY_XAML = 43,
FACILITY_USN = 129,
FACILITY_BLBUI = 128,
FACILITY_SPP = 256,
FACILITY_WSB_ONLINE = 133,
FACILITY_DLS = 153,
FACILITY_BLB_CLI = 121,
FACILITY_BLB = 120,
FACILITY_WSBAPP = 122,
FACILITY_WPN = 62,
FACILITY_WMAAECMA = 1996,
FACILITY_WINRM = 51,
FACILITY_WINPE = 61,
FACILITY_WINDOWSUPDATE = 36,
FACILITY_WINDOWS_STORE = 63,
FACILITY_WINDOWS_SETUP = 48,
FACILITY_WINDOWS_DEFENDER = 80,
FACILITY_WINDOWS_CE = 24,
FACILITY_WINDOWS = 8,
FACILITY_WINCODEC_DWRITE_DWM = 2200,
FACILITY_WIA = 33,
FACILITY_WER = 27,
FACILITY_WEP = 2049,
FACILITY_WEB_SOCKET = 886,
FACILITY_WEB = 885,
FACILITY_USERMODE_VOLSNAP = 130,
FACILITY_USERMODE_VOLMGR = 56,
FACILITY_VISUALCPP = 109,
FACILITY_USERMODE_VIRTUALIZATION = 55,
FACILITY_USERMODE_VHD = 58,
FACILITY_URT = 19,
FACILITY_UMI = 22,
FACILITY_UI = 42,
FACILITY_TPM_SOFTWARE = 41,
FACILITY_TPM_SERVICES = 40,
FACILITY_TIERING = 131,
FACILITY_SYNCENGINE = 2050,
FACILITY_SXS = 23,
FACILITY_STORAGE = 3,
FACILITY_STATE_MANAGEMENT = 34,
FACILITY_SSPI = 9,
FACILITY_USERMODE_SPACES = 231,
FACILITY_SOS = 160,
FACILITY_SCARD = 16,
FACILITY_SHELL = 39,
FACILITY_SETUPAPI = 15,
FACILITY_SECURITY = 9,
FACILITY_SDIAG = 60,
FACILITY_USERMODE_SDBUS = 2305,
FACILITY_RPC = 1,
FACILITY_RESTORE = 256,
FACILITY_SCRIPT = 112,
FACILITY_PARSE = 113,
FACILITY_RAS = 83,
FACILITY_POWERSHELL = 84,
FACILITY_PLA = 48,
FACILITY_PIDGENX = 2561,
FACILITY_P2P_INT = 98,
FACILITY_P2P = 99,
FACILITY_OPC = 81,
FACILITY_ONLINE_ID = 134,
FACILITY_WIN32 = 7,
FACILITY_CONTROL = 10,
FACILITY_WEBSERVICES = 61,
FACILITY_NULL = 0,
FACILITY_NDIS = 52,
FACILITY_NAP = 39,
FACILITY_MOBILE = 1793,
FACILITY_METADIRECTORY = 35,
FACILITY_MSMQ = 14,
FACILITY_MEDIASERVER = 13,
FACILITY_MBN = 84,
FACILITY_LINGUISTIC_SERVICES = 305,
FACILITY_LEAP = 2184,
FACILITY_JSCRIPT = 2306,
FACILITY_INTERNET = 12,
FACILITY_ITF = 4,
FACILITY_INPUT = 64,
FACILITY_USERMODE_HYPERVISOR = 53,
FACILITY_ACCELERATOR = 1536,
FACILITY_HTTP = 25,
FACILITY_GRAPHICS = 38,
FACILITY_FWP = 50,
FACILITY_FVE = 49,
FACILITY_USERMODE_FILTER_MANAGER = 31,
FACILITY_EAS = 85,
FACILITY_EAP = 66,
FACILITY_DXGI_DDI = 2171,
FACILITY_DXGI = 2170,
FACILITY_DPLAY = 21,
FACILITY_DMSERVER = 256,
FACILITY_DISPATCH = 2,
FACILITY_DIRECTORYSERVICE = 37,
FACILITY_DIRECTMUSIC = 2168,
FACILITY_DIRECT3D11 = 2172,
FACILITY_DIRECT3D10 = 2169,
FACILITY_DIRECT2D = 2201,
FACILITY_DAF = 100,
FACILITY_DEPLOYMENT_SERVICES_UTIL = 260,
FACILITY_DEPLOYMENT_SERVICES_TRANSPORT_MANAGEMENT = 272,
FACILITY_DEPLOYMENT_SERVICES_TFTP = 264,
FACILITY_DEPLOYMENT_SERVICES_PXE = 263,
FACILITY_DEPLOYMENT_SERVICES_MULTICAST_SERVER = 289,
FACILITY_DEPLOYMENT_SERVICES_MULTICAST_CLIENT = 290,
FACILITY_DEPLOYMENT_SERVICES_MANAGEMENT = 259,
FACILITY_DEPLOYMENT_SERVICES_IMAGING = 258,
FACILITY_DEPLOYMENT_SERVICES_DRIVER_PROVISIONING = 278,
FACILITY_DEPLOYMENT_SERVICES_SERVER = 257,
FACILITY_DEPLOYMENT_SERVICES_CONTENT_PROVIDER = 293,
FACILITY_DEPLOYMENT_SERVICES_BINLSVC = 261,
FACILITY_DEFRAG = 2304,
FACILITY_DEBUGGERS = 176,
FACILITY_CONFIGURATION = 33,
FACILITY_COMPLUS = 17,
FACILITY_USERMODE_COMMONLOG = 26,
FACILITY_CMI = 54,
FACILITY_CERT = 11,
FACILITY_BLUETOOTH_ATT = 101,
FACILITY_BCD = 57,
FACILITY_BACKGROUNDCOPY = 32,
FACILITY_AUDIOSTREAMING = 1094,
FACILITY_AUDCLNT = 2185,
FACILITY_AUDIO = 102,
FACILITY_ACTION_QUEUE = 44,
FACILITY_ACS = 20,
FACILITY_AAF = 18,
FACILITY_NT_BIT = 0x10000000,
}
}
}
2 changes: 1 addition & 1 deletion src/Windows.Core/HResult.cs
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ public HResult(uint value)
/// <summary>
/// Gets the facility code of the HRESULT.
/// </summary>
public FacilityCode Facility => (FacilityCode)(this.AsUInt32 & FacilityMask);
public FacilityCode Facility => (FacilityCode)((this.AsUInt32 & FacilityMask) >> FacilityShift);

/// <summary>
/// Gets the severity of the HRESULT.
Expand Down
Loading

0 comments on commit 4624896

Please sign in to comment.