Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / include / linux / vs_base.h
index a1d34b6..b732600 100644 (file)
@@ -1,10 +1,8 @@
 #ifndef _VX_VS_BASE_H
 #define _VX_VS_BASE_H
 
-
 #include "vserver/context.h"
 
-
 #define vx_task_xid(t) ((t)->xid)
 
 #define vx_current_xid() vx_task_xid(current)
@@ -16,7 +14,7 @@
 
 /*
  * check current context for ADMIN/WATCH and
- * optionally agains supplied argument
+ * optionally against supplied argument
  */
 static inline int __vx_check(xid_t cid, xid_t id, unsigned int mode)
 {
@@ -34,6 +32,7 @@ static inline int __vx_check(xid_t cid, xid_t id, unsigned int mode)
                        (id > 1) && (id < MIN_D_CONTEXT))
                        return 1;
        }
+
        return (((mode & VX_ADMIN) && (cid == 0)) ||
                ((mode & VX_WATCH) && (cid == 1)) ||
                ((mode & VX_HOSTID) && (id == 0)));
@@ -98,6 +97,8 @@ static inline int __vx_check(xid_t cid, xid_t id, unsigned int mode)
        (current->vx_info && \
        (current->vx_info->vx_initpid == (n)))
 
+#define vx_capable(b,c) (capable(b) || \
+       ((current->euid == 0) && vx_ccaps(c)))
 
 #else
 #warning duplicate inclusion