Submit #2872 ยป 0001-boot0cfg-use-getdevpath-instead-of-custom-function.patch
usr.sbin/boot0cfg/boot0cfg.c | ||
---|---|---|
#include <stdlib.h>
|
||
#include <string.h>
|
||
#include <unistd.h>
|
||
#include <fstab.h>
|
||
#define MBRSIZE 512 /* master boot record size */
|
||
... | ... | |
static int boot0version(const u_int8_t *);
|
||
static int boot0bs(const u_int8_t *);
|
||
static void stropt(const char *, int *, int *);
|
||
static char *mkrdev(const char *);
|
||
static int argtoi(const char *, int, int, int);
|
||
static void usage(void);
|
||
... | ... | |
argv += optind;
|
||
if (argc != 1)
|
||
usage();
|
||
disk = mkrdev(*argv);
|
||
disk = getdevpath(*argv, 0);
|
||
if (!disk)
|
||
err(1, "cannot open disk %s", disk);
|
||
up = B_flag || d_arg != -1 || m_arg != -1 || o_flag || s_arg != -1
|
||
|| t_arg != -1;
|
||
... | ... | |
}
|
||
/*
|
||
* Produce a device path for a "canonical" name, where appropriate.
|
||
*/
|
||
static char *
|
||
mkrdev(const char *fname)
|
||
{
|
||
char buf[MAXPATHLEN];
|
||
char *s;
|
||
if (!strchr(fname, '/')) {
|
||
snprintf(buf, sizeof(buf), "%s%s", _PATH_DEV, fname);
|
||
s = strdup(buf);
|
||
} else
|
||
s = strdup(fname);
|
||
if (s == NULL)
|
||
errx(1, "No more memory");
|
||
return s;
|
||
}
|
||
/*
|
||
* Convert and check an option argument.
|
||
*/
|
||
static int
|