git: 44eb447094b7 - stable/14 - xinstall: Do not allow -l and -s together

Dag-Erling Smørgrav <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.src
Message-ID <6a6877a0.1c0e5.7a6adab7__36055.1424136915$1785231343$gmane$org@gitrepo.freebsd.org>
The branch stable/14 has been updated by des:

URL: https://cgit.FreeBSD.org/src/commit/?id=44eb447094b7ddd181389f5fcb4fb0cae0fee957

commit 44eb447094b7ddd181389f5fcb4fb0cae0fee957
Author:     Ed Maste <[email protected]>
AuthorDate: 2026-06-03 01:27:54 +0000
Commit:     Dag-Erling Smørgrav <[email protected]>
CommitDate: 2026-07-28 09:31:41 +0000

    xinstall: Do not allow -l and -s together
    
    Cannot strip the target if creating a link.
    
    Reviewed by:    des
    Sponsored by:   The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D57398
    
    (cherry picked from commit 521afce6a859c1d7ac9674e8f21ff45418becaf5)
---
 usr.bin/xinstall/tests/install_test.sh | 3 +++
 usr.bin/xinstall/xinstall.c            | 6 ++++++
 2 files changed, 9 insertions(+)

diff --git a/usr.bin/xinstall/tests/install_test.sh b/usr.bin/xinstall/tests/install_test.sh
index 6b091f26b377..377920200490 100755
--- a/usr.bin/xinstall/tests/install_test.sh
+++ b/usr.bin/xinstall/tests/install_test.sh
@@ -27,8 +27,11 @@
 
 atf_test_case incompatible_opts
 incompatible_opts_body() {
+	printf 'test\n123\r456\r\n789\0z' >testf
 	atf_check -s not-exit:0 -e match:"specified together" \
 	    install -s -d dir1
+	atf_check -s not-exit:0 -e match:"specified together" \
+	    install -s -l s testf copyf
 }
 
 atf_test_case copy_to_empty
diff --git a/usr.bin/xinstall/xinstall.c b/usr.bin/xinstall/xinstall.c
index a5173603d6ff..04801c590e06 100644
--- a/usr.bin/xinstall/xinstall.c
+++ b/usr.bin/xinstall/xinstall.c
@@ -294,6 +294,12 @@ main(int argc, char *argv[])
 		usage();
 	}
 
+	/* Cannot strip if creating a link. */
+	if (dostrip && dolink) {
+		warnx("-l and -s may not be specified together");
+		usage();
+	}
+
 	/*
 	 * Default permissions based on whether we're a directory or not, since
 	 * an +X may mean that we need to set the execute bit.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.