| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Fixes #35176
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This partially reverts 02eabaffe98c9a3b5dec1c4837968a4d3e2ff7db.
As noted in https://github.com/systemd/systemd/pull/35211:
> The configuration parsing simply stores the string as-is, rather than
> creating the appropriate object
One way to fix the issue would be to store the "appropriate object", i.e.
actually the class. But that makes the code very verbose, with the conversion
being done in two places. And that still doesn't fix the issue, because we need
to map the class objects back to the original name in error messages.
So instead, store the setting as a string and only map it to the class much
later. This makes the code simpler and fixes the error messages too.
Resolves https://github.com/systemd/systemd/pull/35193
|
| |
|
|
|
|
| |
This section contains a predefined set of HWIDs and the corresponding compatibles to be used in dtb matching
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Let's gather generic key/certificate operations in a new tool
systemd-keyutil instead of spreading them across various special purpose
tools.
Fixes #35087
|
| |
| |
| |
| |
| |
| |
| |
| | |
Let's gather generic key/certificate operations in a new tool
systemd-keyutil instead of spreading them across various special
purpose tools.
Fixes #35087
|
|/
|
|
|
|
|
| |
An assert always expected a kernel when signature key was present in command
line. That prevented building signed addons.
Fixes #35041
|
|
|
|
|
| |
This translates to --certificate-source=provider:<provider> for
signing tools invoked by ukify.
|
| |
|
| |
|
|
|
|
| |
Follow-up for 02eabaffe98c9a3b5dec1c4837968a4d3e2ff7db.
|
|
|
|
|
|
|
| |
This achieves parity with the mypy config used in mkosi.
The import of builtins is needed because otherwise type is attempted to be
resolved to the variable in the scope.
|
|
|
|
|
| |
Using a dataclass instead of an argparse namespace to pass around the parsed
options allows to track the types properly.
|
| |
|
| |
|
|
|
|
| |
If either is None the write in this branch of the code will fail.
|
| |
|
|
|
|
| |
Follow-up for eca003de2f3a708c44946d36af6517cbcf3392ff.
|
| |
|
| |
|
|
|
|
| |
We weren't measuring the profile section itself.
|
| |
|
|
|
|
|
| |
This also makes the error message configurable, so that find_sbsign and
find_pesign can be inlined again.
|
|
|
|
| |
This way finalize_options will not call sys.exit by itself.
|
| |
|
| |
|
|
|
|
| |
The latter was deprecated for the former and is only an alias for it.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The API introduced in https://github.com/systemd/systemd/pull/34295
is less than ideal:
- It doesn't consider signing at all (ukify can't sign separately yet)
- Measurement is completely broken (all profile sections are marked to
not be measured)
- It focuses on a very niche use case of extending existing UKIs and makes
the more common use case of building a UKI with several profiles included
much harder than needed.
Let's instead rework the API to focus on the primary use case of building
a UKI with multiple profiles added to it immediately. We require the profiles
to be built upfront as separate PE binaries with UKI. There's no need to sign
or measure these, they're solely vehicles for profile sections. This saves us
from having to complicate the command line and config parsing to support defining
multiple profiles.
To add the profiles when building a UKI, we introduce the new --add-profile
switch which takes a path to a PE binary describing a profile. The required
sections are read from each PE binary, measured and added as a profile.
The integration test is disabled until the new API is merged and exposed in
mkosi so that building a UKI with profiles can be left to mkosi and the integration
test will only test the switching between profiles and not the building of UKIs
with profiles.
|
| |
|
| |
|
|
|
|
|
|
| |
sections to later extend"
This reverts commit b6570095ce889b07242d36cd05fa1d1899d0bc6c.
|
|
|
|
| |
This reverts commit bc3e2c5a5774ae7b212817d04e04abccf30088ae.
|
|
|
|
|
|
| |
Now that we properly leave sufficient space for inline execution of
the .linux section, let's remove the special casing of the .linux
section as it doesn't need to be the last section anymore now.
|
|
|
|
|
|
|
|
|
| |
The SizeOfImage is bigger than the image itself so that space is
guaranteed to be available for in place execution of the linux image. Let's
make sure we take this into account and use SizeOfImage as the section's virtual
size instead of the size of the image itself.
Fixes #34578
|
| |
|
|
|
|
|
| |
This prints a python data structure which we shouldn't do during
normal operation.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
later extend
This options is pretty simple, it allows specifying an UKI whose
sections to import first, and place at the beginning of the new UKI.
This is useful for generating multi-profile UKIs piecemeal: generate the
base UKI first, then append a profile, and another one and another one.
The sections imported this way are not included in any PCR signature,
the assumption is that that already happened before in the imported UKI.
|
|
|
|
|
|
| |
This just allows including .profile sections, but doesn't try to be
smart about it. This alone won't help you much to create valid
multi-profile UKIs.
|
|
|
|
|
|
|
|
|
| |
Follow up for 8b3b01c4b7e0fde39b4be354990ee68f5e612c52
We switch to PROJECT_VERSION instead of PROJECT_VERSION_FULL where
we report our version and which is likely being parsed to avoid
breaking compat. If we didn't, the output would change from systemd
255 to systemd 255.1 which could break various tools.
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the order was quite chaotic, even sometimes interleaved with
entirely unrelated switches. Let's clean this up and use the same order
as in the spec.
This doesn't change anything real, but I think it's a worthy clean-up in
particular as this order is documented as the PCR measurement order of
these sections, hence there's actually a bit of relevance to always
communicate the same order everywhere.
|
| |
|
| |
|