You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by tm...@apache.org on 2017/09/19 14:06:25 UTC
svn commit: r1808879 - in /sling/trunk/bundles:
extensions/repoinit/parser/src/main/javacc/
extensions/repoinit/parser/src/test/resources/testcases/
jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/
Author: tmaret
Date: Tue Sep 19 14:06:25 2017
New Revision: 1808879
URL: http://svn.apache.org/viewvc?rev=1808879&view=rev
Log:
SLING-6774 - Allowed character set in repo init is too restrictive
* Extend path parser and JCR implementation with valid symbols '+', '@' and ':'
Added:
sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14-output.txt
sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14.txt
Modified:
sling/trunk/bundles/extensions/repoinit/parser/src/main/javacc/RepoInitGrammar.jjt
sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20-output.txt
sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20.txt
sling/trunk/bundles/jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/CreatePathsTest.java
Modified: sling/trunk/bundles/extensions/repoinit/parser/src/main/javacc/RepoInitGrammar.jjt
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/repoinit/parser/src/main/javacc/RepoInitGrammar.jjt?rev=1808879&r1=1808878&r2=1808879&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/repoinit/parser/src/main/javacc/RepoInitGrammar.jjt (original)
+++ sling/trunk/bundles/extensions/repoinit/parser/src/main/javacc/RepoInitGrammar.jjt Tue Sep 19 14:06:25 2017
@@ -90,7 +90,7 @@ TOKEN:
/* The order of these fuzzy statements is important (first match wins?) */
| < NAMESPACED_ITEM: (["a"-"z"] | ["A"-"Z"])+ ":" (["a"-"z"] | ["A"-"Z"])+ >
-| < PATH_STRING: "/" (["a"-"z"] | ["A"-"Z"] | ["0"-"9"] | ["-"] | ["_"] | ["."] | ["/"]) * >
+| < PATH_STRING: "/" (["a"-"z"] | ["A"-"Z"] | ["0"-"9"] | ["-"] | ["_"] | ["."] | ["@"] | [":"] | ["+"] | ["/"]) * >
| < STRING: (["a"-"z"] | ["A"-"Z"] | ["0"-"9"] | ["-"] | ["_"] | ["."] | ["/"] | [":"] | ["*"]) * >
| < EOL: "\n" >
}
Added: sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14-output.txt
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14-output.txt?rev=1808879&view=auto
==============================================================================
--- sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14-output.txt (added)
+++ sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14-output.txt Tue Sep 19 14:06:25 2017
@@ -0,0 +1,3 @@
+SetAclPaths on /one:name /two+name /three@name
+ AclLine REMOVE_ALL {principals=[user1]}
+ AclLine ALLOW {principals=[user1], privileges=[jcr:read]}
Added: sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14.txt
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14.txt?rev=1808879&view=auto
==============================================================================
--- sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14.txt (added)
+++ sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-14.txt Tue Sep 19 14:06:25 2017
@@ -0,0 +1,5 @@
+# Test allowed path characters, see SLING-6774
+set ACL on /one:name,/two+name,/three@name
+ remove * for user1
+ allow jcr:read for user1
+end
\ No newline at end of file
Modified: sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20-output.txt
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20-output.txt?rev=1808879&r1=1808878&r2=1808879&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20-output.txt (original)
+++ sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20-output.txt Tue Sep 19 14:06:25 2017
@@ -6,4 +6,7 @@ CreatePath [one(mixin [nt:art]), step(mi
CreatePath [one(nt:foxtrot), step(nt:foxtrot mixin [nt:dance]), two(nt:foxtrot), steps(nt:foxtrot)]
CreatePath [one, step(mixin [nt:dance, nt:art]), two, steps]
CreatePath [one, step(nt:foxtrot mixin [nt:dance]), two, steps]
-CreatePath [one, step(nt:foxtrot mixin [nt:dance, nt:art]), two, steps]
\ No newline at end of file
+CreatePath [one, step(nt:foxtrot mixin [nt:dance, nt:art]), two, steps]
+CreatePath [one:and, step, two:and, steps]
+CreatePath [one@home, step, two@home, steps]
+CreatePath [one+tap, step, two+tap, steps]
\ No newline at end of file
Modified: sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20.txt
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20.txt?rev=1808879&r1=1808878&r2=1808879&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20.txt (original)
+++ sling/trunk/bundles/extensions/repoinit/parser/src/test/resources/testcases/test-20.txt Tue Sep 19 14:06:25 2017
@@ -7,4 +7,7 @@ create path /one(mixin nt:art)/step(mixi
create path (nt:foxtrot) /one/step(mixin nt:dance)/two/steps
create path /one/step(mixin nt:dance,nt:art)/two/steps
create path /one/step(nt:foxtrot mixin nt:dance)/two/steps
-create path /one/step(nt:foxtrot mixin nt:dance,nt:art)/two/steps
\ No newline at end of file
+create path /one/step(nt:foxtrot mixin nt:dance,nt:art)/two/steps
+create path /one:and/step/two:and/steps
+create path /one@home/step/two@home/steps
+create path /one+tap/step/two+tap/steps
\ No newline at end of file
Modified: sling/trunk/bundles/jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/CreatePathsTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/CreatePathsTest.java?rev=1808879&r1=1808878&r2=1808879&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/CreatePathsTest.java (original)
+++ sling/trunk/bundles/jcr/repoinit/src/test/java/org/apache/sling/jcr/repoinit/CreatePathsTest.java Tue Sep 19 14:06:25 2017
@@ -50,6 +50,27 @@ public class CreatePathsTest {
U.parseAndExecute("create path " + path);
U.assertNodeExists(path);
}
+
+ @Test
+ public void createSimplePathWithNamespace() throws Exception {
+ final String path = "/rep:policy/one";
+ U.parseAndExecute("create path " + path);
+ U.assertNodeExists(path);
+ }
+
+ @Test
+ public void createSimplePathWithAtSymbol() throws Exception {
+ final String path = "/one/@two/three";
+ U.parseAndExecute("create path " + path);
+ U.assertNodeExists(path);
+ }
+
+ @Test
+ public void createSimplePathWithPlusSymbol() throws Exception {
+ final String path = "/one/+two/three";
+ U.parseAndExecute("create path " + path);
+ U.assertNodeExists(path);
+ }
@Test
public void createPathWithTypes() throws Exception {