From nobody Sun Jan 29 23:14:54 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4P4nG6746Vz3bGyj; Sun, 29 Jan 2023 23:14:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4P4nG66Ts5z40Bn; Sun, 29 Jan 2023 23:14:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675034094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cG6lfhf0WW+pFsGkMHdQAyEsg8Y7lxCCNCcpTc0YTSM=; b=JdYPlgJJmJAho7b6lfMkK0hptZBIgXcAU4EiAL392/vEZ/bX5V5s/DbGOp5o/tOSIQdZtU 7wd4o7sfP8dqrWAeKFhPFNeZLinkezmnaJZ6xIT8mnYHTXQ/C0VLqxFSEZ2HJEt6tuUctm JDZFW1c0buh6jtUT4RrxUc9GW21rPGGKMj8C+NzgWM0HtEYfLunEnxNnndAvsnU0SMi+Ya ikpWpDW7sSXQaysDEQK0dHRzDtkVb0hrxnlEX1oalPRIjNJs8Yz0joXaiS/uYPdLoWa6pM jssRlwroAB9uIefbnwII2C+BxZCNq1BaN5uxtrAUoQKNnH7i4IU8zL/pp7ifNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675034094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cG6lfhf0WW+pFsGkMHdQAyEsg8Y7lxCCNCcpTc0YTSM=; b=rn+slpYd2BkAAIZLj5SbV11hUUq1noRicNlnEJKVBKCVKvwmBxTtiKJmdYQ+RqNLjFiTks DpCNSnlDD/vZ4sv4jY/36vbl7ga6NMi0b2Ovsz8sWUHkIfbWFyKkDjYMhKOe6bhpQ+QOmJ gTzBgFcTnoyZJ/0PgUueep36SND/WwCe1EzD8RCVHTEjv8XSvcL5J8DL9fSPkfclwkOVYw jx9HnAqUnYKahCqnmnzaZkkupbE/RdDDrk2Wn0T7lBzchYd972blbeBEdLgL4Esyx5q8r+ 4gplN6zsWfLJ+Uc4JmZ3OMBbZURdikxsU+M9j9geG47ee7L/6jbp2YVb1DJ3Hw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1675034094; a=rsa-sha256; cv=none; b=sm7/W2xd8RS49/3Ddv2Pe7GBqRXjaaEhZ9docmijRae4/oSctoldh8JAuA0NMrFb7WPB1I cePJIreaxjglleU4ukSwCHzU7HCi+487LFAkzrbYy66Qg48xS4RJgS9ZE1DPseCAkC248H hyScXSvP/rXUcgYPST1y8Dktz2oyKqCPAcj4b77JdEs2CfUduoFRcd25nvYLZy/QuLFBtu eV2OkgCbvMVZ8I0uBnVkWQil45FurfvUfi/ijM93l0Aoa93xcVt7z1H6/lLXNMxL2GmoC2 dGod8dUD2TsNwHmRDN2kzOkK0kUttVskKOOjbZcnATjkKL5S+cYmkhRh2T4T9w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4P4nG65WmHzlwj; Sun, 29 Jan 2023 23:14:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30TNEs0d064283; Sun, 29 Jan 2023 23:14:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30TNEsNY064282; Sun, 29 Jan 2023 23:14:54 GMT (envelope-from git) Date: Sun, 29 Jan 2023 23:14:54 GMT Message-Id: <202301292314.30TNEsNY064282@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kirk McKusick Subject: git: ad055467bec3 - main - Fix for getmntpoint(3) when checking for NFS mount points. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ad055467bec35885dc3eff2f4dd765f5b2f53259 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=ad055467bec35885dc3eff2f4dd765f5b2f53259 commit ad055467bec35885dc3eff2f4dd765f5b2f53259 Author: Kirk McKusick AuthorDate: 2023-01-29 23:12:48 +0000 Commit: Kirk McKusick CommitDate: 2023-01-29 23:14:43 +0000 Fix for getmntpoint(3) when checking for NFS mount points. Only attempt to add /dev/ to f_mntfromname names that result in a valid character device. MFC after: 1 week Reported by: Bjoern A. Zeeb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37907 --- sbin/mount/getmntopts.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/sbin/mount/getmntopts.c b/sbin/mount/getmntopts.c index 7702da903749..3a5cac0d9bac 100644 --- a/sbin/mount/getmntopts.c +++ b/sbin/mount/getmntopts.c @@ -177,6 +177,11 @@ getmntpoint(const char *name) mntsize = getmntinfo(&mntbuf, MNT_NOWAIT); for (i = 0; i < mntsize; i++) { statfsp = &mntbuf[i]; + if (isdev == 0) { + if (strcmp(name, statfsp->f_mntonname)) + continue; + return (statfsp); + } ddevname = statfsp->f_mntfromname; if (*ddevname != '/') { if ((len = strlen(_PATH_DEV) + strlen(ddevname) + 1) > @@ -185,12 +190,8 @@ getmntpoint(const char *name) continue; strncpy(device, _PATH_DEV, len); strncat(device, ddevname, len); - strncpy(statfsp->f_mntfromname, device, len); - } - if (isdev == 0) { - if (strcmp(name, statfsp->f_mntonname)) - continue; - return (statfsp); + if (stat(device, &mntdevstat) == 0) + strncpy(statfsp->f_mntfromname, device, len); } if (stat(ddevname, &mntdevstat) == 0 && mntdevstat.st_rdev == devstat.st_rdev)