mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
zipl: add an ability to specify components location
When creating a bootmap, look for zipl components (stage3.bin and zipl helpers) in a directory specified by S390TOOLS_LIBDIR shell environment variable. If that variable is not set, then look for them at the default location. In verbose mode print the name of s390-tools library directory, where the search was implemented. Signed-off-by: Eduard Shishkin <edward6@linux.ibm.com> Reviewed-by: Jan Höppner <hoeppner@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
committed by
Jan Höppner
parent
a645ec0fc0
commit
ebde75eeda
+2
-1
@@ -14,6 +14,7 @@
|
|||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include "lib/zt_common.h"
|
#include "lib/zt_common.h"
|
||||||
|
#include "lib/util_base.h"
|
||||||
#include "boot/loaders_layout.h"
|
#include "boot/loaders_layout.h"
|
||||||
|
|
||||||
#define ZIPL_MAGIC "zIPL"
|
#define ZIPL_MAGIC "zIPL"
|
||||||
@@ -35,7 +36,7 @@
|
|||||||
#define ZIPL_DEFAULT_CONF TOOLS_SYSCONFDIR "/zipl.conf"
|
#define ZIPL_DEFAULT_CONF TOOLS_SYSCONFDIR "/zipl.conf"
|
||||||
#define ZIPL_MINIMAL_CONF TOOLS_LIBDIR "/zipl.conf"
|
#define ZIPL_MINIMAL_CONF TOOLS_LIBDIR "/zipl.conf"
|
||||||
#define ZIPL_DEFAULT_BLSDIR "/boot/loader/entries"
|
#define ZIPL_DEFAULT_BLSDIR "/boot/loader/entries"
|
||||||
#define ZIPL_STAGE3_PATH TOOLS_LIBDIR "/stage3.bin"
|
#define ZIPL_STAGE3_PATH util_libdir_path("stage3.bin")
|
||||||
#define ZIPL_SIPL_PATH "/sys/firmware/ipl/has_secure"
|
#define ZIPL_SIPL_PATH "/sys/firmware/ipl/has_secure"
|
||||||
|
|
||||||
#define MENU_DEFAULT_PROMPT 0
|
#define MENU_DEFAULT_PROMPT 0
|
||||||
|
|||||||
+1
-1
@@ -440,7 +440,7 @@ print_components(const char *name[], struct component_loc *loc, int num)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
extract_signature(char *filename, void **ret_signature,
|
extract_signature(const char *filename, void **ret_signature,
|
||||||
struct signature_header *sig_head)
|
struct signature_header *sig_head)
|
||||||
{
|
{
|
||||||
struct file_signature *file_sig;
|
struct file_signature *file_sig;
|
||||||
|
|||||||
+1
-1
@@ -198,7 +198,7 @@ disk_get_info(const char* device, struct job_target_data* target,
|
|||||||
int fd;
|
int fd;
|
||||||
long devsize;
|
long devsize;
|
||||||
FILE *fh;
|
FILE *fh;
|
||||||
char *script_pre = TOOLS_LIBDIR "/zipl_helper.";
|
const char *script_pre = util_libdir_path("/zipl_helper.");
|
||||||
char *script_file = NULL;
|
char *script_file = NULL;
|
||||||
char *ppn_cmd = NULL;
|
char *ppn_cmd = NULL;
|
||||||
char buffer[80];
|
char buffer[80];
|
||||||
|
|||||||
@@ -1920,6 +1920,9 @@ job_get(int argc, char* argv[], struct job_data** data)
|
|||||||
job->data.mvdump.force = cmdline.force;
|
job->data.mvdump.force = cmdline.force;
|
||||||
job->dry_run = cmdline.dry_run;
|
job->dry_run = cmdline.dry_run;
|
||||||
job->is_secure = SECURE_BOOT_UNDEFINED;
|
job->is_secure = SECURE_BOOT_UNDEFINED;
|
||||||
|
if (job->verbose)
|
||||||
|
printf("Looking for components in '%s'\n", util_libdir());
|
||||||
|
|
||||||
/* Get job data from user input */
|
/* Get job data from user input */
|
||||||
if (cmdline.help) {
|
if (cmdline.help) {
|
||||||
job->command_line = 1;
|
job->command_line = 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user