From owner-freebsd-bugs@freebsd.org Mon Nov 26 22:59:03 2018 Return-Path: Delivered-To: freebsd-bugs@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 412BA1147CE7 for ; Mon, 26 Nov 2018 22:59:03 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id CCE3B6FE41 for ; Mon, 26 Nov 2018 22:59:02 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 903EB1147CE2; Mon, 26 Nov 2018 22:59:02 +0000 (UTC) Delivered-To: bugs@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7EA781147CE0 for ; Mon, 26 Nov 2018 22:59:02 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1D7AC6FE3E for ; Mon, 26 Nov 2018 22:59:02 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 19AC11FF1 for ; Mon, 26 Nov 2018 22:59:01 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id wAQMx0Le020764 for ; Mon, 26 Nov 2018 22:59:00 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id wAQMx0tf020763 for bugs@FreeBSD.org; Mon, 26 Nov 2018 22:59:00 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 233545] bin/sh: "export VAR" always defines VAR unlike other shells Date: Mon, 26 Nov 2018 22:59:01 +0000 X-Bugzilla-Reason: CC AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bin X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: patch X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: jilles@FreeBSD.org X-Bugzilla-Status: Open X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: jilles@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc assigned_to bug_status Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-Rspamd-Queue-Id: CCE3B6FE41 X-Spamd-Result: default: False [2.05 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_SPAM_LONG(0.79)[0.792,0]; NEURAL_SPAM_MEDIUM(0.52)[0.525,0]; ASN(0.00)[asn:10310, ipnet:2001:1900:2254::/48, country:US]; NEURAL_SPAM_SHORT(0.74)[0.735,0] X-Rspamd-Server: mx1.freebsd.org X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Nov 2018 22:59:03 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D233545 Jilles Tjoelker changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bugs@FreeBSD.org Assignee|bugs@FreeBSD.org |jilles@FreeBSD.org Status|New |Open --- Comment #2 from Jilles Tjoelker --- Good catch. It somewhat surprises me that this has been broken for so long. The environment() part of the patch looks good, but the exportcmd() part is redundant since setvar() already sets VUNSET if the value to be set is NULL (something like sh -uc 'export thisshouldnotbehere; echo "$thisshouldnotbehere"' detects the unset variable as it should). Also, a = test should be added, preferably using env(1) or ${SH} itself only and not printenv(1) since it's not in POSIX. --=20 You are receiving this mail because: You are on the CC list for the bug. You are the assignee for the bug.=