Commit Graph

1438 Commits

Author SHA1 Message Date
dann frazier
55d5545782 Remove unnecessary exports 2019-05-06 13:29:30 -06:00
Steve McIntyre
cd18644209 Merge branch 'hack' from 93sam
Changes:

 crash fixes
 generate dbx file at runtime
2019-05-06 13:14:28 +01:00
Steve McIntyre
549f650b3d Add more hashes that we want to blacklist
signed arm64 grub binaries that allow use of the devicetree command,
as found in

 grub-efi-arm64-signed_1+2.02+dfsg1+16_arm64.deb
 grub-efi-arm64-signed_1+2.02+dfsg1+17_arm64.deb
2019-05-06 13:07:00 +01:00
Steve McIntyre
88a7a6505b Add initial file with test checksums for the dbx list 2019-05-06 13:00:19 +01:00
Steve McIntyre
6cf246a5c9 Generate a vendor dbx file at build time
This allow us to block executing binaries with specific
checksums. Generate the dbx list at runtime from a simple list of
sha256 hashes, so we can update this easily. If we need to also
blacklist a cert later, we'll need to update this code to add that
option too.

Add a build-dep on pesign to get the needed efisiglist program.
2019-05-04 18:56:30 +01:00
Steve McIntyre
e17b0af466 Build using gcc-7
To get better control of reproducibility during the lifetime of
Buster
2019-05-03 01:25:06 +00:00
Steve McIntyre
839af42e06 Update VCS-* fields in debian/control 2019-05-03 01:25:04 +00:00
Steve McIntyre
315e87677b Fix OBJ_create() to tolerate a NULL sn and ln
Cherry-picked fix from upstream MR at
3a9e237b1b

From: f13615c5b8

Apply an upstream patch from OpenSSL to tolerate a NULL sn. This
avoids a NULL pointer reference in shim.c:verify_eku(). This was
discovered because it causes a crash on ARM where, unlike x86, it does
not necessarily have memory mapped at 0x0.

Fixes: 6c180c6004 ("shim: verify Extended Key Usage flags")
Signed-off-by: dann frazier <dann.frazier@canonical.com>
2019-05-03 01:25:01 +00:00
Steve McIntyre
878d860c31 VLogError(): Avoid NULL pointer dereferences in (V)Sprint calls
Backport of upstream fix:

VLogError() calculates the size of format strings by using calls to
SPrint and VSPrint with a StrSize of 0 and NULL for an output
buffer. Unfortunately, this is an incorrect usage of (V)Sprint. A
StrSize of "0" is special-cased to mean "there is no limit". So, we
end up writing our string to address 0x0. This was discovered because
it causes a crash on ARM where, unlike x86, it does not necessarily
have memory mapped at 0x0.

Avoid the (V)Sprint calls altogether by using (V)PoolPrint, which
handles the size calculation and allocation for us.

Signed-off-by: Peter Jones <pjones@redhat.com>
Fixes: 25f6fd08cd ("try to show errors more usefully.")
[dannf: commit message ]
Signed-off-by: dann frazier <dann.frazier@canonical.com>
2019-05-03 01:24:56 +00:00
Steve McIntyre
8036ee26a1 Merge branch 'update-vcs-fields' into 'master'
debian/control: Update Vcs-* fields

