Print this page
10597 would like a way to set NMI behavior at boot
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Andy Fiddaman <andy@omniosce.org>
*** 2913,2940 ****
cbp->iscmp = 0;
cbp->blksize = MAXBSIZE;
return (0);
}
- #define BP_MAX_STRLEN 32
-
/*
! * Get value for given boot property
*/
int
bootprop_getval(const char *prop_name, u_longlong_t *prop_value)
{
int boot_prop_len;
char str[BP_MAX_STRLEN];
u_longlong_t value;
boot_prop_len = BOP_GETPROPLEN(bootops, prop_name);
! if (boot_prop_len < 0 || boot_prop_len > sizeof (str) ||
BOP_GETPROP(bootops, prop_name, str) < 0 ||
kobj_getvalue(str, &value) == -1)
return (-1);
if (prop_value)
*prop_value = value;
return (0);
}
--- 2913,2950 ----
cbp->iscmp = 0;
cbp->blksize = MAXBSIZE;
return (0);
}
/*
! * Get an integer value for given boot property
*/
int
bootprop_getval(const char *prop_name, u_longlong_t *prop_value)
{
int boot_prop_len;
char str[BP_MAX_STRLEN];
u_longlong_t value;
boot_prop_len = BOP_GETPROPLEN(bootops, prop_name);
! if (boot_prop_len < 0 || boot_prop_len >= sizeof (str) ||
BOP_GETPROP(bootops, prop_name, str) < 0 ||
kobj_getvalue(str, &value) == -1)
return (-1);
if (prop_value)
*prop_value = value;
return (0);
+ }
+
+ int
+ bootprop_getstr(const char *prop_name, char *buf, size_t buflen)
+ {
+ int boot_prop_len = BOP_GETPROPLEN(bootops, prop_name);
+
+ if (boot_prop_len < 0 || boot_prop_len >= buflen ||
+ BOP_GETPROP(bootops, prop_name, buf) < 0)
+ return (-1);
+
+ return (0);
}