1 /* -----------------------------------------------------------------------------
2  * Copyright (c) 2011 Ozmo Inc
3  * Released under the GNU General Public License Version 2 (GPLv2).
4  * -----------------------------------------------------------------------------
5  */
6 #ifndef _OZAPPIF_H
7 #define _OZAPPIF_H
8 
9 #define OZ_IOCTL_MAGIC	0xf4
10 
11 struct oz_mac_addr {
12 	__u8 a[6];
13 };
14 
15 #define OZ_MAX_PDS	8
16 
17 struct oz_pd_list {
18 	__u32 count;
19 	struct oz_mac_addr addr[OZ_MAX_PDS];
20 };
21 
22 #define OZ_MAX_BINDING_LEN	32
23 
24 struct oz_binding_info {
25 	char name[OZ_MAX_BINDING_LEN];
26 };
27 
28 #define OZ_IOCTL_GET_PD_LIST	_IOR(OZ_IOCTL_MAGIC, 0, struct oz_pd_list)
29 #define OZ_IOCTL_SET_ACTIVE_PD	_IOW(OZ_IOCTL_MAGIC, 1, struct oz_mac_addr)
30 #define OZ_IOCTL_GET_ACTIVE_PD	_IOR(OZ_IOCTL_MAGIC, 2, struct oz_mac_addr)
31 #define OZ_IOCTL_ADD_BINDING	_IOW(OZ_IOCTL_MAGIC, 3, struct oz_binding_info)
32 #define OZ_IOCTL_REMOVE_BINDING	_IOW(OZ_IOCTL_MAGIC, 4, struct oz_binding_info)
33 #define OZ_IOCTL_MAX		5
34 
35 
36 #endif /* _OZAPPIF_H */
37