Date: Mon, 26 May 2025 03:06:52 GMT From: "Simon J. Gerraty" <sjg@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: b0ada425efb3 - main - safe_eval allow : and + in values Message-ID: <202505260306.54Q36qrQ042679@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=b0ada425efb3fb1b744d66bd1d0c1bbd5a7f25e6 commit b0ada425efb3fb1b744d66bd1d0c1bbd5a7f25e6 Author: Simon J. Gerraty <sjg@FreeBSD.org> AuthorDate: 2025-05-26 03:05:53 +0000 Commit: Simon J. Gerraty <sjg@FreeBSD.org> CommitDate: 2025-05-26 03:06:47 +0000 safe_eval allow : and + in values --- libexec/rc/safe_eval.sh | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/libexec/rc/safe_eval.sh b/libexec/rc/safe_eval.sh index d03eacbdff72..8aaddcaf2176 100644 --- a/libexec/rc/safe_eval.sh +++ b/libexec/rc/safe_eval.sh @@ -1,7 +1,7 @@ # SPDX-License-Identifier: BSD-2-Clause # RCSid: -# $Id: safe_eval.sh,v 1.20 2024/08/16 00:57:58 sjg Exp $ +# $Id: safe_eval.sh,v 1.24 2025/05/23 21:34:54 sjg Exp $ # # @(#) Copyright (c) 2023-2024 Simon J. Gerraty # @@ -17,6 +17,17 @@ _SAFE_EVAL_SH=: +# does local *actually* work? +local_works() { + local _fu +} + +if local_works > /dev/null 2>&1; then + _local=local +else + _local=: +fi + ## # safe_set # @@ -24,7 +35,7 @@ _SAFE_EVAL_SH=: # any non-alphanumeric chars are replaced with '_' # safe_set() { - ${SED:-sed} 's/[ ]*#.*//;/^[A-Za-z_][A-Za-z0-9_]*=/!d;s;[^A-Za-z0-9_. "$,/=-];_;g' + ${SED:-sed} 's/[ ]*#.*//;/^[A-Za-z_][A-Za-z0-9_]*=/!d;s;[^A-Za-z0-9_. "$,/=:+-];_;g' } ## @@ -54,7 +65,7 @@ safe_eval_export() { # feed all "file" that exist to safe_eval # safe_dot() { - eval ${local:-:} ef ex f rc + eval $_local ef ex f rc ef= ex= rc=1
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202505260306.54Q36qrQ042679>