Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Feb 2005 13:03:56 -0800
From:      Gordon Tetlow <gordon@tetlows.org>
To:        Garance A Drosihn <drosih@rpi.edu>
Cc:        freebsd-arch@freebsd.org
Subject:   Re: Bug in #! processing - One More Time
Message-ID:  <421F92BC.3030904@tetlows.org>
In-Reply-To: <p06210225be4307a39100@[128.113.24.47]>
References:  <200410020349.i923nG8v021675@northstar.hetzel.org> <20041002052856.GE17792@nexus.dglawrence.com> <p0611041fbd848f6aa55d@[128.113.24.47]> <20041002233542.GL714@nexus.dglawrence.com> <p0620076ebe2490ccdc00@[128.113.24.47]> <p06210225be4307a39100@[128.113.24.47]>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig67D23C2E3443A407BBB95CCA
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Garance A Drosihn wrote:
<snip history>

> As I see it, we have the following choices to fix this:
>
> 1) MFC the January 31st change to kern/imgact_shell.c to 5.3-stable,
>    as it is.  This means we haven't fixed the problem that people
>    complained about in 2002 and again in 2004.  And I still think
>    it is "not appropriate" for the execve() system to be deciding
>    what '#' means on that line.  The biggest advantage is that this
>    means 5.4-release will behave exactly the same as 3.5 through
>    5.3-release have behaved.
>
> 2) Remove '#'-processing from kern/imgact_shell.c, and remove my
>    change to bin/sh/options.c (which doesn't work right once we
>    do that).  This breaks shell-scripts which use the feature as
>    documented by perl (and other scripting languages), and fixes
>    the problem people complained about in 2002/2004.
>
> 3) Change kern/imgact_shell.c to process shebang options the same
>    way other (non-BSD?) operating systems do.  By that I mean:
>    send the entire string as arg[1], and let the scripting
>    language sort it out.  This is an incompatible change from
>    FreeBSD 5.3 to 5.4, but would put make us "more consistent"
>    with other operating systems.
>
> 4) Provide some way for /bin/sh to find out where the shebang
>    options end, and the user-specified options begin.  This could
>    make everyone happy, but it's more work and right now (this
>    close to 5.4-release) that wouldn't make me particularly happy...
>
> Or we could do #1 for now, and plan to do #4 after 5.4-release.
> Or do #1 now in 5.3, and go with some incompatible change (#2
> or #3) only in 6.x-current.

I would say we should stick with #1 for the 5.x release and use #3 for
6.x and further. We have already frozen APIs and ABIs. For people that
might have scripts that use this syntax to have problems between minor
releases is unacceptable.

-gordon

--------------enig67D23C2E3443A407BBB95CCA
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCH5LDRu2t9DV9ZfsRAowrAJ9QzrezkSYlktdWKjXburHbhYCK2QCglbDF
D7f3gXXqoeFSGWdKhxVnKgg=
=AxjF
-----END PGP SIGNATURE-----

--------------enig67D23C2E3443A407BBB95CCA--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?421F92BC.3030904>