From d310bf3867b4168e57365196c3a31797c0538097 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sun, 6 Feb 2022 15:25:22 +0100 Subject: [PATCH] Fix too small hostname buffer in bootparamd This fixes the following warning from clang 14: usr.sbin/bootparamd/bootparamd/bootparamd.c:204:32: error: 'fscanf' may overflow; destination buffer in argument 3 has size 255, but the corresponding specifier may require size 256 [-Werror,-Wfortify-source] The MAX_MACHINE_NAME macro indicates the maximum number of bytes in a machine name, but it does not include the NUL terminator required for scanf. MFC after: 3 days --- usr.sbin/bootparamd/bootparamd/bootparamd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bootparamd/bootparamd/bootparamd.c b/usr.sbin/bootparamd/bootparamd/bootparamd.c index be885de62f55..5bbd5b4becef 100644 --- a/usr.sbin/bootparamd/bootparamd/bootparamd.c +++ b/usr.sbin/bootparamd/bootparamd/bootparamd.c @@ -34,7 +34,7 @@ extern const char *bootpfile; static struct hostent *he; static char buffer[MAXLEN]; -static char hostname[MAX_MACHINE_NAME]; +static char hostname[MAX_MACHINE_NAME + 1]; static char askname[MAX_MACHINE_NAME]; static char path[MAX_PATH_LEN]; static char domain_name[MAX_MACHINE_NAME];