When evaluating extended permissions, ignore unknown permissions instead
of calling BUG(). This commit ensures that future permissions can be
added without interfering with older kernels.
Cc: stable@vger.kernel.org
Fixes: fa1aa143ac4a ("selinux: extended permissions for ioctls")
Signed-off-by: ThiƩbaud Weksteen <tweek@google.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
                        return;
                break;
        default:
-               BUG();
+               pr_warn_once(
+                       "SELinux: unknown extended permission (%u) will be ignored\n",
+                       node->datum.u.xperms->specified);
+               return;
        }
 
        if (node->key.specified == AVTAB_XPERMS_ALLOWED) {
                                            &node->datum.u.xperms->perms,
                                            xpermd->dontaudit);
        } else {
-               BUG();
+               pr_warn_once("SELinux: unknown specified key (%u)\n",
+                            node->key.specified);
        }
 }