tests/test-audit-subrepo.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sat, 14 Apr 2018 11:50:19 -0700
changeset 37719 a656cba08a04
parent 35393 4441705b7111
child 41456 31286c9282df
permissions -rw-r--r--
wireprotov2: move response handling out of httppeer And fix some bugs while we're here. The code for processing response data from the unified framing protocol is mostly peer agnostic. The peer-specific bits are the configuration of the client reactor and how I/O is performed. I initially implemented things in httppeer for expediency. This commit establishes a module for holding the peer API level code for the framing based protocol. Inside this module we have a class to help coordinate higher-level activities, such as managing response object. The client handler bits could be rolled into clientreactor. However, I want clientreactor to be sans I/O and I want it to only be concerned with protocol-level details, not higher-level concepts like how protocol events are converted into peer API concepts. I want clientreactor to receive a frame and then tell the caller what should probably be done about it. If we start putting things like future resolution into clientreactor, we'll constrain how the protocol can be used (e.g. by requiring futures). The new code is loosely based on what was in httppeer before. I changed things a bit around response handling. We now buffer the entire response "body" and then handle it as one atomic unit. This fixed a bug around decoding CBOR data that spanned multiple frames. I also fixed an off-by-one bug where we failed to read a single byte CBOR value at the end of the stream. That's why tests have changed. The new state of httppeer is much cleaner. It is largely agnostic about framing protocol implementation details. That's how it should be: the framing protocol is designed to be largely transport agnostic. We want peers merely putting bytes on the wire and telling the framing protocol where to read response data from. There's still a bit of work to be done here, especially for representing responses. But at least we're a step closer to having a higher-level peer interface that can be plugged into the SSH peer someday. I initially added this class to wireprotoframing. However, we'll eventually need version 2 specific functions to convert CBOR responses into data structures expected by the code calling commands. This needs to live somewhere. Since that code would be shared across peers, we need a common module. We have wireprotov1peer for the equivalent version 1 code. So I decided to establish wireprotov2peer. Differential Revision: https://phab.mercurial-scm.org/D3379
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34983
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     1
Test illegal name
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     2
-----------------
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     3
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     4
on commit:
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     5
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     6
  $ hg init hgname
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     7
  $ cd hgname
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     8
  $ mkdir sub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
     9
  $ hg init sub/.hg
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    10
  $ echo 'sub/.hg = sub/.hg' >> .hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    11
  $ hg ci -qAm 'add subrepo "sub/.hg"'
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35166
diff changeset
    12
  abort: path 'sub/.hg' is inside nested repo 'sub'
34983
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    13
  [255]
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    14
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    15
prepare tampered repo (including the commit above):
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    16
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    17
  $ hg import --bypass -qm 'add subrepo "sub/.hg"' - <<'EOF'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    18
  > diff --git a/.hgsub b/.hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    19
  > new file mode 100644
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    20
  > --- /dev/null
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    21
  > +++ b/.hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    22
  > @@ -0,0 +1,1 @@
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    23
  > +sub/.hg = sub/.hg
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    24
  > diff --git a/.hgsubstate b/.hgsubstate
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    25
  > new file mode 100644
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    26
  > --- /dev/null
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    27
  > +++ b/.hgsubstate
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    28
  > @@ -0,0 +1,1 @@
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    29
  > +0000000000000000000000000000000000000000 sub/.hg
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    30
  > EOF
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    31
  $ cd ..
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    32
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    33
on clone (and update):
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    34
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    35
  $ hg clone -q hgname hgname2
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35166
diff changeset
    36
  abort: path 'sub/.hg' is inside nested repo 'sub'
34983
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    37
  [255]
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    38
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    39
Test direct symlink traversal
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    40
-----------------------------
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    41
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    42
#if symlink
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    43
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    44
on commit:
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    45
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    46
  $ mkdir hgsymdir
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    47
  $ hg init hgsymdir/root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    48
  $ cd hgsymdir/root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    49
  $ ln -s ../out
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    50
  $ hg ci -qAm 'add symlink "out"'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    51
  $ hg init ../out
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    52
  $ echo 'out = out' >> .hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    53
  $ hg ci -qAm 'add subrepo "out"'
34984
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    54
  abort: subrepo 'out' traverses symbolic link
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    55
  [255]
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    56
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    57
prepare tampered repo (including the commit above):
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    58
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    59
  $ hg import --bypass -qm 'add subrepo "out"' - <<'EOF'
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    60
  > diff --git a/.hgsub b/.hgsub
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    61
  > new file mode 100644
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    62
  > --- /dev/null
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    63
  > +++ b/.hgsub
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    64
  > @@ -0,0 +1,1 @@
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    65
  > +out = out
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    66
  > diff --git a/.hgsubstate b/.hgsubstate
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    67
  > new file mode 100644
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    68
  > --- /dev/null
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    69
  > +++ b/.hgsubstate
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    70
  > @@ -0,0 +1,1 @@
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    71
  > +0000000000000000000000000000000000000000 out
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    72
  > EOF
34983
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    73
  $ cd ../..
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    74
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    75
on clone (and update):
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    76
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    77
  $ mkdir hgsymdir2
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    78
  $ hg clone -q hgsymdir/root hgsymdir2/root
34984
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    79
  abort: subrepo 'out' traverses symbolic link
071cbeba4212 subrepo: disallow symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents: 34983
diff changeset
    80
  [255]
34983
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    81
  $ ls hgsymdir2
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    82
  root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    83
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    84
#endif
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    85
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    86
Test indirect symlink traversal
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    87
-------------------------------
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    88
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    89
#if symlink
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    90
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    91
on commit:
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    92
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    93
  $ mkdir hgsymin
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    94
  $ hg init hgsymin/root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    95
  $ cd hgsymin/root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    96
  $ ln -s ../out
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    97
  $ hg ci -qAm 'add symlink "out"'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    98
  $ mkdir ../out
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
    99
  $ hg init ../out/sub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   100
  $ echo 'out/sub = out/sub' >> .hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   101
  $ hg ci -qAm 'add subrepo "out/sub"'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   102
  abort: path 'out/sub' traverses symbolic link 'out'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   103
  [255]
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   104
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   105
prepare tampered repo (including the commit above):
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   106
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   107
  $ hg import --bypass -qm 'add subrepo "out/sub"' - <<'EOF'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   108
  > diff --git a/.hgsub b/.hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   109
  > new file mode 100644
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   110
  > --- /dev/null
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   111
  > +++ b/.hgsub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   112
  > @@ -0,0 +1,1 @@
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   113
  > +out/sub = out/sub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   114
  > diff --git a/.hgsubstate b/.hgsubstate
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   115
  > new file mode 100644
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   116
  > --- /dev/null
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   117
  > +++ b/.hgsubstate
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   118
  > @@ -0,0 +1,1 @@
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   119
  > +0000000000000000000000000000000000000000 out/sub
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   120
  > EOF
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   121
  $ cd ../..
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   122
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   123
on clone (and update):
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   124
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   125
  $ mkdir hgsymin2
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   126
  $ hg clone -q hgsymin/root hgsymin2/root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   127
  abort: path 'out/sub' traverses symbolic link 'out'
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   128
  [255]
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   129
  $ ls hgsymin2
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   130
  root
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   131
80d7dbda9294 tests: show symlink traversal across subrepo mount point (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
diff changeset
   132
#endif