bpermission/vault issue - add perm to group and player perm check problems #489


  • New
  • Defect
Open
  • _ForgeUser8455416 created this issue Jan 22, 2013

    Describe to us the issue that you're having:
    I am interfacing my plugin (OnTime) to bpermissions via Vault.  A server owner is has reported that OnTime permission checking for individual players is no longer working.  I've investigated and confirmed that what he claims is true.  I have tested the same function using the  latest version of Vault along with GroupManager and PEX, and in the case of those permission plugins, OnTime's function is working as expected.  While investigating I also found another issue that fails somewhere between the bpermissions/vault interface.

    Which steps will reproduce this problem?:
    1) Give the player the permission string in question:
    from users.yml:

    users:
      edge209:
        permissions:
        - ontime.reward.S1G1Knight
        groups:
        - veteran

    2) make this vault call from a plugin:
    plugin.permission.playerHas(player, permissionString)

    where "player" is of type org.bukkit.entity.Player and permissionString is of type String and is equal to "ontime.reward.S1G1Knight"

    3)
    The function is returning false, when true is expected.

    Do you have an error log of what happened?
    No errors displayed.

    Which version of bPermissions are you using?: (Please don't say "latest"!!!)
    v2.10.3

    Vault version: v1.2.22

    Which version of CraftBukkit?: (Please don't say "latest"!!!)
    1.4.6-R0.3

    Which OS?
    Windows7

    Any other information we may need (plugins, configs, etc):

    The other issue I saw was when making the following Vault function call, which is attempting to add a permission string to a specified group:

    plugin.permission.groupAdd((World) null, groups, permissionString)

    where 'groups' and 'permissionString' are both of type String, and "groups" is a valid group configured in bpermissions.  Here is what was generated on the console:

    2013-01-22 09:31:57 [WARNING] Unexpected exception while parsing console command "ontime rw exclu 4 add citizen"
    org.bukkit.command.CommandException: Unhandled exception executing command 'ontime' in plugin OnTime v3.5.4
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186)
        at org.bukkit.craftbukkit.v1_4_6.CraftServer.dispatchCommand(CraftServer.java:514)
        at org.bukkit.craftbukkit.v1_4_6.CraftServer.dispatchServerCommand(CraftServer.java:506)
        at net.minecraft.server.v1_4_6.DedicatedServer.al(DedicatedServer.java:260)
        at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:225)
        at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494)
        at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427)
        at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849)
    Caused by: java.lang.NoSuchMethodError: de.bananaco.bpermissions.api.util.Permission.loadFromString(Ljava/lang/String;)Lde/bananaco/bpermissions/api/util/Permission;
        at net.milkbowl.vault.permission.plugins.Permission_bPermissions2.groupAdd(Permission_bPermissions2.java:143)
        at net.milkbowl.vault.permission.Permission.groupAdd(Permission.java:412)
        at me.edge209.OnTime.Rewards.Rewards.setExclusive(Rewards.java:1883)
        at me.edge209.OnTime.Rewards.RewardCommands.onRewardCommand(RewardCommands.java:327)
        at me.edge209.OnTime.Commands.onCommand(Commands.java:807)
        at me.edge209.OnTime.OnTime.onCommand(OnTime.java:693)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
        ... 8 more

    Please fill out this form properly! Failing to do so may result in your ticket being marked invalid.

  • _ForgeUser8455416 added the tags New Defect Jan 22, 2013
  • _ForgeUser8455416 posted a comment Jan 26, 2013

    I did some experimenting and it looks like it is having issues with permission strings that contain upper case letters. It works as expected for permission checking when string is all lower case. Hope that helps.

  • Forge_User_53439273 posted a comment Jan 28, 2013

    Gotcha. I'm going to work on fixing this.


    Edited Jan 30, 2013
  • _ForgeUser603316 posted a comment Jan 30, 2013

    I just checked and this might be a duplicate of #486

  • Forge_User_53439273 posted a comment Jan 30, 2013

    Updating Vault will fix this btw.

  • _ForgeUser8455416 posted a comment Jan 30, 2013

    The vault version used when this was seen is the latest posted.

    http://dev.bukkit.org/server-mods/vault/files/36-vault-1-2-22/

    Also, please note that I reported two errors in this ticket, the first was the lowercase permissions issue, the other is the error message generated when groupAdd is called.

    Thanks for your attention to this!

  • Forge_User_53439273 posted a comment Jan 31, 2013

    You need a Vault uploaded/compiled on 2013

    https://github.com/MilkBowl/Vault/pull/338

  • _ForgeUser8455416 posted a comment Jan 31, 2013

    @codename_B: Go

    Thanks! I was not aware that a newer version was available. I'll make that upgrade.


To post a comment, please login or register a new account.