[ 
https://issues.apache.org/jira/browse/JCR-3364?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jukka Zitting resolved JCR-3364.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 2.7.2

Actually the cycle is already detected during persistence. The problem in 
JCR-3291 was more about the stack overflow caused by a getPath() call on such a 
cyclic node.

In revision 1535539 I adjusted the solution so that instead of creating dummy 
transient items for the ancestors of the destination node in order to avoid the 
path cycle, we let the path cycle to occur, but detect it early and throw an 
InvalidItemStateException instead of letting a stack overflow occur. This 
should address both JCR-3291 and this issue.

> Moving of nodes requires read access to all parent nodes of the destination 
> node
> --------------------------------------------------------------------------------
>
>                 Key: JCR-3364
>                 URL: https://issues.apache.org/jira/browse/JCR-3364
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.2.12, 2.4.2, 2.5
>            Reporter: Thomas März
>            Assignee: Jukka Zitting
>             Fix For: 2.7.2
>
>
> Before JCR-3291 was fixed, Session#move(String, String) could move nodes 
> without having read-access to the whole tree.
> - Deny jcr:read on /home and grant jcr:all on /home/users/usera to usera
> - Move nodes from /home/users/usera/from to /home/users/usera/to with usera's 
> session
> - AccessDeniedException is thrown
> http://article.gmane.org/gmane.comp.apache.jackrabbit.user/18892



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to