aboutsummaryrefslogtreecommitdiff
path: root/stand/common
diff options
context:
space:
mode:
authorRobert Wing <rew@FreeBSD.org>2023-02-25 09:37:32 +0000
committerRobert Wing <rew@FreeBSD.org>2023-02-25 09:37:32 +0000
commitc5f01980705930bf46059a004e20e010d8e21dfa (patch)
tree304ec265d0aac6ebfe1082455c112c1c7273983f /stand/common
parent773c13c686e4b6ae9dbbc150b342b82c3f47d73a (diff)
downloadsrc-c5f01980705930bf46059a004e20e010d8e21dfa.tar.gz
src-c5f01980705930bf46059a004e20e010d8e21dfa.zip
Diffstat (limited to 'stand/common')
-rw-r--r--stand/common/boot.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/stand/common/boot.c b/stand/common/boot.c
index 06f604f595df..3ec827617d56 100644
--- a/stand/common/boot.c
+++ b/stand/common/boot.c
@@ -32,8 +32,9 @@ __FBSDID("$FreeBSD$");
*/
#include <stand.h>
-#include <sys/reboot.h>
#include <sys/boot.h>
+#include <sys/kenv.h>
+#include <sys/reboot.h>
#include <string.h>
#include "bootstrap.h"
@@ -321,14 +322,14 @@ getbootfile(int try)
int
getrootmount(char *rootdev)
{
- char lbuf[128], *cp, *ep, *dev, *fstyp, *options;
+ char lbuf[KENV_MVALLEN], *cp, *ep, *dev, *fstyp, *options;
int fd, error;
if (getenv("vfs.root.mountfrom") != NULL)
return(0);
error = 1;
- sprintf(lbuf, "%s/etc/fstab", rootdev);
+ snprintf(lbuf, sizeof(lbuf), "%s/etc/fstab", rootdev);
if ((fd = open(lbuf, O_RDONLY)) < 0)
goto notfound;
@@ -382,7 +383,7 @@ getrootmount(char *rootdev)
*cp = 0;
options = strdup(ep);
/* Build the <fstype>:<device> and save it in vfs.root.mountfrom */
- sprintf(lbuf, "%s:%s", fstyp, dev);
+ snprintf(lbuf, sizeof(lbuf), "%s:%s", fstyp, dev);
setenv("vfs.root.mountfrom", lbuf, 0);
/* Don't override vfs.root.mountfrom.options if it is already set */