From owner-cvs-src@FreeBSD.ORG Sat May 28 22:57:17 2005 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 11BB316A41C; Sat, 28 May 2005 22:57:17 +0000 (GMT) (envelope-from gad@FreeBSD.org) Received: from smtp3.server.rpi.edu (smtp3.server.rpi.edu [128.113.2.3]) by mx1.FreeBSD.org (Postfix) with ESMTP id B20A443D1F; Sat, 28 May 2005 22:57:16 +0000 (GMT) (envelope-from gad@FreeBSD.org) Received: from [128.113.24.47] (gilead.netel.rpi.edu [128.113.24.47]) by smtp3.server.rpi.edu (8.13.0/8.13.0) with ESMTP id j4SMvESH024285; Sat, 28 May 2005 18:57:15 -0400 Mime-Version: 1.0 Message-Id: In-Reply-To: <200505282242.j4SMgfBD032414@repoman.freebsd.org> References: <200505282242.j4SMgfBD032414@repoman.freebsd.org> Date: Sat, 28 May 2005 18:57:14 -0400 To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org From: Garance A Drosehn Content-Type: text/plain; charset="us-ascii" ; format="flowed" X-CanItPRO-Stream: default X-RPI-SA-Score: undef - spam-scanning disabled X-Scanned-By: CanIt (www . canit . ca) on 128.113.2.3 Cc: Subject: Re: cvs commit: src/sys/kern imgact_shell.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 22:57:17 -0000 At 10:42 PM +0000 5/28/05, Garance A Drosehn wrote: >gad 2005-05-28 22:42:41 UTC > > FreeBSD src repository > > Modified files: > sys/kern imgact_shell.c > Log: > Change the way options are parsed on the `#!'-line of a shell-script. > Instead of having the kernel parse that line and add an entry to the > argument list for each 'separate word' it finds, have it add only one > entry which holds all the words found on that line. The old behavior > is useful in some situations, but it does not match the way any other > operating system will parse that line. In case it is not obvious from that description, note that this is an incompatible change. However, it is expected that this change should not effect too many scripts. Also, there was a recent commit (v1.23) to bin/sh/options.c which should address the problem that was most likely to come up due to this change. For some examples of what kinds of breakage this change might cause, please check: http://people.freebsd.org/~gad/Updating-20050528.txt It is not documented, but this change also provides a TEMPORARY way to side-step this change, if you have some specific script where you need immediate fix. If you start the script with: #!#< instead of just: #! (followed by the interpreter name, such as /bin/sh), then that script will be processed exactly the same way it was processed before this change. Note that I expect to delete that option before very long, unless someone speaks up with some alternate way that this should be done. So, don't just use this trick to fix some script and then forget about the larger issue. Discuss it on freebsd-arch. -- Garance Alistair Drosehn = gad@gilead.netel.rpi.edu Senior Systems Programmer or gad@FreeBSD.org Rensselaer Polytechnic Institute; Troy, NY; USA