4403f549fa45296d8c709050a7c4206539b16e23
[linux-2.6.git] / include / linux / vserver / network_cmd.h
1 #ifndef _VX_NETWORK_CMD_H
2 #define _VX_NETWORK_CMD_H
3
4
5 /* vinfo commands */
6
7 #define VCMD_task_nid           VC_CMD(VINFO, 2, 0)
8
9 #ifdef  __KERNEL__
10 extern int vc_task_nid(uint32_t, void __user *);
11
12 #endif  /* __KERNEL__ */
13
14 #define VCMD_nx_info            VC_CMD(VINFO, 6, 0)
15
16 struct  vcmd_nx_info_v0 {
17         uint32_t nid;
18         /* more to come */
19 };
20
21 #ifdef  __KERNEL__
22 extern int vc_nx_info(uint32_t, void __user *);
23
24 #endif  /* __KERNEL__ */
25
26 #define VCMD_net_create         VC_CMD(VNET, 1, 0)
27 #define VCMD_net_migrate        VC_CMD(NETMIG, 1, 0)
28
29 #define VCMD_net_add            VC_CMD(NETALT, 1, 0)
30 #define VCMD_net_remove         VC_CMD(NETALT, 2, 0)
31
32 struct  vcmd_net_nx_v0 {
33         uint16_t type;
34         uint16_t count;
35         uint32_t ip[4];
36         uint32_t mask[4];
37         /* more to come */
38 };
39
40 //      IPN_TYPE_IPV4
41
42
43 #ifdef  __KERNEL__
44 extern int vc_net_create(uint32_t, void __user *);
45 extern int vc_net_migrate(uint32_t, void __user *);
46
47 #endif  /* __KERNEL__ */
48
49 #define VCMD_get_nflags         VC_CMD(FLAGS, 5, 0)
50 #define VCMD_set_nflags         VC_CMD(FLAGS, 6, 0)
51
52 struct  vcmd_net_flags_v0 {
53         uint64_t flagword;
54         uint64_t mask;
55 };
56
57 #ifdef  __KERNEL__
58 extern int vc_get_nflags(uint32_t, void __user *);
59 extern int vc_set_nflags(uint32_t, void __user *);
60
61 #endif  /* __KERNEL__ */
62
63 #define IPF_STATE_SETUP         (1ULL<<32)
64
65
66 #define IPF_ONE_TIME            (0x0001ULL<<32)
67
68 #define VCMD_get_ncaps          VC_CMD(FLAGS, 7, 0)
69 #define VCMD_set_ncaps          VC_CMD(FLAGS, 8, 0)
70
71 struct  vcmd_net_caps_v0 {
72         uint64_t ncaps;
73         uint64_t cmask;
74 };
75
76 #ifdef  __KERNEL__
77 extern int vc_get_ncaps(uint32_t, void __user *);
78 extern int vc_set_ncaps(uint32_t, void __user *);
79
80 #endif  /* __KERNEL__ */
81 #endif  /* _VX_CONTEXT_CMD_H */