Commit Graph

1510 Commits

Author SHA1 Message Date
Gary Ching-Pang Lin
8371c49ce7 MokManager: Remove the unnecessary string duplication 2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
fc5f6d59f5 MokManager: Remove the unnecessary string duplication 2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
d71240bfff Correct the certificate count of the signature list 2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
19e4fc298c Correct the certificate count of the signature list 2013-09-26 11:58:02 -04:00
Peter Jones
e053c22701 Since different distros name grub*.efi differently, make it compile-time.
Basically, if you don't want grub.efi, you do:

make 'DEFAULT_LOADER=\\\\grubx64.efi'

Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 11:58:02 -04:00
Peter Jones
8e9124227d Since different distros name grub*.efi differently, make it compile-time.
Basically, if you don't want grub.efi, you do:

make 'DEFAULT_LOADER=\\\\grubx64.efi'

Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
bd145c6082 Define the PXE 2nd stage loader in the beginning of the file
Make it easier to change the PXE 2nd stage loader.

Conflicts:
	netboot.c
2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
b0f1e57897 Define the PXE 2nd stage loader in the beginning of the file
Make it easier to change the PXE 2nd stage loader.

Conflicts:
	netboot.c
2013-09-26 11:58:02 -04:00
Gary Ching-Pang Lin
436afcc276 Remove double-separators from the bootpath 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
aa3dca0ba5 Remove double-separators from the bootpath 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
f9f81a22dd Fix the broken bootpath
- The file path from DevicePathToStr may use slash as the file
  seperator. Change all slashes to backslashes to avoid the strange
  bootpath.
- Remove the redundant backslashes.
- ImagePath no longer requires the leading backslash.
- Fix a memory leak

Based on the patch from Michal Marek <mmarek@suse.com>
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
ca22da9def Fix the broken bootpath
- The file path from DevicePathToStr may use slash as the file
  seperator. Change all slashes to backslashes to avoid the strange
  bootpath.
- Remove the redundant backslashes.
- ImagePath no longer requires the leading backslash.
- Fix a memory leak

Based on the patch from Michal Marek <mmarek@suse.com>
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
908eacc225 MokManager: support Tradition DES hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
be9108a8b9 MokManager: support Tradition DES hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
be5c35e1ac MokManager: support MD5-based crypt() hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
09f6afbe72 MokManager: support MD5-based crypt() hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
114dad494c MokManager: support blowfish-based crypt() hash
Conflicts:
	Makefile
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
83d1c30608 MokManager: support blowfish-based crypt() hash
Conflicts:
	Makefile
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
5a89835189 MokManager: support SHA512-based crypt() hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
9b41d26597 MokManager: support SHA512-based crypt() hash 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
3a838b14f0 MokManager: support crypt() password hash
The password format is introduced for the password hash generated by crypt(),
so that the user can import the password hash from /etc/shadow. The packager,
especially those who packages 3rd party drivers, can utilize this feature to
import a 3rd party certificate without interfering the package installation.

This commit implements the sha256-based crypt() hash function.

Conflicts:
	Makefile
	MokManager.c
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
afb61e7902 MokManager: support crypt() password hash
The password format is introduced for the password hash generated by crypt(),
so that the user can import the password hash from /etc/shadow. The packager,
especially those who packages 3rd party drivers, can utilize this feature to
import a 3rd party certificate without interfering the package installation.

This commit implements the sha256-based crypt() hash function.

Conflicts:
	Makefile
	MokManager.c
2013-09-26 11:58:01 -04:00
Peter Jones
5e9fee2158 Make EFI_PATH easily resettable from the build command line.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 11:58:01 -04:00
Peter Jones
4a7f9bd4a6 Make EFI_PATH easily resettable from the build command line.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
cdd2dc9132 Clean lib/, too 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
c0f8cd721c Clean lib/, too 2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
b1a00240ab simple_file: Allocate buffers for file entries
The dir filter appends L'/' to the directory entries without
allocating a new buffer, and this could crash the whole program.
2013-09-26 11:58:01 -04:00
Gary Ching-Pang Lin
b82d6d7cb1 simple_file: Allocate buffers for file entries
The dir filter appends L'/' to the directory entries without
allocating a new buffer, and this could crash the whole program.
2013-09-26 11:58:01 -04:00
Matthew Garrett
17857eb8b5 Port MokManager to Linux Foundation loader UI code
This is the first stage of porting the MokManager UI to the UI code used
by the Linux Foundation UEFI loader.
2013-09-26 11:57:59 -04:00
Matthew Garrett
d359712e1b Port MokManager to Linux Foundation loader UI code
This is the first stage of porting the MokManager UI to the UI code used
by the Linux Foundation UEFI loader.
2013-09-26 11:57:59 -04:00
Peter Jones
2aa2ddd8a8 Port MokManager to Linux Foundation loader UI code
This is the first stage of porting the MokManager UI to the UI code used
by the Linux Foundation UEFI loader.

