Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Permissions directories



On Jun 21,  6:04pm, Chmouel Boudjnah wrote:
} Subject: Permissions directories
}
} Is there any reason why now the directories in $fpath need to be 755
} and not 775 or 777 ?

Put the following in a file in your $fpath, using a name that starts with
an underscore:

--- 8< --- cut here --- 8< ---
#compdef -p *
_message -r Gotcha!
--- 8< --- cut here --- 8< ---

Do you really want just anyone to be able to drop files into directories
that compinit searches for completion definitions?

This is not so much a problem since compinit is also checking ownership
of the files in those directories.  I think it's got the test wrong for
the .zwc files, though -- e.g. if the parent of a directory in $fpath
is writable, I believe under the current tests I could still create a
trojan .zwc file there that would be used in place of the directory of
the same basename.

While I'm on the subject, though, I've been finding a number of problems
with the new compinit.  For one thing, the test

      (( $+functions[$_i_name] + $_i_wfiles[(I)$_i_file] )) && continue

is a nice idea, but it doesn't work in practice -- the test can't be for
whether the *function* is already defined, it has to be a test for whether
it has already been defined *by compinit*.  I don't want the test to fail
if *I've* already explicitly autoloaded a name, I only want it not to
parse the #compdef lines from files of the same name out of two different
directories.  I think we need a local assoc or array for this, not the
$functions parameter.

The other problem is that when I answer "y" to the question "there are
insecure directories -- proceed?" I expected that to mean that it would
USE those directories, not ignore them.  If it's going to skip those
directories anyway, why bother to ask the question?  Giving me a choice
between no directories and half of them is no choice at all; it just
leaves me with a partly-working completion system, which is baffling.

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com

Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   



Messages sorted by: Reverse Date, Date, Thread, Author