Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Apr 2018 08:15:50 +0000 (UTC)
From:      Toomas Soome <tsoome@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r332557 - head/stand/common
Message-ID:  <201804160815.w3G8FoYK051907@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tsoome
Date: Mon Apr 16 08:15:50 2018
New Revision: 332557
URL: https://svnweb.freebsd.org/changeset/base/332557

Log:
  loader: make sure we use snprintf() in commands.c
  
  Safeguard against memory corruptions.

Modified:
  head/stand/common/commands.c

Modified: head/stand/common/commands.c
==============================================================================
--- head/stand/common/commands.c	Mon Apr 16 08:03:18 2018	(r332556)
+++ head/stand/common/commands.c	Mon Apr 16 08:15:50 2018	(r332557)
@@ -236,7 +236,7 @@ command_commandlist(int argc, char *argv[])
 	if (res)
 	    break;
 	if (((*cmdp)->c_name != NULL) && ((*cmdp)->c_desc != NULL)) {
-	    sprintf(name, "  %-15s  ", (*cmdp)->c_name);
+	    snprintf(name, sizeof(name), "  %-15s  ", (*cmdp)->c_name);
 	    pager_output(name);
 	    pager_output((*cmdp)->c_desc);
 	    res = pager_output("\n");
@@ -435,12 +435,12 @@ command_more(int argc, char *argv[])
     res=0;
     pager_open();
     for (i = 1; (i < argc) && (res == 0); i++) {
-	sprintf(line, "*** FILE %s BEGIN ***\n", argv[i]);
+	snprintf(line, sizeof(line), "*** FILE %s BEGIN ***\n", argv[i]);
 	if (pager_output(line))
 		break;
         res = page_file(argv[i]);
 	if (!res) {
-	    sprintf(line, "*** FILE %s END ***\n", argv[i]);
+	    snprintf(line, sizeof(line), "*** FILE %s END ***\n", argv[i]);
 	    res = pager_output(line);
 	}
     }
@@ -501,7 +501,7 @@ command_lsdev(int argc, char *argv[])
 	    if (devsw[i]->dv_print(verbose))
 		break;
 	} else {
-	    sprintf(line, "%s: (unknown)\n", devsw[i]->dv_name);
+	    snprintf(line, sizeof(line), "%s: (unknown)\n", devsw[i]->dv_name);
 	    if (pager_output(line))
 		    break;
 	}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201804160815.w3G8FoYK051907>