[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1673?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13900674#comment-13900674
 ] 

Raul Gutierrez Segales commented on ZOOKEEPER-1673:
---------------------------------------------------

In:

{noformat}
+        int bits = aclAddr.length * 8;
+        if (parts.length == 2) {
+            try {
+                bits = Integer.parseInt(parts[1]);
+                if (bits < 0 || bits > aclAddr.length * 8) {
+                    return false;
+                }
+            } catch (NumberFormatException e) {
+                return false;
+            }
+        }
+        return true;
{noformat}

whats the point of assigning bits outside the if block if it's not used 
afterwards. Also inside the if block it gets immediately reassigned. 



> Zookeeper don't support cidr in expression in ACL with ip scheme
> ----------------------------------------------------------------
>
>                 Key: ZOOKEEPER-1673
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1673
>             Project: ZooKeeper
>          Issue Type: Improvement
>    Affects Versions: 3.4.5
>            Reporter: Lipin Dmitriy
>            Priority: Minor
>              Labels: auth
>         Attachments: ZOOKEEPER-1673.patch, ZOOKEEPER-1673.patch
>
>
> Currently, when i try to set ACL with cidr in expression, i get exception:
> {code}
> [zk: localhost:2181(CONNECTED) 2] setAcl /AS0 ip:127.0.0.1/8:cdrwa
> Exception in thread "main" 
> org.apache.zookeeper.KeeperException$InvalidACLException: KeeperErrorCode = 
> InvalidACL for /AS0
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:112)
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:42)
>       at org.apache.zookeeper.ZooKeeper.setACL(ZooKeeper.java:1175)
>       at 
> org.apache.zookeeper.ZooKeeperMain.processZKCmd(ZooKeeperMain.java:716)
>       at org.apache.zookeeper.ZooKeeperMain.processCmd(ZooKeeperMain.java:581)
>       at 
> org.apache.zookeeper.ZooKeeperMain.executeLine(ZooKeeperMain.java:353)
>       at org.apache.zookeeper.ZooKeeperMain.run(ZooKeeperMain.java:311)
>       at org.apache.zookeeper.ZooKeeperMain.main(ZooKeeperMain.java:270)
> {code}
> Also, there is no support for CIDR in IPAuthenticationProvider.isValid, but 
> IPAuthenticationProvider.matches has it.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to