On Thursday 25 June 2009 19:17:38 Chet Ramey wrote: > Christian Krause wrote: > > Bash Version: 4.0 > > Patch Level: 16 > > Release Status: release > > > > Description: > > During the compilation of the linux kernel (configured to user mode > > linux) I've discovered the following problem of bash 4.0 (which is now > > delivered by Fedora 11): > > > > If an environmental variable contains a "." in its name, the new bash > > 4.0 filters out these variables. They will not be visible via "set" nor > > will they be inherited to executed sub-shells or processes. > > Such strings are invalid shell or environment variable names. It was a > bug in bash-3.2 that it created invalid variables from the initial > environment.
and it's a bug that bash-4 is filtering them. not allowing them to be used in the shell is fine (echo ${vmlinux.lds}), but removing them from the environment and thus not allowing other applications to leverage them is not. POSIX explicitly states that applications shall tolerate the presence of these environment variables, and while that is open for interpretation (i.e. you've interpreted this to mean automatic removal), i dont see any reason for bash to be culling these. -mike
signature.asc
Description: This is a digitally signed message part.