From owner-svn-src-stable-10@freebsd.org Fri Jul 7 15:35:43 2017 Return-Path: Delivered-To: svn-src-stable-10@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 848C0DA5F41; Fri, 7 Jul 2017 15:35:43 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 57DF67EBF1; Fri, 7 Jul 2017 15:35:43 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v67FZgKT070880; Fri, 7 Jul 2017 15:35:42 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v67FZg4t070879; Fri, 7 Jul 2017 15:35:42 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201707071535.v67FZg4t070879@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Fri, 7 Jul 2017 15:35:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r320782 - stable/10/sbin/ipfw X-SVN-Group: stable-10 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/10/sbin/ipfw X-SVN-Commit-Revision: 320782 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-10@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for only the 10-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2017 15:35:43 -0000 Author: asomers Date: Fri Jul 7 15:35:42 2017 New Revision: 320782 URL: https://svnweb.freebsd.org/changeset/base/320782 Log: MFC r319900: sbin/ipfw: strcpy, strncpy => strlcpy Reported by: Coverity CID: 1356162, 1356166 Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D10662 Modified: stable/10/sbin/ipfw/dummynet.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sbin/ipfw/dummynet.c ============================================================================== --- stable/10/sbin/ipfw/dummynet.c Fri Jul 7 15:22:29 2017 (r320781) +++ stable/10/sbin/ipfw/dummynet.c Fri Jul 7 15:35:42 2017 (r320782) @@ -799,8 +799,7 @@ read_bandwidth(char *arg, int *bandwidth, char *if_nam warn("interface name truncated"); namelen--; /* interface name */ - strncpy(if_name, arg, namelen); - if_name[namelen] = '\0'; + strlcpy(if_name, arg, namelen); *bandwidth = 0; } else { /* read bandwidth value */ int bw; @@ -927,8 +926,7 @@ load_extra_delays(const char *filename, struct dn_prof } else if (!strcasecmp(name, ED_TOK_NAME)) { if (profile_name[0] != '\0') errx(ED_EFMT("duplicated token: %s"), name); - strncpy(profile_name, arg, sizeof(profile_name) - 1); - profile_name[sizeof(profile_name)-1] = '\0'; + strlcpy(profile_name, arg, sizeof(profile_name)); do_points = 0; } else if (!strcasecmp(name, ED_TOK_DELAY)) { if (do_points) @@ -999,7 +997,7 @@ load_extra_delays(const char *filename, struct dn_prof } p->samples_no = samples; p->loss_level = loss * samples; - strncpy(p->name, profile_name, sizeof(p->name)); + strlcpy(p->name, profile_name, sizeof(p->name)); } #ifdef NEW_AQM @@ -1562,7 +1560,8 @@ end_mask: fs->flags &= ~(DN_IS_RED|DN_IS_GENTLE_RED); fs->flags |= DN_IS_AQM; - strcpy(aqm_extra->name,av[-1]); + strlcpy(aqm_extra->name, av[-1], + sizeof(aqm_extra->name)); aqm_extra->oid.subtype = DN_AQM_PARAMS; process_extra_parms(&ac, av, aqm_extra, tok); @@ -1574,7 +1573,8 @@ end_mask: errx(EX_DATAERR, "use type before fq_codel/fq_pie"); NEED(sch, "fq_codel/fq_pie is only for schd"); - strcpy(sch_extra->name,av[-1]); + strlcpy(sch_extra->name, av[-1], + sizeof(sch_extra->name)); sch_extra->oid.subtype = DN_SCH_PARAMS; process_extra_parms(&ac, av, sch_extra, tok); break; @@ -1643,14 +1643,15 @@ end_mask: l = strlen(av[0]); if (l == 0 || l > 15) errx(1, "type %s too long\n", av[0]); - strcpy(sch->name, av[0]); + strlcpy(sch->name, av[0], sizeof(sch->name)); sch->oid.subtype = 0; /* use string */ #ifdef NEW_AQM /* if fq_codel is selected, consider all tokens after it * as parameters */ if (!strcasecmp(av[0],"fq_codel") || !strcasecmp(av[0],"fq_pie")){ - strcpy(sch_extra->name,av[0]); + strlcpy(sch_extra->name, av[0], + sizeof(sch_extra->name)); sch_extra->oid.subtype = DN_SCH_PARAMS; process_extra_parms(&ac, av, sch_extra, tok); } else {