Make audit_path more stringent.
The following properties of a path are now checked for:
- under top-level .hg
- starts at the root of a windows drive
- contains ".."
- traverses a symlink (e.g. a/symlink_here/b)
- inside a nested repository
If any of these is true, the path is rejected.
The check for traversing a symlink is arguably stricter than necessary;
perhaps we should be checking for symlinks that point outside the
repository.
#!/bin/sh
hg init
echo a > a
hg ci -d '0 0' -Ama
hg an a
echo "[ui]" >> $HGRCPATH
echo "strict=True" >> $HGRCPATH
hg an a
hg annotate a
echo % should succeed - up is an alias, not an abbreviation
hg up