Conflicts:
	MokManager.c
2013-09-26 11:57:51 -04:00
Peter Jones
c62b9d16de Port MokManager to Linux Foundation loader UI code
This is the first stage of porting the MokManager UI to the UI code used
by the Linux Foundation UEFI loader.

Conflicts:
	MokManager.c
2013-09-26 11:57:51 -04:00
Peter Jones
227d13a2d9 We have to declare SHIM_LOCK_GUID here as well.
Signed-off-by: Peter Jones <pjones@redhat.com>

Conflicts:
	MokManager.c
2013-09-26 11:56:52 -04:00
Peter Jones
100ae9fdba We have to declare SHIM_LOCK_GUID here as well.
Signed-off-by: Peter Jones <pjones@redhat.com>

Conflicts:
	MokManager.c
2013-09-26 11:56:52 -04:00
Peter Jones
ebda1052c9 Ignore tarballs.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 09:56:32 -04:00
Peter Jones
49ad36a8ad Ignore tarballs.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 09:56:32 -04:00
Peter Jones
a869915a1d MokManager needs to disable the graphics console.
Without this patch, on some machines we never see MokManager's UI.  This
protocol has never (I think?) been officially published, and yet I still
have new hardware that needs it.

If you're looking for a reference, look at:

EdkCompatibilityPkg/Foundation/Protocol/ConsoleControl/ConsoleControl.c

in the edk2 tree from Tiano.

Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 09:56:26 -04:00
Peter Jones
193b5b6120 MokManager needs to disable the graphics console.
Without this patch, on some machines we never see MokManager's UI.  This
protocol has never (I think?) been officially published, and yet I still
have new hardware that needs it.

If you're looking for a reference, look at:

EdkCompatibilityPkg/Foundation/Protocol/ConsoleControl/ConsoleControl.c

in the edk2 tree from Tiano.

Signed-off-by: Peter Jones <pjones@redhat.com>
2013-09-26 09:56:26 -04:00
Steve Langasek
5ccacd3a48 Fix a memory leak 2013-09-24 12:05:51 -04:00
Steve Langasek
d65cbcfa6f Fix a memory leak 2013-09-24 12:05:51 -04:00
Steve Langasek
69a54db486 Correct limits on the length of ipv6 addresses
The maximum length of a string representation of an ipv6 address is 39
characters (8 groups of 4 hex chars, with 7 colons in between).  So don't
allocate more room than this - and more importantly, don't blindly accept
strings from the server that are longer than our buffer...
2013-09-24 12:05:47 -04:00
Steve Langasek
45ab8962ae Correct limits on the length of ipv6 addresses
The maximum length of a string representation of an ipv6 address is 39
characters (8 groups of 4 hex chars, with 7 colons in between).  So don't
allocate more room than this - and more importantly, don't blindly accept
strings from the server that are longer than our buffer...
2013-09-24 12:05:47 -04:00
Steve Langasek
af049ff457 More consistent types, fewer casts 2013-09-24 12:05:38 -04:00
Steve Langasek
0f603fa81a More consistent types, fewer casts 2013-09-24 12:05:38 -04:00
Steve Langasek
6eaa1a9c9e Misc allocation cleanups 2013-09-24 12:05:34 -04:00
Steve Langasek
3756f0b8e5 Misc allocation cleanups 2013-09-24 12:05:34 -04:00
Steve Langasek
3816832bc5 Fix an off-by-one error
We don't need to add one because our end pointer is already off the end of
the string we want to copy.
2013-09-24 12:05:31 -04:00
Steve Langasek
e4642cca38 Fix an off-by-one error
We don't need to add one because our end pointer is already off the end of
the string we want to copy.
2013-09-24 12:05:31 -04:00
Steve Langasek
e2979f2c5f Fix nul termination errors in filenames passed to tftp
Fix various errors in the tftp string handling, to ensure we always have
properly nul-terminated strings.
2013-09-24 12:05:28 -04:00
Steve Langasek
37b87f8e03 Fix nul termination errors in filenames passed to tftp
Fix various errors in the tftp string handling, to ensure we always have
properly nul-terminated strings.
2013-09-24 12:05:28 -04:00