[ On Tuesday, May 9, 2000 at 15:40:58 (-0400), Pavel Roskin wrote: ]
> Subject: Re: Possible bug involving ':' in directory names
>
> From GNU Coding Standards (by RMS):
>
> Utilities reading files should not drop NUL characters, or any other
> nonprinting characters @emph{including those with codes above 0177}. The
> only sensible exceptions would be utilities specifically intended for
> interface to certain types of terminals or printers that can't handle
> those characters.
>
> I don't think all GNU programs support '\0', but e.g. GNU sed does.
Yes, of course, but I was referring explicitly to the file names, not
the file contents, and of course it is impossible (or at least it's
supposed to be impossible!) to have either a '\0' or a '/' in a file
name on at least any POSIX compliant system. ;-)
> All this is quite irrelevant to Autoconf. People using it are not
> crackers. They can only cause problems for themselves if they use strange
> filenames.
There are many forms of "harm" that can be done, either accidentaly or
purposefully, even just with development tools and such. The example
that comes immediately to mind is a bug in a (rare) version of tar that
could cause it to over-write files outside of the hirearchy from where
it was being used. Some install procedures assume they are being
executed by the superuser (even worse is that because of this MANY
people run the entire build as root!) and as such we cannot rule out
the possiblity that autoconf could be abused by someone intent on
causing harm. So to the extent that it is possible and practical even
autoconf should take care that doesn't blow up badly when fed mangled
filenames or whatever, whether purposefully or not.
> If we can deal with ":" - fine, if we cannot - no problem.
It might be sensible for GNU Make to try and introduce quoting rules
that would allow ':' to be used in filenames. However I would hope that
wouldn't mean that the GNU Coding Standards, and in particular Automake,
would require that GNU Make be used unconditionally because of this
feature. Similar tricks could be employed by shells to quote field
separators in multi-field variables, etc. However again this would
imply restricting the user to shells compatible with autoconf. As a
result I think it's not sensible to even try to have autoconf (or
automake) handle filenames with embedded ':' characters, or even
extension separators other than '.'.
--
Greg A. Woods
+1 416 218-0098 VE3TCP <[EMAIL PROTECTED]> <robohack!woods>
Planix, Inc. <[EMAIL PROTECTED]>; Secrets of the Weird <[EMAIL PROTECTED]>