From nobody Sat May 10 08:57:14 2025 X-Original-To: dev-commits-src-main@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 4ZvfrV3kL7z5w62Q; Sat, 10 May 2025 08:57:14 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZvfrV1brsz3bKH; Sat, 10 May 2025 08:57:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746867434; 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=Q3/OErK9oZeN2jOi9p8T6SSJFqupac5sDZr/2UBTjhY=; b=mMpjINfswOEm++kvKwh+vnI2icO36gLLoaZEF8akdakVA09upJ28a5/XgVQxRMoHAYnC5m FXz2p7TsDPgSZzEvG/yjMsu+grd+enyrq5v93D/fc4zAjPxnCJkjnSvJh6/gGn2fzjhGjX /74qqx31FEgMyfshsmXku+OxEs0ED9Knyjw/TS/3HLeucrq9lniy8JNRdwF/UtQVnxnLX4 4U2+8GSLl1iOYQOpLx2239ra3MyRGDUjUEL80EW31jUrRvn72iZCUXSBGYVXHlBNjh4JDQ QOpKVJXLtHffra45uJNMA8BkcXx5BnrN34/QmUmkjHy6jF3jZpmDURbkcBt+fQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746867434; 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=Q3/OErK9oZeN2jOi9p8T6SSJFqupac5sDZr/2UBTjhY=; b=XbkZpRIE7uSSRLSUUckUUbTHYIiawfonHdERC1uWhPIvHbIuNxMa/IyXVUgEBICNEb5ZRE iTBysbKMazh6KDJmkESgMDF9/OgqT+6qIphE7tp3u8ZW5hf9C+V+ko9Rl7a1EmRgmTsp6W jEZ9h37IdWBCfzMtfpQlYrSEIqiP+C0RFVslGCMExFhPqCzlB461lrDXARlgggCx2pXRNH c+IC/ZSvOtxNJfsRHtVzvzSO9t/yLkAEX5w3NhOwfrlszslXmtggvtLWIY49WxqFqUvg1l WXYI4e1LSfEAcGcgJpAuAkT9JaQ5x8PCZkxm43Ncp8smPXEgKf6k0wOGFxTq6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1746867434; a=rsa-sha256; cv=none; b=Ao0WW3zg27nI8jnJf/0sTO8cKx6R/oLl0VMZ+VGQPstqp7sIsK/1h8foXy8vNrN9UIg8M/ ujI7t45pS2QsgK1AzpX3EPaeevelfbp42hV0jADqMcr0tmY6sAma5rsDBuiBXs0B18Zsj4 1yCJg5F9dcGcpgsrH0SBcb9tLvzy8fn/8xaAActqP1+ue9z7t9ebGF8WtKyvLDYh2VX+N5 mdN7cxCsrT9/xqWsgue1pNHWIZiPbqFG3RCovhpVF2abZ63xHvUAsTujNK/ObKIED3DtT/ FNag7PWlQozTT3WCTrB7HHjL0EjMPH/BjnW9o91g43KywYAN+yzhZf+cu2IHsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZvfrV13kBzg7p; Sat, 10 May 2025 08:57:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54A8vE4a059729; Sat, 10 May 2025 08:57:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54A8vEjq059726; Sat, 10 May 2025 08:57:14 GMT (envelope-from git) Date: Sat, 10 May 2025 08:57:14 GMT Message-Id: <202505100857.54A8vEjq059726@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: be7839151cc9 - main - cp: Fix dead link case. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: be7839151cc9e3dfc428933d5f2705b32cdf4b86 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=be7839151cc9e3dfc428933d5f2705b32cdf4b86 commit be7839151cc9e3dfc428933d5f2705b32cdf4b86 Author: Dag-Erling Smørgrav AuthorDate: 2025-05-10 08:55:35 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-05-10 08:55:35 +0000 cp: Fix dead link case. The test case was a) not doing what I intended it to do and b) missing a third possible configuration. Fix the test case, and fix the code by not setting the beneath flag (which restricts operations to the destination tree) unless we are recursing. Fixes: 82fc0d09e862 Sponsored by: Klara, Inc. Reviewed by: allanjude, markj Differential Revision: https://reviews.freebsd.org/D50257 --- bin/cp/cp.c | 2 +- bin/cp/tests/cp_test.sh | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/bin/cp/cp.c b/bin/cp/cp.c index f1cfde7e5008..a3c8d910639c 100644 --- a/bin/cp/cp.c +++ b/bin/cp/cp.c @@ -267,7 +267,7 @@ copy(char *argv[], enum op type, int fts_options, struct stat *root_stat) char *recpath = NULL; int atflags, dne, badcp, len, rval; mode_t mask, mode; - bool beneath = type != FILE_TO_FILE; + bool beneath = Rflag && type != FILE_TO_FILE; bool skipdp = false; /* diff --git a/bin/cp/tests/cp_test.sh b/bin/cp/tests/cp_test.sh index 6644588f1ce8..bfc4009580cb 100755 --- a/bin/cp/tests/cp_test.sh +++ b/bin/cp/tests/cp_test.sh @@ -479,10 +479,15 @@ to_deadlink_append_body() mkdir bar ln -s baz bar/foo atf_check cp foo bar - atf_check cmp -s foo bar/foo - rm -f bar/foo + atf_check cmp -s foo bar/baz + rm -f bar/foo bar/baz + ln -s baz bar/foo + atf_check cp foo bar/ + atf_check cmp -s foo bar/baz + rm -f bar/foo bar/baz + ln -s $PWD/baz bar/foo atf_check cp foo bar/ - atf_check cmp -s foo bar/foo + atf_check cmp -s foo baz } atf_test_case to_dirlink