Skip to content

Commit

Permalink
Merge branch 'main' into mpe/xml-header-reference
Browse files Browse the repository at this point in the history
  • Loading branch information
mario-posso-escobar committed Jun 24, 2024
2 parents b3651b8 + da7fa85 commit 00731b4
Show file tree
Hide file tree
Showing 26 changed files with 200 additions and 65 deletions.
2 changes: 1 addition & 1 deletion .azurepipelines/MuDevOpsWrapper.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ resources:
type: github
endpoint: microsoft
name: microsoft/mu_devops
ref: refs/tags/v9.1.9
ref: refs/tags/v10.0.0

parameters:
- name: do_ci_build
Expand Down
3 changes: 3 additions & 0 deletions .cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,9 @@
"profileid",
"profileids",
"prettyname",
"efivars",
"efivarfs",
"chattr",
"typesonly",
"nochange",
"headerRef"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/auto-approve.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,5 @@ jobs:

if: |
github.event.pull_request.user.login == 'dependabot[bot]' || github.event.pull_request.user.login == 'uefibot'
uses: microsoft/mu_devops/.github/workflows/AutoApprover.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/AutoApprover.yml@v10.0.0
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/auto-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ jobs:

if: |
github.event.pull_request.user.login == 'dependabot[bot]' || github.event.pull_request.user.login == 'uefibot'
uses: microsoft/mu_devops/.github/workflows/AutoMerger.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/AutoMerger.yml@v10.0.0
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/issue-assignment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ jobs:
contents: read
issues: write

uses: microsoft/mu_devops/.github/workflows/IssueAssignment.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/IssueAssignment.yml@v10.0.0
2 changes: 1 addition & 1 deletion .github/workflows/label-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,4 @@ jobs:
contents: read
pull-requests: write

uses: microsoft/mu_devops/.github/workflows/Labeler.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/Labeler.yml@v10.0.0
2 changes: 1 addition & 1 deletion .github/workflows/label-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ jobs:
permissions:
issues: write

uses: microsoft/mu_devops/.github/workflows/LabelSyncer.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/LabelSyncer.yml@v10.0.0
2 changes: 1 addition & 1 deletion .github/workflows/release-draft.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ jobs:
contents: write
pull-requests: write

uses: microsoft/mu_devops/.github/workflows/ReleaseDrafter.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/ReleaseDrafter.yml@v10.0.0
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@ jobs:
issues: write
pull-requests: write

uses: microsoft/mu_devops/.github/workflows/Stale.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/Stale.yml@v10.0.0
2 changes: 1 addition & 1 deletion .github/workflows/triage-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ jobs:
permissions:
issues: write

uses: microsoft/mu_devops/.github/workflows/IssueTriager.yml@v9.1.9
uses: microsoft/mu_devops/.github/workflows/IssueTriager.yml@v10.0.0
6 changes: 3 additions & 3 deletions .pytool/CISettings.py
Original file line number Diff line number Diff line change
Expand Up @@ -190,17 +190,17 @@ def GetDependencies(self):
{
"Path": "MU_BASECORE",
"Url": "https://github.com/microsoft/mu_basecore.git",
"Branch": "release/202302"
"Branch": "release/202311"
},
{
"Path": "Common/MU_PLUS",
"Url": "https://github.com/microsoft/mu_plus.git",
"Branch": "release/202302"
"Branch": "release/202311"
},
{
"Path": "Common/MU_TIANO_PLUS",
"Url": "https://github.com/microsoft/mu_tiano_plus.git",
"Branch": "release/202302"
"Branch": "release/202311"
}
]
return []
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@

[Sources]
ConfigKnobShimDxeLibGoogleTest.cpp
../../ConfigKnobShimLibCommon.c

[Packages]
MdePkg/MdePkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
[Sources]
../../UnitTest/ConfigKnobShimLibUnitTestCommon.c
../ConfigKnobShimDxeLib.c
../../ConfigKnobShimLibCommon.c

[Packages]
MdePkg/MdePkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
[Sources]
ConfigKnobShimMmLib.c
../ConfigKnobShimLibCommon.c
../ConfigKnobShimLibCommon.h

[Packages]
MdePkg/MdePkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
[Sources]
../../UnitTest/ConfigKnobShimLibUnitTestCommon.c
../ConfigKnobShimMmLib.c
../../ConfigKnobShimLibCommon.c

[Packages]
MdePkg/MdePkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
ConfigKnobShimPeiLib.c
../ConfigKnobShimLibCommon.c
../ConfigKnobShimLibCommon.h

[Packages]
MdePkg/MdePkg.dec
SetupDataPkg/SetupDataPkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@

[Sources]
ConfigKnobShimPeiLibGoogleTest.cpp
../../ConfigKnobShimLibCommon.c
MdePkg/Test/Mock/Library/GoogleTest/Ppi/MockReadOnlyVariable2.cpp

[Packages]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
[Sources]
../../UnitTest/ConfigKnobShimLibUnitTestCommon.c
../ConfigKnobShimPeiLib.c
../../ConfigKnobShimLibCommon.c

