use ENSC_FIX_IOCTL() to fix dietlibc's ioctl() return values
[util-vserver.git] / util-vserver / lib / virtual.h
index a89388f..2381db7 100644 (file)
        
 #define VC_CAT_PROCTRL         12
 
+#define VC_CAT_SCHED           14
+#define VC_CAT_INODE           38
+
+#define        VC_CAT_VINFO            46
+
 #define VC_CAT_RLIMIT          60
 
 #define VC_CAT_SYSTEST         61
@@ -142,4 +147,42 @@ struct  vcmd_tbf_sched_v1 {
 #define TBFS_KEEP_VALUE                (~0ULL)
 
 
+/*  inode vserver commands */
+
+#define VCMD_get_iattr         VC_CMD(INODE, 1, 0)
+#define VCMD_set_iattr         VC_CMD(INODE, 2, 0)
+
+struct  vcmd_ctx_iattr_v0 {
+       uint64_t ino;
+       uint32_t xid;
+       uint32_t flags;
+       uint32_t mask;
+};
+
+#define IATTR_XID      0x01000000
+
+#define IATTR_ADMIN    0x00000001
+#define IATTR_WATCH    0x00000002
+#define IATTR_HIDE     0x00000004
+
+#define IATTR_BARRIER  0x00010000
+#define        IATTR_IUNLINK   0x00020000
+
+
+
+/* vinfo commands */
+
+#define        VCMD_task_xid           VC_CMD(VINFO, 1, 0)
+#define        VCMD_task_nid           VC_CMD(VINFO, 2, 0)
+
+#define        VCMD_vx_info            VC_CMD(VINFO, 5, 0)
+#define        VCMD_nx_info            VC_CMD(VINFO, 6, 0)
+
+struct  vcmd_vx_info_v0 {
+    uint32_t xid;
+    uint32_t initpid;
+    /* more to come */
+};
+
+
 #endif /* _LINUX_VIRTUAL_H */