See merge request efi-team/shim!4
2019-03-25 10:51:40 +00:00
Ansgar Burchardt
9987936665 debian/control: Update Vcs-* fields 2019-03-25 07:49:52 +01:00
Steve McIntyre
cb7c0af03e Prepare Debian release 15+1533136590.3beb971-6 2019-03-23 19:04:38 +00:00
Helmut Grohne
aa19fc4d38 Fix FTCBFS: Set CROSS_COMPILE. (Closes: #922152) 2019-03-23 19:00:59 +00:00
Steve McIntyre
6bb3165209 Add Provides: and Breaks: to shim-helpers-$arch-signed
to fix clashes with the old shim-signed package for fbx64.efi.signed
and mmx64.efi.signed. Closes: #924619
2019-03-23 18:58:54 +00:00
Steve McIntyre
6a35a720a6 Prepare Debian release 15+1533136590.3beb971-5 2019-03-12 01:38:52 +00:00
Steve McIntyre
14b8b20ebd Remove Rules-Requires-Root in the signing template.
We manually install things owned by root. There might be better ways
to do this, but this will do for now.
2019-03-12 01:37:40 +00:00
Steve McIntyre
424d859ce1 Add changelog entry for Ansgar's fix in 196119a5 2019-03-12 01:30:40 +00:00
Steve McIntyre
1341faba13 Merge branch 'correct-maintainer-address' into 'master'
Correct maintainer address in signing template

See merge request efi-team/shim!3
2019-03-12 01:25:18 +00:00
Ansgar Burchardt
196119a594 Correct maintainer address in signing template 2019-03-11 22:53:44 +01:00
Steve McIntyre
208bd43be2 Prepare Debian release 15+1533136590.3beb971-4
Force a no-change rebuild on all arches with a source-only upload
2019-03-09 22:27:03 +00:00
Steve McIntyre
b197d74e32 Prepare Debian release 15+1533136590.3beb971-3 2019-03-09 12:45:39 +00:00
Steve McIntyre
90609be3eb Update the signing-template JSON metadata
Move all the data under a new top-level "packages" key
Add an empty "trusted_certs" key - the helper binaries do not do any
further verification with an embedded key.
2019-03-08 22:04:53 +00:00
Steve McIntyre
226ac98674 Merge branch 'rename-helpers' into 'master'
Rename all the packages containg the helper binaries

See merge request efi-team/shim!2
2019-03-07 00:23:52 +00:00
Steve McIntyre
ba30131daf Rename all the packages containg the helper binaries
Remove potential confusion with shim-signed. We will now end up with
shim-helpers-$arch-signed to make it clear that they just contain the
helper binaries (fb.efi and mm.efi)
2019-03-06 22:44:57 +00:00
Steve McIntyre
d71a71f4e7 Change maintenance address to be the EFI team
Add me and vorlon to the Uploaders list
2019-03-06 22:04:49 +00:00
Steve McIntyre
739950c1c7 Typo fix: s,singing,signing,g 2019-03-06 21:56:31 +00:00
Luca Boccassi
51b45b0364 Add uname.patch to avoid architecture variability
Signed-off-by: Luca Boccassi <bluca@debian.org>
2019-02-15 21:50:10 +00:00
Luca Boccassi
9bfbee892e Include /usr/share/dpkg/architecture.mk instead of shelling out. 2019-02-15 21:26:05 +00:00
Luca Boccassi
8c00485c68 Override lintian error about template rules file
Lintian parses the shebang in the rules files of the templates packages
and complains that there is no dependency on make. But they are special
packages, so override it.
2019-02-15 21:26:05 +00:00
Philipp Hahn
f7add2255f Add shim-$arch-signed-template support
for getting the MOK-manager and fall-back binary to be signed by Debians
singing service instead of using an ephemeral key.

Closes: #922228
2019-02-15 21:26:05 +00:00
Philipp Hahn
c2dbb9ef4e Rename to shim-unsigned
as all EFI binaries are now unsigned. They are useless to any normal
user as
- shim is useless without being signed by an external UEFI CA.
- mm and fb won't be loaded by shim as they are now no longer linked to
  corresponding shim by the ephemeral key any longer.
2019-02-15 21:26:04 +00:00
Philipp Hahn
e914483c5b Disable ephemeral key on Debian
shim creates an ephemeral key, which gets embedded into shim and is used
to sign the corresponding mok-manager (mm*.efi) and fall-back-manager
(fb*.efi).
This makes the build unreproducible.

For Debian we will get those two binaries signed by our Debian-UEFI-CA,
which is the primary (and only) key embedded in shim.
2019-02-15 21:25:37 +00:00
Philipp Hahn
4bb202a099 debian/rules: fixing permissions no longer required
as Makefiles used "install -m 0644" by now.
2019-02-15 19:51:32 +00:00
Steve Langasek
8819008767 releasing package shim version 15+1533136590.3beb971-2 2019-02-11 05:18:25 +00:00
Steve Langasek
47660e6730 Update debian/copyright (drop reference to file no longer in source) 2019-02-10 21:16:09 -08:00
Steve Langasek
2b9acc731a Update Standards-Version. 2019-02-10 21:15:01 -08:00
Steve Langasek
1d945f7690 Ensure DEB_HOST_ARCH is set even if not present in the environment. 2019-02-10 21:10:48 -08:00
Steve Langasek
21efb35cce Enable build for i386. 2019-02-10 21:09:39 -08:00
Steve Langasek
cebae05a6d Fix debian/rules syntax for arm64 build. 2019-02-10 21:09:14 -08:00
Steve Langasek
2fab563a95 Update VCS to point to salsa. 2019-02-10 21:06:28 -08:00
Steve Langasek
100e3b0cdb Update debian/watch. 2019-02-10 00:15:42 -08:00
Steve Langasek
ab4c731c1d * New upstream release.
- debian/patches/second-stage-path: dropped; the default loader path now
    includes an arch suffix.
  - debian/patches/sbsigntool-no-pesign: dropped; no longer needed.
* Drop remaining patches that were not being applied.
* Sync packaging from Ubuntu:
  - debian/copyright: Update upstream source location.
  - debian/control: add a Build-Depends on libelf-dev.
  - Enable arm64 build.
  - debian/patches/fixup_git.patch: don't run git in clean; we're not
    really in a git tree.
  - debian/rules, debian/shim.install: use the upstream install target as
    intended, and move files to the target directory using dh_install.
  - define RELEASE and COMMIT_ID for the snapshot.
  - Set ENABLE_HTTPBOOT to enable the HTTP Boot feature.
  - Update dh_auto_build/dh_auto_clean/dh_auto_install for new upstream
    options: set MAKELEVEL.
  - Define an EFI_ARCH variable, and use that for paths to shim. This
    makes it possible to build a shim for other architectures than amd64.
  - Set EFIDIR=$distro for dh_auto_install; that will let files be installed
    in the "right" final directories, and makes boot.csv for us.
  - Set ENABLE_SHIM_CERT, to keep using ephemeral self-signed certs built
    at compile-time for MokManager and fallback.
  - Set ENABLE_SBSIGN, to use sbsign instead of pesign for signing fallback
    and MokManager.
2019-02-09 21:32:44 -08:00
Steve Langasek
0d63079c7d null merge of the Ubuntu git history 2019-02-09 21:26:40 -08:00
Mathieu Trudel-Lapierre
9c12130f9c releasing package shim version 15+1533136590.3beb971-0ubuntu1 2018-08-22 14:47:35 -04:00
Mathieu Trudel-Lapierre
d2b378f8a4 Make sure we pass the right COMMIT_ID to build 2018-08-22 10:06:32 -04:00
Mathieu Trudel-Lapierre
637de4775e Update to new snapshot 2018-08-21 14:24:09 -04:00
Mathieu Trudel-Lapierre
5f81bd7e08 Update upstream source from tag 'upstream/15+1533136590.3beb971'
Update to upstream version '15+1533136590.3beb971'
with Debian dir 26714b7953
2018-08-21 14:22:44 -04:00
Mathieu Trudel-Lapierre
7bf7a6d085 New upstream version 15+1533136590.3beb971 2018-08-21 14:22:44 -04:00
Mathieu Trudel-Lapierre
3f6670a920 releasing package shim version 15+1531942534.dd3230d-0ubuntu1 2018-08-14 14:49:36 -04:00
Mathieu Trudel-Lapierre
ad536b8717 debian/patches/fixup_git.patch: don't run git in clean; we're not really in a git tree. 2018-07-24 18:13:48 -04:00