[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#3230: 23.0.93; Make dired-actual-switches safe local variable?
From: |
Stefan Monnier |
Subject: |
bug#3230: 23.0.93; Make dired-actual-switches safe local variable? |
Date: |
Thu, 24 Feb 2011 09:57:04 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
> (defun dired-actual-switches-p (switches)
> (and (stringp switches)
> (catch 'exit
> (mapc (lambda (switch)
> (unless (eq (aref switch 0) ?-)
> (throw 'exit nil)))
> (split-string switches nil t))
> t)))
Hmm, what about "-l;reboot" ?
BTW, writing a predicate is the right thing to so, and the predicate
should then go to safe-local-variable. I'd recommend something simple
like
(defun dired-safe-switches-p (switches)
(string-match "\\`[- [[:alnum:]]]+\\'" switches))
Hopefully that one is safe (tho maybe we should check string-length to
avoid attacks playing on overflow). And if it proves too restrictive,
we can make it a bit more permissive once we encounter a particular
example that warrants it.
Stefan