[Packages]
MdePkg/MdePkg.dec
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#include <SetupDataPkgUnitTestStructs.h>

// include the c file to be able to unit test static function
#include "ConfigKnobShimLibCommon.c"
#include "../ConfigKnobShimLibCommon.c"

#define UNIT_TEST_APP_NAME "Config Knob Shim Common Lib Unit Tests"
#define UNIT_TEST_APP_VERSION "1.0"
Expand Down
5 changes: 4 additions & 1 deletion SetupDataPkg/SetupDataPkg.ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,10 @@
"dmpstore",
"mschange",
"DDTHH",
"prettyname"
"prettyname",
"efivars",
"efivarfs",
"chattr"
], # words to extend to the dictionary for this package
"IgnoreStandardPaths": [], # Standard Plugin defined paths that should be ignore
"AdditionalIncludePaths": [] # Additional paths to spell check (wildcards supported)
Expand Down
20 changes: 14 additions & 6 deletions SetupDataPkg/Tools/ReadUefiVarsToConfVarList.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,10 @@
import struct
import uuid
import ctypes
from SettingSupport.UefiVariablesSupportLib import UefiVariable
if os.name == 'nt':
from SettingSupport.UefiVariablesSupportLib import UefiVariable
else:
from SettingSupport.UefiVariablesSupportLinuxLib import UefiVariable
from VariableList import Schema, UEFIVariable, create_vlist_buffer


Expand Down Expand Up @@ -53,7 +56,7 @@ def option_parser():
# array
#
def read_variable_into_variable_list(uefi_var, name, namespace):
(rc, var, _) = uefi_var.GetUefiVar(name, namespace)
(rc, var) = uefi_var.GetUefiVar(name, namespace)
if rc != 0:
if rc != UefiVariable.ERROR_ENVVAR_NOT_FOUND:
# only log the errors other than EFI_NOT_FOUND, because not found is normal in this case...
Expand All @@ -78,7 +81,7 @@ def main():
ret = b''
if arguments.configuration_file is None:
# Read all the variables
(rc, efi_var_names, error_string) = UefiVar.GetUefiAllVarNames()
(rc, efi_var_names) = UefiVar.GetUefiAllVarNames()
if rc != 0:
logging.error(f"Error returned from GetUefiAllVarNames: {rc}")

Expand Down Expand Up @@ -117,9 +120,14 @@ def main():
console.setLevel(logging.CRITICAL)

# check the privilege level and report error
if not ctypes.windll.shell32.IsUserAnAdmin():
print("Administrator privilege required. Please launch from an Administrator privilege level.")
sys.exit(1)
if os.name == 'nt':
if not ctypes.windll.shell32.IsUserAnAdmin():
print("Administrator privilege required. Please launch from an Administrator privilege level.")
sys.exit(1)
else:
if os.geteuid() != 0:
print("Root permission required, please run script with sudo.")
sys.exit(1)

# call main worker function
retcode = main()
Expand Down
34 changes: 5 additions & 29 deletions SetupDataPkg/Tools/SettingSupport/UefiVariablesSupportLib.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
c_wchar_p,
c_void_p,
c_int,
c_char,
create_string_buffer,
WinError,
pointer
Expand Down Expand Up @@ -90,27 +89,6 @@ def __init__(self):
)
pass

#
# Helper function to create buffer for var read/write
#
def CreateBuffer(self, init, size=None):
"""CreateBuffer(aString) -> character array
CreateBuffer(anInteger) -> character array
CreateBuffer(aString, anInteger) -> character array
"""
if isinstance(init, str):
if size is None:
size = len(init) + 1
buftype = c_char * size
buf = buftype()
buf.value = init
return buf
elif isinstance(init, int):
buftype = c_char * init
buf = buftype()
return buf
raise TypeError(init)

#
# Function to get variable
# return a tuple of error code and variable data as string
Expand All @@ -135,8 +113,8 @@ def GetUefiVar(self, name, guid):
)
logging.error(WinError())
if efi_var is None:
return (err, None, WinError(err))
return (err, efi_var[:length], WinError(err))
return (err, None)
return (err, efi_var[:length])

#
# Function to get all variable names
Expand Down Expand Up @@ -176,8 +154,8 @@ def GetUefiAllVarNames(self):
logging.error(
"EnumerateFirmwareEnvironmentVariable failed (GetLastError = 0x%x)" % status
)
return (status, None, WinError(status))
return (status, efi_var_names, None)
return (status, None)
return (status, efi_var_names)

#
# Function to set variable
Expand All @@ -186,7 +164,6 @@ def GetUefiAllVarNames(self):
def SetUefiVar(self, name, guid, var=None, attrs=None):
var_len = 0
err = 0
error_string = None
if var is None:
var = bytes(0)
else:
Expand Down Expand Up @@ -221,5 +198,4 @@ def SetUefiVar(self, name, guid, var=None, attrs=None):
"SetFirmwareEnvironmentVariable failed (GetLastError = 0x%x)" % err
)
logging.error(WinError())
error_string = WinError(err)
return (success, err, error_string)
return success
Loading

0 comments on commit 00731b4

Please sign in to comment.